Audio
dev-api

Encrypted Audio Translations (RVENC)

Changed on

Translate an end-to-end encrypted audio file into English text, whatever the input language. Nothing is stored: neither the audio nor the translation.

post/rvenc/audio/translations

Request

  • Base URL
    https://gateway.prem.io
  • Auth
    HTTP bearer and API key in header Authorization

Headers

X-Queue-Timeoutstring
Example:0

Maximum seconds the request may wait in the inference queue when no capacity is free (decimals allowed). 0 never queues: a saturated model answers 429 immediately. Values above the server budget (10s) are capped; the header can only shorten the wait, never extend it. Invalid values are ignored. A request that cannot be admitted in time gets 429 with Retry-After.

Request body

modelstring required

Model identifier to use for translation

encryptedInferencestring required

Encrypted JSON string containing all audio translation parameters. When decrypted, this string must match the structure shown in the expandable _decryptedInference property below (reference only - do not send this property).

cipherTextstring required

Cipher text for shared secret generation (ECDH key exchange)

noncestring required

Nonce used for encrypting the inference payload

encryptedFileNamestring required

The encrypted audio file name. The file name is encrypted using XChaCha20-Poly1305 with the shared secret and fileNameNonce.

fileNameNoncestring required

Nonce used for encrypting the encrypted audio file name

encryptedFilestring required

The encrypted audio file data. The audio content is encrypted using XChaCha20-Poly1305 with the shared secret and fileNonce.

fileNoncestring required

Nonce used for encrypting the encrypted audio file

Example request

{
  "model": "whisper-large-v3",
  "encryptedInference": "encrypted_inference_payload_data",
  "cipherText": "cipher_text_for_key_exchange",
  "nonce": "nonce_value",
  "fileNameNonce": "file_name_nonce_value",
  "encryptedFileName": "encrypted_audio_file_name_data",
  "fileNonce": "file_nonce_value",
  "encryptedFile": "encrypted_audio_file_data"
}

Response

Encrypted audio translation response. The response contains the encrypted translation result (always to English) which must be decrypted using the shared secret derived from the request's cipherText, along with the response nonce.

status200 | 201 | 202 required

Status code of the response

errorstring nullable

Error message of the response, human readable

messagestring nullable required

Message of the response, human readable

env'development' | 'production' required

API environment

support_idstring uuid nullable

Support ID linked to the response, used to identify it when talking with our team.

Example response

{
  "status": 200,
  "data": {
    "id": "123"
  },
  "error": null,
  "log": null,
  "validator": null,
  "support_id": null,
  "message": "Resource created successfully",
  "env": "development"
}

Changes

    • warning

      added the new 405.00 enum value to the / response property for the response status

    • warning

      added the new 405.00 enum value to the / response property for the response status

    • warning

      added the new 405.00 enum value to the response property for the response status

    • warning

      added the new 409.00 enum value to the / response property for the response status

    • warning

      added the new 409.00 enum value to the / response property for the response status

    • warning

      added the new 409.00 enum value to the response property for the response status

    • warning

      added the new 500.00 enum value to the / response property for the response status

    • warning

      added the new 500.00 enum value to the / response property for the response status

    • warning

      added the new 500.00 enum value to the response property for the response status

    • info

      added the new optional header request parameter X-Queue-Timeout

    • info

      endpoint added