API Reference
NativeForm API
Stream submissions into your own data stack, power custom dashboards, or trigger automations with a stable REST API.
Base URL
All API requests are made to this base URL.
https://www.nativeform.app/api/Authentication
All API calls require an account-level key. Create one below or from any form's Export tab.
Sign in to create an API key. Keys follow the format nfk_prefix_secret
Required header
x-nativeform-api-key: nfk_xxxxxx_secretEndpoints
All endpoints support cursor-based pagination.
| Method | Endpoint | Description |
|---|---|---|
| GET | /forms | Returns paginated list of all forms for the authenticated user with filtering and search.
|
| GET | /forms/{formId}/responses | Returns paginated responses for a specific form with filtering, cursor pagination, and search.
|
https://www.nativeform.app/api/formsList forms
Filter & search
Cursor pagination
https://www.nativeform.app/api/forms/{formId}/responsesList responses
Filter & search
Cursor pagination
Query Parameters
Every parameter is optional.
limitnumber1-200 results per page.
Default: 50
cursorstringPass `meta.nextCursor` to fetch the next page.
Default: null
status"SUBMITTED" | "DRAFT" | "ABANDONED"Filter by submission status.
Default: null
searchstringFull-text search across respondent info and answers.
Default: null
submittedAfterISO stringOnly responses submitted after the timestamp.
Default: null
submittedBeforeISO stringOnly responses before the timestamp.
Default: null
order"asc" | "desc"Sort by submission time.
Default: desc
channel"WEB" | "API"Filter by submission channel.
Default: null
Response Format
Structure of the API response with types annotated. Each response includes both answers (user-submitted fields) and smartFields (AI-evaluated fields).
Field Types
The value object structure depends on the field type.
Error Handling
Descriptive error payloads and status codes.
Missing key
Validation errors
Best Practices
Keep your integration resilient.
Paginate aggressively
Use `limit` ≤ 200 plus `cursor` to keep requests fast and cacheable.
Validate before storing
Use the provided Zod schema (or your validator) so downstream systems stay type-safe.
Filter at the edge
Push search, status, and date filters into the request instead of filtering in memory.
Rotate API keys
Create scoped keys per integration and rotate them from the Export tab when teammates leave.
Troubleshooting
Common issues and fixes.
Ensure the `x-nativeform-api-key` header is present and the key wasn't rotated.
Numeric parameters must be numbers. Check `error.fieldErrors` for the offending field.
Double-check the form ID and consider relaxing date/status filters.
Always stop when `meta.nextCursor` is `null`. Re-using a cursor returns the same page.