Permanently delete the call recording
Irreversible. Erases every audio artifact of the call from object
storage — the master recording, both channel recordings, the playback
transcode and the waveform data — and reports success only after the
deletion has been verified. The call itself is kept: transcript,
analyses, notes, metadata and diagnostics are untouched, and the call
keeps appearing in GET /calls.
Afterwards recording.available on the call is false and
GET /calls/{call_id}/recording returns 404.
Requires an API key whose role carries the call_logs.call_recording
delete permission; keys without it receive 403. Repeating the call on an
already-erased recording succeeds without changing anything, and a call
that never had a recording returns 404. A call that is still running, or
whose recording is still being processed, is rejected with 409 — retry
once the call has ended. A 500 means the audio was not fully removed
and nothing was changed; the recording stays downloadable and the call is
safe to retry.
API key in the Authorization: Bearer <key> header.
Keys are created in the SMAO dashboard (Settings → API Keys).
In: header
Path Parameters
^[a-f0-9]{24}$Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X DELETE "https://api.smao.ai/api/v1/calls/65f8fa6f1a9d8e0012ab34cd/recording"{
"data": {}
}{
"error": {
"code": "validation_failed",
"message": "Validation failed"
}
}{
"error": {
"code": "unauthorized",
"message": "Missing API key"
}
}{
"error": {
"code": "subscription_required",
"message": "This feature is not available in your current subscription. Please upgrade to a higher plan"
}
}{
"error": {
"code": "forbidden",
"message": "No permission"
}
}{
"error": {
"code": "not_found",
"message": "Not found"
}
}{
"error": {
"code": "conflict",
"message": "Group is assigned to an assistant"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded"
}
}{
"error": {
"code": "internal_error",
"message": "An unexpected error occurred."
}
}