复制就能跑

接入案例

先有 Key 和余额(或月卡),再抄 JSON。PHP / Python / JS / Java / Go / Rust 都带了 tier=economy。

方法 / 地址

POST https://v1.apizero.cn/v1/chat/completions

请求头

Authorization: Bearer <KEY>

再加 Content-Type: application/json

读回包

choices[0].message.content

扣费看 usage.prompt_tokens / completion_tokens

JSON 请求体(先抄这个)

余额为 0 时付费模型过不去

先到充值留一点余额。Key 填到脚本开头的 KEY,不要提交仓库,也不要写进前端。

所有语言都是把下面这段 JSON POST 出去。不要开 stream:现在不会按 SSE 往外推。

请求 JSON

{
  "model": "deepseek-v4-flash-0731",
  "tier": "economy",
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful assistant."
    },
    {
      "role": "user",
      "content": "用一句话说明你是谁"
    }
  ]
}

PHP / Python / JS / Java / Go / Rust

下面每段都是完整可跑的最小例子:开头填 KEY,Cursor / VS Code 右键就能打到本站网关。接到你自己的服务时整段搬走,只改 KEY / MODEL。Python 用标准库,不强制装 openai;官方 SDK 的 Base URL 填 https://v1.apizero.cn/v1。Java 11+ 只用 JDK 自带 HttpClient。Rust 依赖写在注释里。

# 把 KEY 换成控制台密钥,整段粘到终端就能打到本站网关。
# https://apizero.cn/account/keys
KEY="这里换成你的Key"

curl https://v1.apizero.cn/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $KEY" \
  -d '{
      "model": "deepseek-v4-flash-0731",
      "tier": "economy",
      "messages": [
        {
          "role": "system",
          "content": "You are a helpful assistant."
        },
        {
          "role": "user",
          "content": "用一句话说明你是谁"
        }
      ]
    }'

成功回包读哪几个字段

HTTP 200 时正文是 JSON。业务内容在 choices[0].message.content。后面扣费只看 usage 里的两段 token,不是看你写了多少汉字。

响应 JSON(示意)

{
  "id": "chatcmpl-demo",
  "object": "chat.completion",
  "model": "deepseek-v4-flash-0731",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "我是由极数本源接入的助手。"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 24,
    "completion_tokens": 18,
    "total_tokens": 42
  }
}

接到自己的网站

OpenAI SDK 也可以

pip install openai / npm i openai 之后,服务端填 KEY,base_url / baseURL 填 https://v1.apizero.cn/v1,model 仍填 deepseek-v4-flash-0731。不要把 Key 写进前端。

页面不要直连 v1.apizero.cn,否则会跨域,Key 也会暴露。用户消息由你的接口收,服务器用 Key 再转出去。

// 放到你自己的服务端(Next.js Route Handler / Express 同理)。
// 浏览器 → 你的接口 → 本站网关。不要把 KEY 写进前端。
import OpenAI from "openai";

const KEY = ""; // https://apizero.cn/account/keys
const client = new OpenAI({
  apiKey: KEY,
  baseURL: "https://v1.apizero.cn/v1",
});

export async function POST(req) {
  if (!KEY.trim()) throw new Error("先到 https://apizero.cn/account/keys 建一把 Key,填到上面的 KEY");
  const { messages } = await req.json();
  const resp = await client.chat.completions.create({
    model: "deepseek-v4-flash-0731",
    messages,
    extra_body: { tier: "economy" },
  });
  return Response.json({
    text: resp.choices[0].message.content,
    usage: resp.usage,
  });
}

第三方客户端 / App

已经兼容 OpenAI 的桌面端、Bot、知识库,改三处:API Base 填 https://v1.apizero.cn/v1(有的软件要完整 https://v1.apizero.cn/v1/chat/completions);Key 用控制台那一把;Model 填目录里的 ID。Open WebUI、LobeChat、Chatbox、Continue 都是这个改法。手机 App 同样把请求放在你的服务端,不要把 Key 写死在安装包。