cicora.ai
API 規格用戶端程式碼

SDK 與 HTTP 用戶端

OpenAI 風格與 Messages 用戶端應使用不同的基底 URL;兩者以同一規格為目標,但路徑組合方式不同。

整合參考:請從帳戶 API 設定及適用於您環境的模型目錄中選擇參數與可用功能。

選擇用戶端形式

OpenAI 風格的 JavaScript、Python 與原始 curl 會接收 https://cicora.ai/api/v1 並附加路由,而不再加入第二個 /v1。

Messages SDK 與 Claude Code 會接收閘道根目錄 https://cicora.ai/api 因為它們會自行附加 /v1/messages。下方範例會顯示這兩種形式。

JavaScript OpenAI 風格用戶端
typescript
import OpenAI from "openai";

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

const completion = await client.chat.completions.create({
  model: "openai/gpt-5.6-sol",
  messages: [{ role: "user", content: "Hello" }],
});
Python OpenAI 風格用戶端
python
from openai import OpenAI
import os

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

completion = client.chat.completions.create(
    model="openai/gpt-5.6-sol",
    messages=[{"role": "user", "content": "Hello"}],
)
Python Messages 用戶端
python
from anthropic import Anthropic
import os

client = Anthropic(
    base_url="https://cicora.ai/api",
    auth_token=os.environ["CICORA_API_KEY"],
)

message = client.messages.create(
    model="anthropic/claude-sonnet-5",
    max_tokens=500,
    messages=[{"role": "user", "content": "Hello"}],
)
JavaScript Messages 用戶端
typescript
import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({
  baseURL: "https://cicora.ai/api",
  authToken: process.env.CICORA_API_KEY,
});

const message = await client.messages.create({
  model: "anthropic/claude-sonnet-5",
  max_tokens: 500,
  messages: [{ role: "user", content: "Hello" }],
});
Claude Code Messages 閘道
bash
export ANTHROPIC_BASE_URL=https://cicora.ai/api
export ANTHROPIC_AUTH_TOKEN="$CICORA_API_KEY"
export ANTHROPIC_API_KEY=""

# The Messages client appends /v1/messages to the gateway root.
# Clear a preexisting API key so it cannot conflict with the Bearer token.

整合邊界

  • 每個處理程序或安全應用程式邊界只建立一個用戶端。
  • 從呼叫工作流程傳入 timeout 與 AbortSignal。
  • 向呼叫端程式碼回傳 HTTP 狀態與結構化錯誤本文。

版本與更新

請勿將 OpenAI 風格基底 URL 套用至 Messages SDK,也不要在其閘道根目錄手動附加 /v1。

參照資料變更後,請更新用戶端,並在發布前透過 models 驗證主要路徑。