> ## 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.

# Venice API

> Documentação da Venice API — acesso privado e irrestrito a modelos de chat, imagem, áudio e vídeo compatíveis com OpenAI por trás de uma única chave de API.

<div className="venice-hero-copy">
  <p className="venice-hero-tagline">A API para acesso privado e irrestrito à inteligência.</p>
  <p className="venice-hero-subtitle">Chat, imagem, áudio e vídeo compatíveis com OpenAI por trás de uma única chave de API.</p>

  <div className="venice-hero-ctas">
    <a className="venice-hero-cta venice-hero-cta-primary" href="https://venice.ai/settings/api">Obter uma chave de API →</a>
    <a className="venice-hero-cta" href="/overview/getting-started">Começar</a>
  </div>
</div>

<CodeGroup>
  ```bash curl theme={"system"}
  curl https://api.venice.ai/api/v1/chat/completions \
    -H "Authorization: Bearer $VENICE_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "zai-org-glm-5-1",
      "messages": [{"role": "user", "content": "Build without permission."}]
    }'
  ```

  ```ts TypeScript theme={"system"}
  import OpenAI from "openai";

  const client = new OpenAI({
    apiKey: process.env.VENICE_API_KEY,
    baseURL: "https://api.venice.ai/api/v1",
  });

  const res = await client.chat.completions.create({
    model: "zai-org-glm-5-1",
    messages: [{ role: "user", content: "Build without permission." }],
  });
  ```

  ```python Python theme={"system"}
  import os
  from openai import OpenAI

  client = OpenAI(
      api_key=os.environ["VENICE_API_KEY"],
      base_url="https://api.venice.ai/api/v1",
  )

  res = client.chat.completions.create(
      model="zai-org-glm-5-1",
      messages=[{"role": "user", "content": "Build without permission."}],
  )
  ```
</CodeGroup>

<div className="venice-section-header">
  <p className="venice-section-eyebrow">Endpoints</p>
  <h2 className="venice-section-title">Uma API para todas as modalidades</h2>
  <p className="venice-section-subtitle">Chat, imagem, áudio, vídeo e embeddings por trás de uma única chave de API.</p>
</div>

<div className="venice-apis-grid">
  <a className="venice-api-card" href="/api-reference/endpoint/chat/completions">
    <span className="venice-api-card-name">Chat Completions</span>
    <p className="venice-api-card-desc">Chat compatível com OpenAI com raciocínio, uso de ferramentas e streaming em mais de 100 modelos de texto.</p>

    <div className="venice-api-card-chips">
      <span className="venice-api-card-chip">Streaming</span>
      <span className="venice-api-card-chip">Ferramentas</span>
      <span className="venice-api-card-chip">Visão</span>
    </div>

    <span className="venice-api-card-action">Ver referência →</span>
  </a>

  <a className="venice-api-card" href="/api-reference/endpoint/image/generations">
    <span className="venice-api-card-name">Geração de imagens</span>
    <p className="venice-api-card-desc">Text-to-image, image-to-image, upscaling e remoção de plano de fundo em modelos fotorrealistas, estilizados e sem censura.</p>

    <div className="venice-api-card-chips">
      <span className="venice-api-card-chip">Text-to-image</span>
      <span className="venice-api-card-chip">Image-to-image</span>
      <span className="venice-api-card-chip">Upscale</span>
    </div>

    <span className="venice-api-card-action">Ver referência →</span>
  </a>

  <a className="venice-api-card" href="/api-reference/endpoint/audio/speech">
    <span className="venice-api-card-name">Áudio</span>
    <p className="venice-api-card-desc">Text-to-speech com mais de 50 vozes multilíngues, mais transcrição speech-to-text para qualquer arquivo de áudio.</p>

    <div className="venice-api-card-chips">
      <span className="venice-api-card-chip">TTS</span>
      <span className="venice-api-card-chip">Transcrição</span>
      <span className="venice-api-card-chip">50+ vozes</span>
    </div>

    <span className="venice-api-card-action">Ver referência →</span>
  </a>

  <a className="venice-api-card" href="/api-reference/endpoint/video/queue">
    <span className="venice-api-card-name">Vídeo</span>
    <p className="venice-api-card-desc">Text-to-video, image-to-video e reference-to-video por meio de uma fila de jobs síncrona ou assíncrona.</p>

    <div className="venice-api-card-chips">
      <span className="venice-api-card-chip">Text-to-video</span>
      <span className="venice-api-card-chip">Image-to-video</span>
      <span className="venice-api-card-chip">Reference-to-video</span>
    </div>

    <span className="venice-api-card-action">Ver referência →</span>
  </a>
