API

Public API overview

REST. JSON. Bearer auth. 5-minute read.

The JustForms public API lets you submit forms ad-hoc (web3forms-style) or programmatically create + manage forms on behalf of your customers — perfect for SaaS multi-tenant flows.

Authentication

Two equivalent methods. Both use an access key minted in your dashboard.

Bearer header (recommended)

Authorization: Bearer jf_live_abc123def456...

X-Access-Key header

X-Access-Key: jf_live_abc123def456...

Body field (for plain HTML forms only)

<input type="hidden" name="access_key" value="jf_live_...">

Endpoints

MethodPathDescription
POST/submitAd-hoc submission (web3forms-compatible)
GET/api/v1/meAccount info + quota
GET/api/v1/formsList forms owned by this key
POST/api/v1/formsCreate a form. Returns embed snippets.
GET/api/v1/forms/:idGet one form
PUT/api/v1/forms/:idUpdate form fields
DELETE/api/v1/forms/:idDelete form
GET/api/v1/forms/:id/submissionsList submissions for an owned form

Scopes

Each access key has one or both of:

Rate limits + quotas

Two layers:

Hitting limits returns 429 Too Many Requests with body { "error": "..." }.

Common error responses

StatusError messageCause
401Missing access_keyNo bearer header or hidden field
401Invalid access_keyKey revoked or doesn't exist
403Origin not allowedRequest from an origin not in key's allowlist
403Recipient not in verified listto field doesn't match key's verified recipients
429Too many requestsPer-IP rate limit exceeded
429Monthly quota exceededKey has used its monthly budget