Cancel transcript
Stops a transcript that is still `processing` and returns it with `status: "canceled"`. **Billing**: a canceled transcript is never charged, and the credit it was holding (`reserved` in `GET /v1/balance`) is released immediately. **Timing**: cancelling is about the charge, not about the machine. Audio already on a GPU runs to the end of its current work and the result is discarded; nothing about it reaches you or your invoice. A transcript that already reached `done`, `failed` or `canceled` returns `409`: those states are terminal, and the one that completed was already charged. If you passed a `webhookUrl`, the cancellation is delivered to it like any other ending.
Stops a transcript that is still processing and returns it with status: "canceled".
Billing: a canceled transcript is never charged, and the credit it was holding (reserved in GET /v1/balance) is released immediately.
Timing: cancelling is about the charge, not about the machine. Audio already on a GPU runs to the end of its current work and the result is discarded; nothing about it reaches you or your invoice.
A transcript that already reached done, failed or canceled returns 409: those states are terminal, and the one that completed was already charged. If you passed a webhookUrl, the cancellation is delivered to it like any other ending.
Authorization
bearerAuth API key (tk_...)
In: header
Path Parameters
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/transcripts/string/cancel"{ "data": { "id": "string", "status": "processing", "text": "string", "words": [ { "start": 0, "end": 0, "text": "string", "speaker": "string" } ], "utterances": [ { "start": 0, "end": 0, "text": "string", "speaker": "string", "overlap": true } ], "diarizationSegments": [ { "start": 0, "end": 0, "speakers": [ "string" ] } ], "error": { "code": "audio_too_long", "message": "string" }, "language": "string", "durationSeconds": 0, "speakerCount": 0, "cost": 0, "currency": "USD", "model": "string", "url": "string", "retentionDays": 0, "externalId": "string", "metadata": {}, "createdAt": "string" }}Delete transcript DELETE
Erases the transcribed text, the words and the stored audio. The usage record itself stays, since it is what the invoice for the period is built from, but the content is gone and cannot be recovered.
Get balance GET
Credits on the account, in the minor unit of `currency` (cents). Values carry a fraction of a cent: a short audio costs less than one cent, so do not store them in an integer column. `available` is what the next transcription can spend: `total` minus what transcriptions already running hold in `reserved`. Credit is only spent when a transcription completes, never when it is created, and a failed transcription is never charged.