</div>

<p className="venice-apis-extras">
  Mais <a href="/api-reference/endpoint/embeddings/generate">embeddings</a>, <a href="/guides/features/file-inputs">file inputs</a>, <a href="/guides/integrations/venice-mcp">ferramentas MCP</a> e <a href="/guides/integrations/x402-venice-api">pagamentos com carteira</a>. <a className="venice-apis-extras-cta" href="/api-reference">Ver todos os endpoints →</a>
</p>

<div className="venice-section-header">
  <p className="venice-section-eyebrow">Agentes</p>
  <h2 className="venice-section-title">Feito para agentes de IA</h2>
  <p className="venice-section-subtitle">Inferência privada, ferramentas MCP e fluxos de trabalho financiados por carteira para mensageria, programação e agentes onchain.</p>
</div>

<div className="venice-agents-cards">
  <a className="venice-api-card" href="/guides/integrations/ai-agents#agent-apps">
    <span className="venice-api-card-name">Apps de agente</span>
    <p className="venice-api-card-desc">Conecte a Venice ao WhatsApp, Telegram, Discord e mais por meio do OpenClaw, Hermes e NanoClaw.</p>
    <span className="venice-api-card-action">Ver integrações →</span>
  </a>

  <a className="venice-api-card" href="/guides/integrations/ai-agents#coding-agents">
    <span className="venice-api-card-name">Agentes de programação</span>
    <p className="venice-api-card-desc">Use Claude Code, Cursor e Codex CLI com modelos Venice para fluxos de codificação privados.</p>
    <span className="venice-api-card-action">Ver integrações →</span>
  </a>

  <a className="venice-api-card" href="/guides/integrations/ai-agents#tools-and-skills">
    <span className="venice-api-card-name">MCP + Skills</span>
    <p className="venice-api-card-desc">Exponha chat, imagem, vídeo, áudio e embeddings como ferramentas MCP ou skills em runtime.</p>
    <span className="venice-api-card-action">Ver integrações →</span>
  </a>
</div>

<p className="venice-apis-extras">
  <a className="venice-apis-extras-cta" href="/guides/integrations/ai-agents">Explore o hub de agentes de IA →</a>
</p>

<div className="venice-section-header">
  <p className="venice-section-eyebrow">Modelos</p>
  <h2 className="venice-section-title">Modelos populares</h2>
  <p className="venice-section-subtitle">Alguns dos modelos mais usados na Venice. Use o ID como seu parâmetro `model`.</p>
</div>

<div className="venice-models-grid">
  <a className="venice-model-card" href="/overview/models">
    <div className="venice-model-card-head">
      <span className="venice-model-card-name">Kimi K2.6</span>
      <span className="venice-model-card-maker">Moonshot AI</span>
    </div>

    <p className="venice-model-card-desc">Raciocínio de fronteira com pesos abertos. Forte em contexto longo e uso de ferramentas a uma fração dos preços de modelos de fronteira.</p>

    <div className="venice-model-card-stats">
      <span>Contexto de 256K</span>
      <span>\$0.85 / \$4.66 por 1M</span>
      <span className="venice-model-card-privacy">Private</span>
    </div>

    <code className="venice-model-card-id">kimi-k2-6</code>
  </a>

  <a className="venice-model-card" href="/overview/models">
    <div className="venice-model-card-head">
      <span className="venice-model-card-name">Claude Opus 4.7</span>
      <span className="venice-model-card-maker">Anthropic</span>
    </div>

    <p className="venice-model-card-desc">Melhor da categoria para codificação, planejamento e agentes de longo horizonte que precisam manter coerência.</p>

    <div className="venice-model-card-stats">
      <span>Contexto de 1M</span>
      <span>\$6.00 / \$30.00 por 1M</span>
      <span className="venice-model-card-privacy">Anonymized</span>
    </div>

    <code className="venice-model-card-id">claude-opus-4-7</code>
  </a>

  <a className="venice-model-card" href="/overview/models">
    <div className="venice-model-card-head">
      <span className="venice-model-card-name">GPT-5.5</span>
      <span className="venice-model-card-maker">OpenAI</span>
    </div>

    <p className="venice-model-card-desc">Inteligência geral de fronteira com contexto de 1M. Padrão forte para chat, RAG e raciocínio em várias etapas.</p>

    <div className="venice-model-card-stats">
      <span>Contexto de 1M</span>
      <span>\$6.25 / \$37.50 por 1M</span>
      <span className="venice-model-card-privacy">Anonymized</span>
    </div>

    <code className="venice-model-card-id">openai-gpt-55</code>
  </a>
