Jotform API Complete Guide to Integration and Endpoints
Jotform has a full REST API available on paid plans. You can use it to retrieve form submissions as JSON, list forms, create forms programmatically, manage users, and delete data. API keys are generated in Account Settings. Webhooks are also available for real-time push notifications of new submissions.
Jotform API Overview
The Jotform API is a RESTful API that gives developers programmatic access to all Jotform data and operations. The base URL is https://api.jotform.com/ and all responses are returned as JSON.
API access is available to users on Bronze, Silver, Gold, and Enterprise plans. Free plan users can make limited API calls.
How to Get Your Jotform API Key
- Log into your Jotform account at jotform.com
- Click your profile avatar in the top right corner
- Navigate to Settings
- Click the API tab in the left menu
- Click "Create New Key"
- Set a label (e.g., "Production App") and choose permissions: Read Access or Full Access
- Copy and store the API key securely — it is shown once
Key Jotform API Endpoints
| Endpoint | Method | Description |
|---|---|---|
/user | GET | Get account info for the authenticated user |
/user/forms | GET | List all forms owned by the user |
/form/{id} | GET | Get details for a specific form |
/form/{id}/submissions | GET | Retrieve all submissions for a form |
/submission/{id} | GET | Get a single submission by ID |
/submission/{id} | DELETE | Delete a specific submission |
/form/{id}/questions | GET | List all questions/fields in a form |
/user/subusers | GET | List sub-users (Enterprise) |
Jotform API Authentication
The Jotform API supports two authentication methods:
- API Key as query parameter: Append
?apiKey=YOUR_KEYto any API request URL - API Key as HTTP header: Send the key as
APIKEY: YOUR_KEYin the request headers (recommended for production)
OAuth 2.0 is also supported for third-party applications that need to authenticate on behalf of Jotform users.
Jotform Webhooks
Webhooks let Jotform push new submission data to your server URL in real-time, eliminating the need to poll the API repeatedly. To set up a webhook:
- Open a form in the Form Builder
- Go to Settings → Integrations
- Search for "Webhooks"
- Enter your server URL (must be publicly accessible HTTPS endpoint)
- Save — Jotform will POST submission data to your URL for every new response
Webhook payloads include all submission field values, form ID, submission ID, and timestamp.
Jotform API Code Example
Retrieve form submissions using the Jotform API in JavaScript (Node.js):
const API_KEY = process.env.JOTFORM_API_KEY;
const FORM_ID = '12345678';
async function getSubmissions() {
const response = await fetch(
`https://api.jotform.com/form/${FORM_ID}/submissions?apiKey=${API_KEY}`
);
const data = await response.json();
return data.content; // Array of submission objects
}
getSubmissions().then(submissions => {
console.log(`Fetched ${submissions.length} submissions`);
});See the full Jotform features overview for other integration options.