Base URL
All API requests target the following base URL:Available endpoints
| Endpoint | Method | Description |
|---|---|---|
/calls/outbound | POST | Initiate an outbound call from an AI agent |
Authentication
Every request to the VoiceInfra API must include your API key in theX-API-Key request header. Requests without a valid key return 401 Unauthorized.
Request format
All requests must set theContent-Type header to application/json and send a JSON body where applicable.
Response format
All responses return JSON. Successful requests return a2xx status code with a JSON body. Failed requests return a 4xx or 5xx status code with an error object that describes what went wrong.
Error response
Common error codes
| Status | Code | Description |
|---|---|---|
400 | validation_error | Missing or invalid request parameters |
401 | unauthorized | Invalid or missing API key |
404 | not_found | Agent or resource not found |
422 | invalid_phone | Phone number not in valid E.164 format |
429 | rate_limited | Too many requests |
500 | server_error | Internal server error |
Rate limits
Standard rate limits apply to all API endpoints. If your integration requires a higher throughput limit, contact VoiceInfra support to discuss your needs.When you hit a rate limit, the API returns
429 rate_limited. Build exponential backoff into your integration to handle this gracefully.Idempotency
Each call toPOST /calls/outbound creates a new, unique call_id in the response. Use this identifier to correlate the webhook event you receive when the call completes — every call.completed webhook payload includes the matching call_id.
Explore the API
Authentication
Generate API keys, secure your credentials, and understand authentication errors.
Outbound Calls
Trigger AI-powered outbound calls with dynamic per-call configuration.