Vox · Voice AI
Vox is Cloove’s AI voice platform. Use it to place AI-powered outbound calls, review call history, and read the numbers and agents available to your business.
All Vox endpoints share the prefix /v1/vox and authenticate with an API key.
Health check
Confirm a key is valid and see which business and environment it’s bound to.
GET /v1/vox/health{
"message": "Vox API ready",
"data": {
"businessId": "b1a2c3d4-...",
"environment": "test",
"keyId": "k1a2c3d4-..."
}
}List calls
GET /v1/vox/callsReturns a paginated list of calls for your business, newest first.
Query parameters
{
"message": "Vox calls retrieved",
"data": [
{
"id": "c1a2b3c4-...",
"businessId": "b1a2c3d4-...",
"direction": "outbound",
"status": "completed",
"customerPhone": "+2348012345678",
"customerName": "Ada Lovelace",
"durationSeconds": 122,
"startedAt": "2026-01-15T10:00:00.000Z",
"endedAt": "2026-01-15T10:02:02.000Z",
"createdAt": "2026-01-15T10:00:00.000Z"
}
],
"meta": { "total": 1, "page": 1, "perPage": 20, "totalPages": 1, "hasMore": false }
}Place an outbound call
POST /v1/vox/callsQueues an AI-powered outbound call. The call is dialed asynchronously - the response
confirms it was accepted, not that it connected. Send an Idempotency-Key (header or
idempotency_key field) so a retry never dials twice.
Body
{
"customer_phone": "+2348012345678",
"customer_name": "Ada Lovelace",
"purpose": "payment_reminder",
"context": "Remind the customer about invoice INV-2026-001 for NGN 15,000 due tomorrow.",
"business_voice_number_id": "n1a2b3c4-...",
"ai_agent_id": "a1a2b3c4-..."
}Response 201 Created
{
"message": "Vox outbound call queued",
"data": {
"id": "r1a2b3c4-...",
"businessId": "b1a2c3d4-...",
"customerPhone": "+2348012345678",
"customerName": "Ada Lovelace",
"purpose": "payment_reminder",
"status": "queued",
"createdAt": "2026-01-15T10:00:00.000Z"
}
}Track call progress with the vox.call.started, vox.call.completed, vox.call.failed,
and vox.recording.ready webhooks rather than polling.
List numbers
GET /v1/vox/numbersReturns the voice numbers assigned to your business.
{
"message": "Vox numbers retrieved",
"data": [
{
"id": "n1a2b3c4-...",
"phoneNumber": "+2348012345678",
"country": "NG",
"voiceCapable": true,
"smsCapable": true,
"status": "active",
"provider": "telnyx",
"createdAt": "2026-01-01T00:00:00.000Z"
}
]
}List agents
GET /v1/vox/agentsReturns the AI agent configurations available to your business.
{
"message": "Vox AI agents retrieved",
"data": [
{
"id": "a1a2b3c4-...",
"name": "Support Agent",
"language": "en",
"voiceProvider": "openai_realtime",
"voiceId": "alloy",
"persona": "Friendly and professional support representative",
"isDefault": false,
"status": "active",
"createdAt": "2026-01-01T00:00:00.000Z"
}
]
}