Organizations are the top-level container for all your ThunderPhone resources—phone numbers, agents, and calls.
Endpoints
| Method | Endpoint | Description |
|---|
GET | /v1/orgs/ | List organizations |
POST | /v1/orgs/ | Create organization |
GET | /v1/orgs/:org_id/ | Get organization |
PATCH | /v1/orgs/:org_id/ | Update organization |
DELETE | /v1/orgs/:org_id/ | Delete organization |
List Organizations
Retrieve all organizations you have access to.
curl https://api.thunderphone.com/v1/orgs/ \
-H "Authorization: Token YOUR_API_TOKEN"
Webhook Configuration
ThunderPhone sends all outbound webhook events to a single org-level URL. Configure this to receive real-time notifications about calls.
Endpoints
| Method | Endpoint | Description |
|---|
GET | /v1/orgs/:org_id/webhook | Get webhook configuration |
PUT | /v1/orgs/:org_id/webhook | Set webhook URL |
PATCH | /v1/orgs/:org_id/webhook | Update webhook URL |
Set Webhook URL
curl -X PUT https://api.thunderphone.com/v1/orgs/{org_id}/webhook \
-H "Authorization: Token YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"url": "https://your-server.com/thunderphone-webhook"
}'
Response
{
"url": "https://your-server.com/thunderphone-webhook",
"secret": "whsec_abc123...",
"created_at": "2025-01-01T00:00:00Z",
"updated_at": "2025-01-01T00:00:00Z"
}
The secret is generated by ThunderPhone and used to sign webhook payloads. Store it securely to verify incoming webhooks.
Webhook Events
All webhook event types are sent to this single URL. The type field determines the event:
call.incoming — A call has started, respond with agent configuration
call.complete — A call has ended, includes transcript and recording URL
See Webhooks for detailed payload documentation.