Texa DeskDevelopers

Texa API · Media

Upload a voice note, photo, document or video

POST/v1/media

Sizes: audio 16 MB, image 10 MB, document 20 MB, video 64 MB (settings media.max_mb_*). A voice note is heard up to 3 minutes (media.audio_max_s).

Takes an Idempotency-Key header.

Authorization

Authorizationheaderrequired

A Texa API key, texa_test_… for the sandbox or texa_live_…, made in Texa Desk under Texa AI → Developers → API keys. Keep it on your server.

Headers

Idempotency-Keystring

Run this request once; a retry with the same key and body gets the same answer.

Body multipart/form-data

conversation_idstring
filestringrequired

the bytes

purposestring

message | research_answer Default "message".

Responses

201

Successful Response

400

400: The request is not valid; error.field names the part / 401: No key, or not a live one / 402: The account's prepaid credits are used up; top up in Texa Desk / 403: The key cannot do this (a sandbox route needs a test key) / 404: No such route, or nothing with that id in this account / 409: A conflict: the conversation's state, or an Idempotency-Key reused / 422: The body is not what this route takes / 429: Too many requests: wait Retry-After seconds / 503: Texa AI is not answering right now: retry after Retry-After seconds

errorobject
error.codestring
error.fieldstring
error.messagestring
error.typestring
401

400: The request is not valid; error.field names the part / 401: No key, or not a live one / 402: The account's prepaid credits are used up; top up in Texa Desk / 403: The key cannot do this (a sandbox route needs a test key) / 404: No such route, or nothing with that id in this account / 409: A conflict: the conversation's state, or an Idempotency-Key reused / 422: The body is not what this route takes / 429: Too many requests: wait Retry-After seconds / 503: Texa AI is not answering right now: retry after Retry-After seconds

errorobject
error.codestring
error.fieldstring
error.messagestring
error.typestring
402

400: The request is not valid; error.field names the part / 401: No key, or not a live one / 402: The account's prepaid credits are used up; top up in Texa Desk / 403: The key cannot do this (a sandbox route needs a test key) / 404: No such route, or nothing with that id in this account / 409: A conflict: the conversation's state, or an Idempotency-Key reused / 422: The body is not what this route takes / 429: Too many requests: wait Retry-After seconds / 503: Texa AI is not answering right now: retry after Retry-After seconds

errorobject
error.codestring
error.fieldstring
error.messagestring
error.typestring
403

400: The request is not valid; error.field names the part / 401: No key, or not a live one / 402: The account's prepaid credits are used up; top up in Texa Desk / 403: The key cannot do this (a sandbox route needs a test key) / 404: No such route, or nothing with that id in this account / 409: A conflict: the conversation's state, or an Idempotency-Key reused / 422: The body is not what this route takes / 429: Too many requests: wait Retry-After seconds / 503: Texa AI is not answering right now: retry after Retry-After seconds

errorobject
error.codestring
error.fieldstring
error.messagestring
error.typestring
404

400: The request is not valid; error.field names the part / 401: No key, or not a live one / 402: The account's prepaid credits are used up; top up in Texa Desk / 403: The key cannot do this (a sandbox route needs a test key) / 404: No such route, or nothing with that id in this account / 409: A conflict: the conversation's state, or an Idempotency-Key reused / 422: The body is not what this route takes / 429: Too many requests: wait Retry-After seconds / 503: Texa AI is not answering right now: retry after Retry-After seconds

errorobject
error.codestring
error.fieldstring
error.messagestring
error.typestring
409

400: The request is not valid; error.field names the part / 401: No key, or not a live one / 402: The account's prepaid credits are used up; top up in Texa Desk / 403: The key cannot do this (a sandbox route needs a test key) / 404: No such route, or nothing with that id in this account / 409: A conflict: the conversation's state, or an Idempotency-Key reused / 422: The body is not what this route takes / 429: Too many requests: wait Retry-After seconds / 503: Texa AI is not answering right now: retry after Retry-After seconds

errorobject
error.codestring
error.fieldstring
error.messagestring
error.typestring
422

400: The request is not valid; error.field names the part / 401: No key, or not a live one / 402: The account's prepaid credits are used up; top up in Texa Desk / 403: The key cannot do this (a sandbox route needs a test key) / 404: No such route, or nothing with that id in this account / 409: A conflict: the conversation's state, or an Idempotency-Key reused / 422: The body is not what this route takes / 429: Too many requests: wait Retry-After seconds / 503: Texa AI is not answering right now: retry after Retry-After seconds

errorobject
error.codestring
error.fieldstring
error.messagestring
error.typestring
429

400: The request is not valid; error.field names the part / 401: No key, or not a live one / 402: The account's prepaid credits are used up; top up in Texa Desk / 403: The key cannot do this (a sandbox route needs a test key) / 404: No such route, or nothing with that id in this account / 409: A conflict: the conversation's state, or an Idempotency-Key reused / 422: The body is not what this route takes / 429: Too many requests: wait Retry-After seconds / 503: Texa AI is not answering right now: retry after Retry-After seconds

errorobject
error.codestring
error.fieldstring
error.messagestring
error.typestring
503

400: The request is not valid; error.field names the part / 401: No key, or not a live one / 402: The account's prepaid credits are used up; top up in Texa Desk / 403: The key cannot do this (a sandbox route needs a test key) / 404: No such route, or nothing with that id in this account / 409: A conflict: the conversation's state, or an Idempotency-Key reused / 422: The body is not what this route takes / 429: Too many requests: wait Retry-After seconds / 503: Texa AI is not answering right now: retry after Retry-After seconds

errorobject
error.codestring
error.fieldstring
error.messagestring
error.typestring