</div>

<a className="venice-models-cta" href="/overview/models">
  <span className="venice-models-cta-left">
    <span className="venice-models-cta-count">Mais de 250 modelos</span>
    <span className="venice-models-cta-sub">Texto, imagem, áudio e vídeo</span>
  </span>

  <span className="venice-models-cta-action">Navegar no catálogo →</span>
</a>

<div className="venice-section-header">
  <p className="venice-section-eyebrow">Ferramentas</p>
  <h2 className="venice-section-title">Ferramentas integradas para modelos de chat</h2>
  <p className="venice-section-subtitle">Ative busca na web, anexe arquivos ou consulte uma blockchain com `venice_parameters` ou um endpoint nativo da Venice.</p>
</div>

<CardGroup cols={4}>
  <Card title="Web Search" icon="globe" />

  <Card title="Web Scraping" icon="browser" />

  <Card title="File Inputs" icon="file" />

  <Card title="Crypto RPC" icon="link" />
</CardGroup>

<Accordion title="Exemplos de código de Web Search">
  Adicione busca em tempo real na web com citações a qualquer modelo de texto via `enable_web_search`.

  <CodeGroup>
    ```bash Curl theme={"system"}
    curl https://api.venice.ai/api/v1/chat/completions \
      -H "Authorization: Bearer $VENICE_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "model": "zai-org-glm-5-1",
        "messages": [{"role": "user", "content": "What are the latest developments in AI?"}],
        "venice_parameters": {
          "enable_web_search": "auto"
        }
      }'
    ```

    ```ts TypeScript theme={"system"}
    import OpenAI from "openai";

    const client = new OpenAI({
      apiKey: process.env.VENICE_API_KEY!,
      baseURL: "https://api.venice.ai/api/v1",
    });

    const completion = await client.chat.completions.create({
      model: "zai-org-glm-5-1",
      messages: [{ role: "user", content: "What are the latest developments in AI?" }],
      // @ts-expect-error - Venice-specific parameter
      venice_parameters: {
        enable_web_search: "auto",
      },
    });

    console.log(completion.choices[0].message.content);
    ```

    ```python Python theme={"system"}
    import os
    from openai import OpenAI

    client = OpenAI(
        api_key=os.environ["VENICE_API_KEY"],
        base_url="https://api.venice.ai/api/v1",
    )

    response = client.chat.completions.create(
        model="zai-org-glm-5-1",
        messages=[{"role": "user", "content": "What are the latest developments in AI?"}],
        extra_body={
            "venice_parameters": {
                "enable_web_search": "auto",
            }
        },
    )

    print(response.choices[0].message.content)
    ```

    ```bash Model Suffix theme={"system"}
    # Alternative: append parameters directly to the model ID
    curl https://api.venice.ai/api/v1/chat/completions \
      -H "Authorization: Bearer $VENICE_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "model": "zai-org-glm-5-1:enable_web_search=on&enable_web_citations=true",
        "messages": [{"role": "user", "content": "What are the latest developments in AI?"}]
      }'
    ```
  </CodeGroup>
</Accordion>

