call.recorded
The recordings of a call are stored, a few seconds after it ended. Each track that carried sound comes as a mono WAV (PCM 16-bit, 8 kHz) behind a presigned link that works for 7 days, without authentication: download them when the event arrives. `remote` is the other party, `local` is what your WebRTC session sent; both start when the call was placed or answered, so they line up. After 7 days, `GET /v1/calls/{id}/recordings/{track}` still serves them.
The recordings of a call are stored, a few seconds after it ended. Each track that carried sound comes as a
mono WAV (PCM 16-bit, 8 kHz) behind a presigned link that works for 7 days, without authentication: download
them when the event arrives. remote is the other party, local is what your WebRTC session sent; both start
when the call was placed or answered, so they line up. After 7 days,
GET /v1/calls/{id}/recordings/{track} still serves them.
06line-Signature*stringt=<unix seconds>,v1=<hex HMAC-SHA256 of "t.body" with your endpoint secret>. Reject events older than 5 minutes.
application/json- body
id*stringUnique; the same event may arrive twice, skip it by id.
^evt_[0-9a-z]{26}$type*string"sms.received""sms.status""call.recorded""webhook.test"created_at*TimestampRFC 3339, UTC.
date-timedata*Any 2xx within 10 seconds acknowledges the event. Anything else is retried for 24 hours.
{ "id": "evt_01jbq9z4c2v8k6t0x4r8d2e6yb", "type": "call.recorded", "created_at": "2026-10-21T15:16:44Z", "data": { "call": { "id": "call_01jbq7e4m2x8k5t1v9r3c6d0yb", "line_id": "line_01jbq5a3x9e2k7m4t6v8r0c1yb", "direction": "outbound", "from": "+33612345678", "to": "+33698765432", "state": "ended", "end_reason": "remote_hangup", "created_by": { "type": "api_key", "id": "key_01jbq4fz0c8w2n5r7t9y1b3d6f" }, "started_at": "2026-10-21T15:12:03Z", "answered_at": "2026-10-21T15:12:11Z", "ended_at": "2026-10-21T15:16:40Z", "duration_s": 269 }, "recordings": [ { "track": "remote", "url": "https://storage.06line.com/recordings/cmp_01jbq4f8k2e5t3m9x7v0a6h1zd/call_01jbq7e4m2x8k5t1v9r3c6d0yb/remote.wav?X-Amz-Expires=604800&X-Amz-Signature=5c2a9e", "size": 4430444, "expires_at": "2026-10-28T15:16:44Z" }, { "track": "local", "url": "https://storage.06line.com/recordings/cmp_01jbq4f8k2e5t3m9x7v0a6h1zd/call_01jbq7e4m2x8k5t1v9r3c6d0yb/local.wav?X-Amz-Expires=604800&X-Amz-Signature=5c2a9e", "size": 4421164, "expires_at": "2026-10-28T15:16:44Z" } ] }}{ "06line-Signature": "t=1792606542,v1=5f1c0e3d8a..."}