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

# Venice API

<div className="venice-hero-copy">
  <p className="venice-hero-tagline">지능에 대한 비공개, 제한 없는 액세스를 위한 API.</p>
  <p className="venice-hero-subtitle">하나의 API 키 뒤에 있는 OpenAI 호환 chat, image, audio 및 video.</p>

  <div className="venice-hero-ctas">
    <a className="venice-hero-cta venice-hero-cta-primary" href="https://venice.ai/settings/api">API 키 받기 →</a>
    <a className="venice-hero-cta" href="/overview/getting-started">시작하기</a>
  </div>
</div>

<CodeGroup>
  ```bash curl theme={"dark"}
  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={"dark"}
  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={"dark"}
  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">엔드포인트</p>
  <h2 className="venice-section-title">모든 모달리티를 위한 하나의 API</h2>
  <p className="venice-section-subtitle">하나의 API 키 뒤에 있는 Chat, image, audio, video, embeddings.</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">100개 이상의 텍스트 모델에 걸친 추론, 도구 사용 및 스트리밍을 지원하는 OpenAI 호환 채팅.</p>

    <div className="venice-api-card-chips">
      <span className="venice-api-card-chip">Streaming</span>
      <span className="venice-api-card-chip">Tools</span>
      <span className="venice-api-card-chip">Vision</span>
    </div>

    <span className="venice-api-card-action">참조 보기 →</span>
  </a>

  <a className="venice-api-card" href="/api-reference/endpoint/image/generations">
    <span className="venice-api-card-name">이미지 생성</span>
    <p className="venice-api-card-desc">포토리얼리스틱, 스타일화 및 검열되지 않은 모델에 걸친 Text-to-image, image-to-image, 업스케일링, 배경 제거.</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">참조 보기 →</span>
  </a>

  <a className="venice-api-card" href="/api-reference/endpoint/audio/speech">
    <span className="venice-api-card-name">오디오</span>
    <p className="venice-api-card-desc">50개 이상의 다국어 음성을 갖춘 Text-to-speech와 모든 오디오 파일에 대한 speech-to-text 전사.</p>

    <div className="venice-api-card-chips">
      <span className="venice-api-card-chip">TTS</span>
      <span className="venice-api-card-chip">Transcription</span>
      <span className="venice-api-card-chip">50+ voices</span>
    </div>

    <span className="venice-api-card-action">참조 보기 →</span>
  </a>

  <a className="venice-api-card" href="/api-reference/endpoint/video/queue">
    <span className="venice-api-card-name">비디오</span>
    <p className="venice-api-card-desc">동기 또는 비동기 작업 큐를 통한 Text-to-video, image-to-video, reference-to-video.</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">참조 보기 →</span>
  </a>
</div>

<p className="venice-apis-extras">
  추가로 <a href="/api-reference/endpoint/embeddings/generate">embeddings</a>, <a href="/guides/features/file-inputs">file inputs</a>, <a href="/guides/integrations/venice-mcp">MCP tools</a> 및 <a href="/guides/integrations/x402-venice-api">wallet payments</a>가 있습니다. <a className="venice-apis-extras-cta" href="/api-reference">모든 엔드포인트 보기 →</a>
</p>

<div className="venice-section-header">
  <p className="venice-section-eyebrow">에이전트</p>
  <h2 className="venice-section-title">AI 에이전트를 위해 구축됨</h2>
  <p className="venice-section-subtitle">메시징, 코딩 및 온체인 에이전트를 위한 비공개 추론, MCP 도구, 지갑 자금 워크플로.</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">에이전트 앱</span>
    <p className="venice-api-card-desc">OpenClaw, Hermes, NanoClaw를 통해 Venice를 WhatsApp, Telegram, Discord 등에 연결하세요.</p>
    <span className="venice-api-card-action">통합 보기 →</span>
  </a>

  <a className="venice-api-card" href="/guides/integrations/ai-agents#coding-agents">
    <span className="venice-api-card-name">코딩 에이전트</span>
    <p className="venice-api-card-desc">비공개 코딩 워크플로를 위해 Venice 모델과 함께 Claude Code, Cursor, Codex CLI를 사용하세요.</p>
    <span className="venice-api-card-action">통합 보기 →</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">chat, image, video, audio, embeddings를 MCP 도구 또는 런타임 스킬로 노출합니다.</p>
    <span className="venice-api-card-action">통합 보기 →</span>
  </a>
</div>

<p className="venice-apis-extras">
  <a className="venice-apis-extras-cta" href="/guides/integrations/ai-agents">AI 에이전트 허브 탐색 →</a>
</p>

<div className="venice-section-header">
  <p className="venice-section-eyebrow">모델</p>
  <h2 className="venice-section-title">인기 모델</h2>
  <p className="venice-section-subtitle">Venice에서 가장 많이 사용되는 모델 중 일부. ID를 `model` 매개변수로 사용하세요.</p>
</div>

<div className="venice-models-grid">
  <a className="venice-model-card" href="/models/overview">
    <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">오픈 웨이트 프론티어 추론. 프론티어 가격의 일부로 강력한 긴 컨텍스트 및 도구 사용.</p>

    <div className="venice-model-card-stats">
      <span>256K context</span>
      <span>\$0.85 / \$4.66 per 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="/models/overview">
    <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">일관성을 유지해야 하는 코딩, 계획 및 장기 에이전트를 위한 최고의 모델.</p>

    <div className="venice-model-card-stats">
      <span>1M context</span>
      <span>\$6.00 / \$30.00 per 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="/models/overview">
    <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">1M 컨텍스트를 갖춘 프론티어 일반 지능. 채팅, RAG 및 다단계 추론을 위한 강력한 기본값.</p>

    <div className="venice-model-card-stats">
      <span>1M context</span>
      <span>\$6.25 / \$37.50 per 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="/models/overview">
  <span className="venice-models-cta-left">
    <span className="venice-models-cta-count">250+ 모델</span>
    <span className="venice-models-cta-sub">텍스트, 이미지, 오디오, 비디오</span>
  </span>

  <span className="venice-models-cta-action">카탈로그 둘러보기 →</span>
</a>

<div className="venice-section-header">
  <p className="venice-section-eyebrow">도구</p>
  <h2 className="venice-section-title">채팅 모델용 내장 도구</h2>
  <p className="venice-section-subtitle">웹 검색을 켜고, 파일을 첨부하거나, `venice_parameters` 또는 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="웹 검색 코드 샘플">
  `enable_web_search`를 통해 모든 텍스트 모델에 인용이 포함된 실시간 웹 검색을 추가하세요.

  <CodeGroup>
    ```bash Curl theme={"dark"}
    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={"dark"}
    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={"dark"}
    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={"dark"}
    # 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="웹 스크래핑 코드 샘플">
  `enable_web_scraping: true`를 설정하면 모델이 답변하기 전에 사용자 메시지의 모든 URL을 가져와 읽습니다.

  <CodeGroup>
    ```bash Curl theme={"dark"}
    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={"dark"}
    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={"dark"}
    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="파일 입력 코드 샘플">
  PDF, Office 문서, 코드, 텍스트 파일(최대 25MB)을 채팅 요청에 직접 첨부하세요. 전체 형식 목록은 [파일 입력 가이드](/guides/features/file-inputs)를 참조하세요.

  <CodeGroup>
    ```bash Curl theme={"dark"}
    # 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={"dark"}
    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={"dark"}
    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="Crypto RPC 코드 샘플">
  Venice 키 또는 x402 지갑으로 11개의 지원 체인에서 JSON-RPC 2.0 호출을 프록시합니다. 체인, 메서드 및 크레딧 등급은 [Crypto RPC 참조](/api-reference/endpoint/crypto/rpc)를 참조하세요.

  <CodeGroup>
    ```bash Curl theme={"dark"}
    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={"dark"}
    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={"dark"}
    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">가격</p>
    <h2 className="venice-section-title">충전, 스테이킹 또는 요청당 결제</h2>
    <p className="venice-section-subtitle">크레딧으로 계정을 충전하거나, 일일 할당량을 위해 DIEM을 스테이킹하거나, Base의 USDC로 계정을 완전히 건너뛰세요.</p>
  </div>

  <div className="venice-pricing-grid">
    <div className="venice-pricing-card">
      <div className="venice-pricing-card-head">
        <span className="venice-pricing-card-name">크레딧</span>
        <span className="venice-pricing-card-badge">USD 또는 Crypto</span>
      </div>

      <p className="venice-pricing-card-desc">USD 또는 크립토로 종량제 결제. 크레딧은 만료되지 않으며 모든 엔드포인트에서 작동합니다.</p>
      <a className="venice-pricing-card-cta" href="https://venice.ai/settings/billing">크레딧 구매</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">일일 할당량</span>
      </div>

      <p className="venice-pricing-card-desc">DIEM 또는 VVV를 한 번 스테이킹하고 매일 고정 추론 할당량을 받으세요. 호출당 요금이 없습니다.</p>
      <a className="venice-pricing-card-cta" href="https://venice.ai/token">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">Base의 USDC</span>
      </div>

      <p className="venice-pricing-card-desc">Base의 모든 지갑에서 USDC로 요청당 지불하세요. 계정이나 API 키 없이 에이전트를 위해 구축되었습니다.</p>
      <a className="venice-pricing-card-cta" href="/guides/integrations/x402-venice-api">x402 가이드 읽기</a>
    </div>
  </div>
</div>

질문이나 피드백이 있으신가요? [Discord](https://discord.gg/askvenice)에서 만나요.