<Accordion title="Exemplos de código de Web Scraping">
  Defina `enable_web_scraping: true` e o modelo buscará e lerá quaisquer URLs na mensagem do usuário antes de responder.

  <CodeGroup>
    ```bash Curl theme={"system"}
    curl https://api.venice.ai/api/v1/chat/completions \
      -H "Authorization: Bearer $VENICE_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "model": "openai-gpt-55",
        "messages": [
          {"role": "user", "content": "Summarize this post in five bullets: https://venice.ai/blog/how-to-use-venice-api"}
        ],
        "venice_parameters": {
          "enable_web_scraping": true
        }
      }'
    ```

    ```ts TypeScript theme={"system"}
    import OpenAI from "openai";

    const client = new OpenAI({
      apiKey: process.env.VENICE_API_KEY!,
      baseURL: "https://api.venice.ai/api/v1",
    });

    const response = await client.chat.completions.create({
      model: "openai-gpt-55",
      messages: [
        {
          role: "user",
          content:
            "Summarize this post in five bullets: https://venice.ai/blog/how-to-use-venice-api",
        },
      ],
      // @ts-expect-error - Venice-specific parameter
      venice_parameters: {
        enable_web_scraping: true,
      },
    });

    console.log(response.choices[0].message.content);
    ```

    ```python Python theme={"system"}
    import os
    from openai import OpenAI

    client = OpenAI(
        api_key=os.environ["VENICE_API_KEY"],
        base_url="https://api.venice.ai/api/v1",
    )

    response = client.chat.completions.create(
        model="openai-gpt-55",
        messages=[
            {
                "role": "user",
                "content": "Summarize this post in five bullets: https://venice.ai/blog/how-to-use-venice-api",
            }
        ],
        extra_body={
            "venice_parameters": {
                "enable_web_scraping": True,
            }
        },
    )

    print(response.choices[0].message.content)
    ```
  </CodeGroup>
</Accordion>

<Accordion title="Exemplos de código de File Inputs">
  Anexe PDFs, documentos Office, código e arquivos de texto (até 25 MB) diretamente a uma requisição de chat. Veja o [guia de File Inputs](/guides/features/file-inputs) para a lista completa de formatos.

  <CodeGroup>
    ```bash Curl theme={"system"}
    # Encode a local file as a base64 data URL, then send it inline
    FILE_B64=$(base64 q3-report.pdf | tr -d '\n')

    curl https://api.venice.ai/api/v1/chat/completions \
      -H "Authorization: Bearer $VENICE_API_KEY" \
      -H "Content-Type: application/json" \
      -d "{
        \"model\": \"openai-gpt-55\",
        \"messages\": [
          {
            \"role\": \"user\",
            \"content\": [
              {\"type\": \"text\", \"text\": \"Summarize this report in five bullets and list the main risks.\"},
              {\"type\": \"file\", \"file\": {\"filename\": \"q3-report.pdf\", \"file_data\": \"data:application/pdf;base64,${FILE_B64}\"}}
            ]
          }
        ]
      }"
    ```

    ```ts TypeScript theme={"system"}
    import OpenAI from "openai";
    import { readFile } from "node:fs/promises";

    const client = new OpenAI({
      apiKey: process.env.VENICE_API_KEY!,
      baseURL: "https://api.venice.ai/api/v1",
    });

    const pdf = await readFile("q3-report.pdf");
    const fileData = `data:application/pdf;base64,${pdf.toString("base64")}`;

    const response = await client.chat.completions.create({
      model: "openai-gpt-55",
      messages: [
        {
          role: "user",
          content: [
            { type: "text", text: "Summarize this report in five bullets and list the main risks." },
            // @ts-expect-error - Venice file input block
            { type: "file", file: { filename: "q3-report.pdf", file_data: fileData } },
          ],
        },
      ],
    });

    console.log(response.choices[0].message.content);
    ```

    ```python Python theme={"system"}
    import base64
    import os
    from pathlib import Path
    from openai import OpenAI

    client = OpenAI(
        api_key=os.environ["VENICE_API_KEY"],
        base_url="https://api.venice.ai/api/v1",
    )

    path = Path("q3-report.pdf")
    file_data = "data:application/pdf;base64," + base64.b64encode(path.read_bytes()).decode("utf-8")

    response = client.chat.completions.create(
        model="openai-gpt-55",
        messages=[
            {
                "role": "user",
                "content": [
                    {"type": "text", "text": "Summarize this report in five bullets and list the main risks."},
                    {"type": "file", "file": {"filename": "q3-report.pdf", "file_data": file_data}},
                ],
            }
        ],
    )

    print(response.choices[0].message.content)
    ```
  </CodeGroup>
