Skip to content

POST /v1/post-call

After a call ends, submit the call summary to store a permanent evidence bundle. This packages every disclosure made, every consent captured, and every opt-out honored into a signed, tamper-proof record that can be used for legal defense.

This endpoint is always free.

POST https://voice.econsent.org/v1/post-call
Authorization: Bearer ec_voice_YOUR_KEY
Content-Type: application/json
{
"call_id": "call_xyz789",
"phone": "+15551234567",
"calling_entity": "Acme Insurance LLC",
"calling_number": "+18005550100",
"started_at": "2026-04-10T15:42:00Z",
"ended_at": "2026-04-10T15:46:30Z",
"duration_seconds": 270,
"outcome": "completed",
"audio_recording_url": "https://storage.yourplatform.com/recordings/call_xyz789.wav",
"full_transcript": "...",
"ai_disclosures_made": [
{
"type": "ai_identity",
"at_seconds": 1,
"text": "Hi, this is an AI assistant calling on behalf of Acme Insurance."
},
{
"type": "callback_number",
"at_seconds": 4,
"text": "Our callback number is 800-555-0100."
},
{
"type": "opt_out_instructions",
"at_seconds": 6,
"text": "If you'd like to opt out at any time, just say stop or press 9."
}
],
"consent_ids_used": ["cst_lx8k7n3f4g5h6j7k"],
"consent_ids_captured": ["cst_lx8ka1b2c3d4e5f6"]
}
FieldTypeRequiredDescription
call_idstringYesYour internal call identifier
phonestringYesConsumer phone in E.164
calling_entitystringYesLegal entity name
calling_numberstringNoCaller ID phone number
started_atstringNoISO 8601 call start time
ended_atstringNoISO 8601 call end time
duration_secondsnumberNoCall duration in seconds
outcomestringNocompleted, no_answer, voicemail, failed
audio_recording_urlstringNoURL to the full call recording
full_transcriptstringNoFull call transcript
ai_disclosures_madearrayNoList of disclosures made during the call (see below)
consent_ids_usedarrayNoConsent IDs that authorized this call (from precall)
consent_ids_capturedarrayNoConsent IDs captured during this call (from capture-verbal)
TypeDescription
ai_identityDisclosed that an AI is making the call
callback_numberProvided the callback phone number
opt_out_instructionsExplained how to opt out
consent_requestAsked for consent
offshore_locationDisclosed the call center location (for offshore compliance)
{
"evidence_bundle_id": "ev_lx8kc1d2e3f4g5h6",
"stored": true,
"evidence_url": "https://verify.econsent.org/e/ev_lx8kc1d2e3f4g5h6",
"compliance_score": 100,
"compliance_findings": [],
"retention_until": "2030-04-10T15:46:30Z"
}
await voice.postCall({
callId: 'call_xyz789',
phone: '+15551234567',
callingEntity: 'Acme Insurance LLC',
durationSeconds: 270,
outcome: 'completed',
aiDisclosuresMade: [
{ type: 'ai_identity', atSeconds: 1, text: 'This is an AI assistant...' },
{ type: 'callback_number', atSeconds: 4, text: 'Our number is 800-555-0100' },
],
});