Transcrever áudio
Três formas de enviar: corpo binário (audio/*, video/* ou application/octet-stream, opções na query),
multipart/form-data (campo file e opções como campos) ou JSON com audio_url ou upload_id.
Áudio curto volta pronto (200). Áudio longo, ou pedido com webhook_url, volta 202 e o resultado chega pelo
webhook ou por GET /transcriptions/{id}.
Autorização
bearerAuth Em: header
Parâmetros na URL
Separa quem fala. Incluído no preço do minuto, sem custo a mais.
falseSentimento por trecho. +R$ 0,002 por minuto. Faz parte da assinatura: sem assinatura ativa, a resposta é 402 plan_required.
falseE-mail, CPF, telefone, CEP e valores.
trueTermos que o modelo deve priorizar. Repita o parâmetro ou separe por vírgula. Até 200, cada um com até 60 caracteres.
items <= 200Mascara dados pessoais no texto, nas palavras e nas entidades. all cobre todas as espécies; ou liste as que quiser. Vale para o que é gravado, não só para a resposta, e não tem volta: o valor original não fica guardado em lugar nenhum.
limpo tira marcador de conversa e repetição imediata; literal devolve a fala como saiu, com [inaudível MM:SS] e [sobreposição], que é o que uma degravação precisa ter. O que fica guardado é sempre o literal: o formato é uma vista, não uma gravação.
"limpo"Value in
- "limpo"
- "literal"
URL HTTPS pública que recebe o resultado. Com ela, a resposta é sempre 202.
uriNome da transcrição. Sem ele, o nome do arquivo.
length <= 200Cabeçalhos
Repetir o pedido com a mesma chave devolve a mesma transcrição, sem cobrar de novo.
length <= 255Tipos em TypeScript
Use the request body type in TypeScript.
Áudio bruto, até 100 MB. Content-Length é obrigatório.
Resposta
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/transcriptions" \ -H "Content-Type: application/json" \ -d '{ "audio_url": "https://exemplo.com.br/gravacoes/atendimento-0412.mp3", "diarization": true, "keyterms": [ "TJSP", "habeas corpus" ] }'{ "id": "tr_8Hc2kQ9mZr4TpX1vLb7NwE", "status": "completed", "title": "atendimento-0412.wav", "created_at": "2026-09-13T14:02:11.000Z", "duration_s": 42.5, "model": "aether", "version": 1, "text": "Meu e-mail é ana.lima@exemplo.com e meu CPF é 123.456.789-09.", "words": [ { "text": "Meu", "start_s": 0.42, "end_s": 0.61, "confidence": 0.98, "speaker": "spk0" } ], "entities": { "emails": [ { "value": "ana.lima@exemplo.com", "said": "ana ponto lima arroba exemplo ponto com", "start_s": 1.1, "end_s": 3.9, "confidence": 0.91, "speaker": "spk0" } ], "cpfs": [ { "value": "123.456.789-09", "said": "um dois três quatro cinco seis sete oito nove zero nove", "start_s": 4.2, "end_s": 8, "confidence": 0.95, "speaker": "spk0", "valid": true } ], "phones": [], "ceps": [], "amounts": [] }, "speakers": [ { "speaker": "spk0", "start_s": 0, "end_s": 9.1, "label": null } ], "sentiment": null, "conversation": null, "timing": { "receive_ms": 180, "queue_ms": 12, "decode_ms": 40, "gpu_ms": 300, "format_ms": 20, "analysis_ms": 0, "total_ms": 552 }, "billing": { "seconds": 43, "cost_brl": 0.02, "balance_brl": 42.35 }}