</Accordion>

<Accordion title="Exemplos de código de Crypto RPC">
  Faça proxy de chamadas JSON-RPC 2.0 em 11 chains suportadas com sua chave Venice ou uma carteira x402. Veja a [referência do Crypto RPC](/api-reference/endpoint/crypto/rpc) para chains, métodos e níveis de crédito.

  <CodeGroup>
    ```bash Curl theme={"system"}
    curl https://api.venice.ai/api/v1/crypto/rpc/ethereum-mainnet \
      -H "Authorization: Bearer $VENICE_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "jsonrpc": "2.0",
        "method": "eth_blockNumber",
        "params": [],
        "id": 1
      }'
    ```

    ```ts TypeScript theme={"system"}
    const response = await fetch(
      "https://api.venice.ai/api/v1/crypto/rpc/base-mainnet",
      {
        method: "POST",
        headers: {
          Authorization: `Bearer ${process.env.VENICE_API_KEY}`,
          "Content-Type": "application/json",
        },
        body: JSON.stringify([
          { jsonrpc: "2.0", method: "eth_chainId", params: [], id: 1 },
          { jsonrpc: "2.0", method: "eth_blockNumber", params: [], id: 2 },
        ]),
      }
    );

    const results = await response.json();
    console.log(results);
    ```

    ```python Python theme={"system"}
    import os
    import requests

    response = requests.post(
        "https://api.venice.ai/api/v1/crypto/rpc/ethereum-mainnet",
        headers={
            "Authorization": f"Bearer {os.environ['VENICE_API_KEY']}",
            "Content-Type": "application/json",
        },
        json={
            "jsonrpc": "2.0",
            "method": "eth_getBalance",
            "params": ["0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045", "latest"],
            "id": 1,
        },
    )

    print(response.json())
    ```
  </CodeGroup>
</Accordion>

<div className="venice-pricing">
  <div className="venice-section-header">
    <p className="venice-section-eyebrow">Preços</p>
    <h2 className="venice-section-title">Faça uma recarga, faça stake ou pague por requisição</h2>
    <p className="venice-section-subtitle">Adicione créditos a uma conta, faça stake de DIEM para um limite diário ou dispense a conta totalmente com USDC na Base.</p>
  </div>

  <div className="venice-pricing-grid">
    <div className="venice-pricing-card">
      <div className="venice-pricing-card-head">
        <span className="venice-pricing-card-name">Créditos</span>
        <span className="venice-pricing-card-badge">USD ou cripto</span>
      </div>

      <p className="venice-pricing-card-desc">Pague conforme o uso em USD ou cripto. Os créditos nunca expiram e funcionam em todos os endpoints.</p>
      <a className="venice-pricing-card-cta" href="https://venice.ai/settings/billing">Comprar créditos</a>
    </div>

    <div className="venice-pricing-card">
      <div className="venice-pricing-card-head">
        <span className="venice-pricing-card-name">DIEM</span>
        <span className="venice-pricing-card-badge">Limite diário</span>
      </div>

      <p className="venice-pricing-card-desc">Faça stake de DIEM ou VVV uma vez e ganhe um limite fixo de inferência todos os dias, sem cobranças por chamada.</p>
      <a className="venice-pricing-card-cta" href="https://venice.ai/token">Saiba mais sobre o DIEM</a>
    </div>

    <div className="venice-pricing-card">
      <div className="venice-pricing-card-head">
        <span className="venice-pricing-card-name">x402</span>
        <span className="venice-pricing-card-badge">USDC na Base</span>
      </div>

      <p className="venice-pricing-card-desc">Pague por requisição a partir de qualquer carteira na Base em USDC. Sem conta ou chave de API, feito para agentes.</p>
      <a className="venice-pricing-card-cta" href="/guides/integrations/x402-venice-api">Ler guia do x402</a>
    </div>
  </div>
</div>

Dúvidas ou feedback? Encontre-nos no [Discord](https://discord.gg/askvenice).
