> ## Documentation Index
> Fetch the complete documentation index at: https://docs.venice.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Cotação do trocador de voz

> Get a price quote for converting a source recording of a given length.

Voice Changer is billed off the length of the source recording, rounded up to the next whole minute. This endpoint prices the length you declare, so the result is an estimate: the amount actually charged is computed from the length Venice measures server-side when the recording is queued. Where the two round to the same minute, the prices are identical — `/audio/voice-changer/queue` returns the measured `duration_seconds` so the estimate can be reconciled.

The whole-minute tiers are also published directly as `pricing.durations` in `/models`.

Use este endpoint antes de [`/audio/voice-changer/queue`](/pt-BR/api-reference/endpoint/audio/voice-changer/queue) para estimar o custo em USD de converter uma gravação de origem com uma determinada duração. O Trocador de Voz é cobrado com base na duração da origem, arredondada para cima para o próximo minuto inteiro. A resposta de queue retorna o `duration_seconds` medido para que você possa reconciliar a estimativa.

Modelos de trocador de voz não são aceitos em [`/audio/quote`](/pt-BR/api-reference/endpoint/audio/quote).

## Coleção do Postman

Para exemplos adicionais, consulte esta [coleção do Postman](https://www.postman.com/veniceai/workspace/venice-ai-workspace/folder/38652128-93377fa7-eef6-4239-a7e1-80bffc5fcb0e?action=share\&source=copy-link\&creator=48156591).

***


## OpenAPI

````yaml POST /audio/voice-changer/quote
openapi: 3.0.0
info:
  description: The Venice.ai API.
  termsOfService: https://venice.ai/legal/tos
  title: Venice.ai API
  version: '20260916.135625'
  x-guidance: >-
    Venice.ai is an OpenAI-compatible inference API supporting text, image,
    audio, and video generation.


    **Authentication options:**

    - API Key: Use Bearer token in Authorization header

    - x402 Wallet: Use USDC credits via EVM or Solana wallet (no account
    required)


    **For x402 wallet access:**

    1. POST /x402/top-up without headers to get payment requirements

    2. Choose one of the returned Base or Solana payment options and sign a USDC
    payment using the x402 SDK

    3. POST /x402/top-up with PAYMENT-SIGNATURE header to add credits

    4. Call any inference endpoint with SIGN-IN-WITH-X header


    **Pricing:** Prepaid credits consumed per request. Check /models for
    available models and their capabilities.
servers:
  - url: https://api.venice.ai/api/v1
security:
  - BearerAuth: []
tags:
  - description: >-
      Generate speech/audio, transcribe audio, and manage asynchronous audio
      generation jobs.
    name: Audio
  - description: >-
      Given a list of messages comprising a conversation, the model will return
      a response. Supports multimodal inputs including text, images, audio
      (input_audio), and video (video_url) for compatible models.
    name: Chat
  - description: >-
      Create vector embeddings from text. `input` must be a string or an array
      of strings. Token arrays are not supported. LangChain OpenAIEmbeddings
      must set `check_embedding_ctx_length=False` to send text instead of
      tiktoken IDs.
    name: Embeddings
  - description: List and describe the various models available in the API.
    name: Models
  - description: Generate and manipulate images using AI models.
    name: Image
  - description: Generate videos using AI models.
    name: Video
  - description: List and retrieve character information for use in completions.
    name: Characters
  - description: >-
      Billing and usage analytics. **Beta**: This API is currently in beta and
      may be unstable. Endpoints, request/response schemas, and behavior may
      change without notice.
    name: Billing
  - description: Proxy JSON-RPC requests to blockchain nodes. Billed per credit.
    name: Crypto RPC
  - description: >-
      Wallet-based API access using the x402 protocol. No API key required —
      authenticate with an EVM or Solana wallet.


      **How it works:**

      1. **Authenticate** — Send a `SIGN-IN-WITH-X` header (base64-encoded
      signed SIWX payload) with any request. EVM wallets sign an EIP-4361 SIWE
      message; Solana wallets sign the Solana SIWX message with Ed25519. See the
      `siwx` security scheme for the exact format.

      2. **Top up** — `POST /x402/top-up` without a payment header returns an
      `accepts` array with Base and Solana USDC payment options. Choose one
      entry, sign it using the x402 SDK (`npm install x402`), and re-submit with
      the `PAYMENT-SIGNATURE` header (the legacy `X-402-Payment` and `X-PAYMENT`
      names are also accepted).

      3. **Use any endpoint** — All inference endpoints (chat, image, audio,
      video, embeddings) accept `siwx` as an alternative to `BearerAuth`.
      Charges are deducted from your USDC credit balance.

      4. **Monitor balance** — `GET /x402/balance/{walletAddress}` returns your
      current balance. The `X-Balance-Remaining` response header on inference
      calls also reports it.


      **Quick start (5 lines):**

      ```

      import { VeniceClient } from '@venice-ai/x402-client'

      const venice = new VeniceClient(process.env.WALLET_KEY)

      await venice.topUp(10) // $10 USDC on a supported x402 rail

      const res = await venice.chat({ model: 'zai-org-glm-5-1', messages: [{
      role: 'user', content: 'Hello!' }] })

      ```


      **Payment:** USDC on Base (chain ID 8453) or Solana mainnet. Minimum
      top-up: $5. Alternatively, stake DIEM tokens for daily credits (1 DIEM =
      $1/day).
    name: x402
externalDocs:
  description: Venice.ai API documentation
  url: https://docs.venice.ai
paths:
  /audio/voice-changer/quote:
    post:
      tags:
        - Audio
      summary: /api/v1/audio/voice-changer/quote
      description: >-
        Get a price quote for converting a source recording of a given length.


        Voice Changer is billed off the length of the source recording, rounded
        up to the next whole minute. This endpoint prices the length you
        declare, so the result is an estimate: the amount actually charged is
        computed from the length Venice measures server-side when the recording
        is queued. Where the two round to the same minute, the prices are
        identical — `/audio/voice-changer/queue` returns the measured
        `duration_seconds` so the estimate can be reconciled.


        The whole-minute tiers are also published directly as
        `pricing.durations` in `/models`.
      operationId: quoteVoiceChanger
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuoteVoiceChangerRequest'
      responses:
        '200':
          description: Estimated price for a conversion of the given source length
          content:
            application/json:
              schema:
                type: object
                properties:
                  quote:
                    type: number
                    description: >-
                      Estimated price in USD for converting a recording of the
                      given length.
                    example: 0.35
                  duration_seconds:
                    type: number
                    description: The source length this quote was computed for.
                    example: 60
                required:
                  - quote
                  - duration_seconds
                additionalProperties: false
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DetailedError'
        '500':
          description: Inference processing failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
components:
  schemas:
    QuoteVoiceChangerRequest:
      type: object
      properties:
        model:
          type: string
          description: >-
            The voice-changer model to price. Models that are not voice changers
            are not supported here; use `/api/v1/audio/quote` instead.
          example: elevenlabs-voice-changer
        duration_seconds:
          anyOf:
            - type: integer
              minimum: 0
              exclusiveMinimum: true
            - type: string
              pattern: ^\d+$
          description: >-
            Length of the source recording in seconds. Voice Changer preserves
            timing, so the source length is the billable quantity, priced in
            whole-minute tiers. This is an estimate: the charge is computed from
            the length Venice measures server-side when the recording is queued.
            The per-model maximum is published as
            `max_source_audio_duration_seconds` in /models.
          example: 60
      required:
        - model
        - duration_seconds
      additionalProperties: false
    DetailedError:
      type: object
      properties:
        details:
          type: object
          properties: {}
          description: Details about the incorrect input
          example:
            _errors: []
            field:
              _errors:
                - Field is required
        error:
          type: string
          description: A description of the error
      required:
        - error
    StandardError:
      type: object
      properties:
        error:
          type: string
          description: A description of the error
      required:
        - error
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: http

````