Skip to main content
POST
Submit a sealed transcription
Submit a valid reservation token and the client-sealed JSON audio envelope. The endpoint rejects plain audio, multipart form data, paths, URLs, and legacy encryption formats. Use the TypeScript or Python SDK helper. It verifies the reserved node key binding, seals the PCM, checks the node signature over the encrypted result, decrypts it, and validates every result binding before returning the transcript. Transcription is release-gated and unavailable unless public discovery returns whisper-1. For the complete flow, see Speech-to-text transcription.

Headers

X-API-Key
string

Use the same credit/payment identity as the reservation.

Example:

"x402c_..."

X-Payment
string

x402 payment payload bound to the reserved request.

Body

application/json
reservation_token
string
required
enc
object
required

Response

A node-signed encrypted result plus validated usage. SDKs verify the signature before decrypting and expose the final typed transcript only after all bindings validate.

job_id
string<uuid>
required
sealed_result
object
required
result_envelope_signature
string
required

Base58 Ed25519 signature by the reserved node over the public result envelope.

result_envelope_version
enum<string>
required
Available options:
v1
usage
object
required
object
string
billing_pending
boolean

Payment settlement or accounting needs reconciliation, including an unknown settlement outcome. Do not resubmit; reconcile by job/payment identity.