Pipedream Jotform steps in n8n
Updated 2026-10-21 · 2 min read · n8n: Jotform Trigger (Native n8n node)
Jotform workflows on Pipedream are short: a submission comes in through New Submission (Instant) and goes to a sheet, a CRM, an email or a PDF. n8n covers the start with the Jotform Trigger; the rest of the workflow is whatever apps follow.
The n8n side
Jotform Trigger (n8n-nodes-base.jotFormTrigger): webhook-based, fires on each submission of the selected form. Options:
- Resolve Data: returns question labels instead of field IDs (
q3_email). - Only Answers: returns the answers without submission metadata.
n8n has no Jotform action node. API calls (submissions, forms, usage) go through HTTP Request with the Jotform credential.
What maps where
Pipedream (app jotform) |
In n8n | Status |
|---|---|---|
| New Submission (Instant) | Jotform Trigger | manual, 1 node |
| Get Form Submissions | HTTP Request → GET /form/{id}/submissions |
manual |
| Get User Submissions | HTTP Request → GET /user/submissions |
manual |
| List Forms | HTTP Request → GET /user/forms |
manual |
| Get Monthly User Usage | HTTP Request → GET /user/usage |
manual |
Jotform is not in the converter's mapped list. The trigger becomes a Manual Trigger with a note naming the source; actions are placeholders that keep their props (form ID, filters) in a comment.
Jotform credentials in n8n
Jotform API credential: API Key (Jotform → Settings → API → Create New Key) and API Domain:
api.jotform.com(default)eu-api.jotform.com(EU Safe forms)hipaa-api.jotform.com(HIPAA accounts)
For HTTP Request calls, use the same domain as base URL; the key goes in the APIKEY header or the apiKey query parameter.
Typical migration: application form to Airtable
Pipedream: Jotform New Submission (Instant) → Airtable Create Single Record. n8n: Jotform Trigger (form, Resolve Data on) → Edit Fields (map labels to Airtable column names) → Airtable create (converted automatically if it was Pipedream's Airtable action). Submit one test entry and check file upload fields: they arrive as URLs.
Jotform migration pitfalls
- Daily API limits. Jotform caps API calls per day by plan: 1,000 on Starter, 10,000 on Bronze, 50,000 on Silver, 100,000 on Gold. Webhook deliveries do not count, but with Resolve Data on (the default) the trigger calls the form's questions endpoint on every submission, so each submission uses one API call. Polling submissions via HTTP Request counts too.
- Webhooks pile up. Pipedream's source added a webhook to the form. Remove it in the form's Settings → Integrations → Webhooks after the switch, or both platforms receive submissions.
- Field names. Without Resolve Data, keys are like
q4_fullName; with it, they follow question labels and change when labels change. - File uploads are links to Jotform storage; download them with HTTP Request if the next app needs the file.
- Test vs production URL. The trigger registers a test webhook while you listen in the editor; activate the workflow so Jotform calls the production URL from then on.
How to move your Jotform workflows
- Export from Pipedream.
- Upload on /convert; the free report lists the Jotform trigger and the steps after it.
- Get the n8n JSON: 1 workflow is free; full export: $3 per workflow, $19 minimum — coming soon.
See the webhook guide. Related: Typeform, Google Sheets, Airtable.
FAQ
- Is there a Jotform action node in n8n?
- No. n8n has the Jotform Trigger only. Pipedream's Get Form Submissions, List Forms and usage actions become HTTP Request calls with the Jotform credential.
- My forms are on Jotform EU. What changes?
- Set API Domain in the n8n credential to eu-api.jotform.com. HIPAA accounts use hipaa-api.jotform.com. A wrong domain returns errors that look like a bad key.
- Does the Jotform trigger convert automatically?
- No. It becomes a Manual Trigger with a note naming the Pipedream source; add a Jotform Trigger and pick the form.
- Why do answers look different from Pipedream?
- The trigger's Resolve Data option replaces field IDs with question labels, and Only Answers drops metadata. Toggle both to match what your downstream mapping expects.