Skip to content

The exact voicemail message one published version leaves

GET
/v1/agents/{agent_id}/versions/{version}/voicemail-message
curl --request GET \
--url https://api.vocapable.com/v1/agents/example/versions/1/voicemail-message \
--header 'Authorization: Bearer <token>'

Show the customer the text that will actually be spoken.

Served from the same composer the drop uses, on the same pinned snapshot the drop reads, which is what makes this a proof rather than a mock-up: if this endpoint and a live drop could disagree, the platform would not really be the one composing the message. estimated_seconds is named an estimate because <Say> renders at Twilio’s rate, not ours.

The compliance-profile extension text is deliberately omitted, exactly as at publish: it can only lengthen the opener, so the text here is the shortest lawful form of the message rather than a different one.

agent_id
required
Agent Id
string
version
required
Version
integer

Successful Response

Media typeapplication/json
VoicemailMessage

GET /v1/agents/{id}/versions/{v}/voicemail-message - what will actually be said.

A customer running a waivered cold-outreach program is legally responsible for the message; they must be able to read it, in full, before it is left on anyone’s machine. Serving it from the same composer and the same pinned snapshot the drop reads is what makes this the message rather than a preview of one.

composable is false - with refusal naming the floor control - where the version would leave no message at all. That is a state worth reporting rather than a 409: the question “what will be said” has the honest answer “nothing, and here is why”.

object
agent_version_id
required
Agent Version Id
string
composable
required
Composable
boolean
refusal
Any of:
string
text
Any of:
string
elements
Elements
Array<string>
language
Any of:
string
callback_e164
Any of:
string
content_sha256
Any of:
string
estimated_seconds
Any of:
integer
Examplegenerated
{
"agent_version_id": "example",
"composable": true,
"refusal": "example",
"text": "example",
"elements": [
"example"
],
"language": "example",
"callback_e164": "example",
"content_sha256": "example",
"estimated_seconds": 1
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object
Examplegenerated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example",
"input": "example",
"ctx": {}
}
]
}