Dashform

API reference

Integration guide for Zapier and other platforms — authentication, endpoints, and webhook payloads.

The Dashform API lets you read forms and replies and subscribe to new-submission events from Zapier and other platforms.

Authentication

Dashform uses OAuth 2.0 for authentication. All API requests must include a valid access token:

Authorization: Bearer YOUR_ACCESS_TOKEN

OAuth endpoints

  • GET /api/oauth/authorize — authorization page
  • POST /api/oauth/token — exchange code for token

Get current user

GET /api/v1/me

Returns information about the authenticated user.

{
  "id": "user_123",
  "name": "John Doe",
  "email": "john@example.com"
}

List forms

GET /api/v1/forms

Returns a list of forms owned by the authenticated user.

[
  {
    "id": "form_123",
    "name": "Contact Form",
    "description": "Main contact form"
  }
]

Webhooks (REST hooks)

Subscribe

POST /api/webhooks/zapier/subscribe

Subscribe to form reply events.

Request body:

{
  "target_url": "https://hooks.zapier.com/...",
  "form_id": "form_123",
  "subscription_id": "sub_123"
}

form_id and subscription_id are optional — omit form_id to subscribe to replies across every form.

Response:

{
  "id": "hook_123",
  "status": "subscribed"
}

Unsubscribe

DELETE /api/v1/hooks/unsubscribe/:id

Unsubscribe from webhook notifications.

{
  "success": true,
  "message": "Hook deleted successfully"
}

List hooks

GET /api/v1/hooks

List all active webhook subscriptions.

[
  {
    "id": "hook_123",
    "form_id": "form_123",
    "target_url": "https://hooks.zapier.com/...",
    "status": "active"
  }
]

Triggers

GET /api/v1/triggers/new-submission

Get recent form replies for testing triggers. Returns the 3 most recent replies.

Query parameters:

  • form_id — optional: filter by a specific form
[
  {
    "id": "reply_123",
    "form_id": "form_123",
    "form_name": "Contact Form",
    "data": {
      "name": "John Doe",
      "email": "john@example.com"
    },
    "created_at": "2025-01-01T12:00:00Z"
  }
]

Webhook payload

When a new form reply is received, Dashform sends a POST request to your webhook URL with the following payload:

{
  "id": "reply_123",
  "form_id": "form_123",
  "form_name": "Contact Form",
  "data": {
    "name": "John Doe",
    "email": "john@example.com",
    "message": "Hello!"
  },
  "created_at": "2025-01-01T12:00:00Z"
}

On this page