Authentication
All ZeroForms API requests require authentication using an access key.Getting Your Access Key
- Log in to your ZeroForms Dashboard
- Navigate to Settings → Access Keys
- Click Generate New Key
- Copy your key (starts with
zf_)
Using Your Access Key
Include your access key in thex-access-key header for every request:
JavaScript Example
Python Example
Environment Variables
Store your access key as an environment variable:.env file (Node.js)
Load in code
.env file (Python)
Load in code
Security Best Practices
Use Environment Variables
Never hardcode keys in your source code.
Rotate Keys Regularly
Generate new keys and retire old ones every 90 days.
Scope Keys to Forms
Create separate keys for different applications.
Monitor Usage
Check the API logs for suspicious activity.
Key Permissions
Each access key can have specific permissions:forms:read- Read form dataforms:write- Create and modify formssubmissions:read- Read submissionssubmissions:export- Export submission datawebhooks:write- Manage webhooksanalytics:read- View analytics
Generating New Keys
You can have multiple active access keys:production-apistaging-apimobile-appzapier-integration
Regenerating Keys
If you suspect a key is compromised:- Go to Settings → Access Keys
- Click the Regenerate button next to the key
- Update all applications using the old key
- Delete the old key once all applications are updated
Scoped Access (Enterprise)
For enterprise customers, you can create API keys with limited permissions:Troubleshooting
”Invalid or missing access key”
- Verify your key is spelled correctly
- Check that the header name is exactly
x-access-key(lowercase) - Ensure the key hasn’t been revoked or regenerated
”Unauthorized”
- Verify you have the correct permissions for this operation
- Check that the key belongs to the correct organization
”Forbidden”
- Your key doesn’t have permission for this endpoint
- Contact support to increase key permissions
Need Help?
Check our troubleshooting guide for more authentication issues.