Embedable Jotform forms for Wagtail pages.
Wagtail Jotform works by providing a new EmbeddedFormPage page type with a form choice field. Values for this form field are populated from the Jotform API.
Wagtail Jotform supports:
- Python 3.10, 3.11, 3.12, 3.13, 3.14
- Django 4.2 (LTS), 5.2 (LTS), 6.0
- Wagtail 7.0 (LTS), 7.2, 7.3, 7.4 (LTS)
Not every Python/Django/Wagtail combination is valid — see the upstream Wagtail compatible Django/Python versions table for which combinations are tested.
Install from pypi:
pip install wagtail-jotformYou will need an API key from Jotform. Add the following variables to your settings:
WAGTAIL_JOTFORM = {
"API_KEY": "somekey",
"API_URL": "https://api.jotform.com",
"LIMIT": 50,
}LIMIT is the number of results in each result set for form list. Default is 50. Maximum is 1000.
If your Jotform account is in EU safe mode, your JOTFORM_API_URL should be https://eu-api.jotform.com.
Add the following to your INSTALLED_APPS in settings, and note that wagtail_jotform depends on routable_page:
INSTALLED_APPS = [
...
"wagtail_jotform",
"wagtail.contrib.routable_page",
]Thank you pages work via Wagtail's RoutablePageMixin.
When a form is created, the Jotform thankurl is set with your created form's thank you page URL, e.g. https://mysite.com/formpage/thank-you. When the form is submitted, the user will be redirected accordingly and be show the 'thank you' data specified on on the form page added.
Wagtail Jotform has two templates:
- embedded_form_page.html
- thank_you.html
You can override these templates in your project by adding them in the following location:
- your_project_root/
- templates/
- wagtail_jotform/
- embed_form_page.html
- thank_you.html
- wagtail_jotform/
- templates/
We welcome contributions to this project. Please follow the contributing instructions to get started.
To release a new version, the Release documentation should be followed.