API Reference

REST API

Integrate Flow Studio programmatically. All endpoints return JSON and require a Bearer token.

Authentication

Generate an API key from Settings → API Keys. Pass it as a Bearer token on every request.

Authorization: Bearer YOUR_API_KEY

Base URL

https://api.flowapp.studio/v1

Endpoints

GET/flows

Returns all flows in your workspace.

curl -X GET https://api.flowapp.studio/v1/flows \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "flows": [
    {
      "id": "flow_abc123",
      "name": "Support Flow",
      "channel": "whatsapp",
      "status": "live",
      "created_at": "2025-01-15T10:30:00Z"
    }
  ]
}
POST/flows

Create a new flow.

curl -X POST https://api.flowapp.studio/v1/flows \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My New Flow",
    "channel": "ussd"
  }'
POST/flows/:id/deploy

Deploy a flow. Returns a deployment receipt.

curl -X POST https://api.flowapp.studio/v1/flows/flow_abc123/deploy \
  -H "Authorization: Bearer YOUR_API_KEY"

Webhooks

Flow Studio sends a POST to your endpoint on each session start, user input, and session end. Verify the signature using the X-FlowApp-Signature header.

{
  "event": "session.input",
  "flow_id": "flow_abc123",
  "session_id": "sess_xyz",
  "input": "1",
  "timestamp": "2025-01-15T10:31:05Z"
}