API Reference

Complete reference for the Formr REST API. All endpoints require authentication via API keys or session tokens.

Base URL

https://api.formr.xyz

Authentication

Formr supports two authentication methods:

  • Session tokens - For dashboard operations, obtained via login
  • API keys - For programmatic access
    • Publishable keys (pk_live_... or pk_test_...) - Safe for client-side use
    • Secret keys (sk_live_... or sk_test_...) - Server-side only
Learn more about authentication →

API Endpoints

Forms

Create, read, update, and delete forms. Manage form schemas, fields, and configuration.

  • • POST /forms - Create form
  • • GET /forms - List forms
  • • GET /forms/{id} - Get form
  • • PUT /forms/{id} - Update form
  • • DELETE /forms/{id} - Delete form

Submissions

Submit form data and retrieve responses. Supports both client-side and server-side submissions.

  • • POST /v1/forms/{id}/submissions - Submit form
  • • GET /responses - List responses
  • • GET /responses?format=csv - Export responses

Webhooks

Configure webhooks to receive real-time notifications for form events.

  • • POST /webhooks - Create webhook
  • • GET /webhooks - List webhooks
  • • PUT /webhooks/{id} - Update webhook
  • • DELETE /webhooks/{id} - Delete webhook

Analytics

Get insights into form performance, submission trends, and user behavior.

  • • GET /analytics - Environment analytics
  • • GET /forms/{id}/analytics - Form analytics
  • • GET /analytics/trends - Response trends
  • • GET /analytics/dropoffs - Drop-off analysis

Users & Organizations

Manage users, organizations, environments, and team members.

  • • POST /users - Create user
  • • GET /organizations - List organizations
  • • POST /environments - Create environment
  • • POST /organizations/{id}/members - Add member

Templates

Create and manage reusable form templates.

  • • GET /templates - List templates
  • • POST /templates - Create template

File Uploads

Handle file uploads with signed URLs and secure storage.

  • • POST /uploads/sign - Get signed upload URL

Integrations

Connect forms with external services like Slack, Google Sheets, and Notion.

  • • POST /integrations - Configure integration

Response Format

All API responses are JSON. Successful responses return status codes 200-299. Errors return appropriate HTTP status codes with error details:

{
  "error": "Error message",
  "message": "Detailed error description"
}