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

# 接入指南

> 了解如何快速接入 HaiToken 大模型网关，支持 OpenAI 和 Claude 接口

HaiToken 大模型网关兼容 OpenAI 和 Anthropic Claude 主流 API 协议，你只需三步即可完成接入：获取 API Key、调用 API、接入 AI 工具。

## 第一步：获取 API Key

1. 注册并登录 [HaiToken 控制台](https://haitoken.ai)
2. 进入左侧菜单 **令牌管理**
3. 点击 **创建 API Key**，填写名称后生成密钥
4. 复制并妥善保存生成的 API Key（仅创建时可见一次）

<Warning>
  请妥善保管 API Key，不要在客户端代码或公开仓库中暴露密钥。
</Warning>

## 第二步：调用 API

HaiToken 提供两种接口格式，你可以根据使用的模型选择对应的接入方式。

### OpenAI 格式

适用于 OpenAI 系列模型，兼容 `POST /v1/chat/completions` 协议。

<CodeGroup>
  ```python Python theme={null}
  import requests

  url = "https://api.haitoken.ai/v1/chat/completions"
  headers = {
      "Authorization": "Bearer YOUR_API_KEY",
      "Content-Type": "application/json"
  }
  data = {
      "model": "gpt-4o",
      "messages": [
          {"role": "user", "content": "你好，请介绍一下自己"}
      ]
  }

  response = requests.post(url, json=data, headers=headers)
  print(response.json())
  ```

  ```java Java theme={null}
  import java.net.URI;
  import java.net.http.HttpClient;
  import java.net.http.HttpRequest;
  import java.net.http.HttpResponse;
  import java.net.http.HttpRequest.BodyPublishers;

  String apiKey = "YOUR_API_KEY";
  String body = """
      {
          "model": "gpt-4o",
          "messages": [
              {"role": "user", "content": "你好，请介绍一下自己"}
          ]
      }
      """;

  HttpRequest request = HttpRequest.newBuilder()
      .uri(URI.create("https://api.haitoken.ai/v1/chat/completions"))
      .header("Authorization", "Bearer " + apiKey)
      .header("Content-Type", "application/json")
      .POST(BodyPublishers.ofString(body))
      .build();

  HttpClient client = HttpClient.newHttpClient();
  HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
  System.out.println(response.body());
  ```

  ```javascript Node.js theme={null}
  const response = await fetch("https://api.haitoken.ai/v1/chat/completions", {
    method: "POST",
    headers: {
      "Authorization": "Bearer YOUR_API_KEY",
      "Content-Type": "application/json"
    },
    body: JSON.stringify({
      model: "gpt-4o",
      messages: [
        { role: "user", content: "你好，请介绍一下自己" }
      ]
    })
  });

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

  ```curl cURL theme={null}
  curl -X POST "https://api.haitoken.ai/v1/chat/completions" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "gpt-4o",
      "messages": [
        {"role": "user", "content": "你好，请介绍一下自己"}
      ]
    }'
  ```
</CodeGroup>

### Claude 格式

适用于 Anthropic Claude 系列模型，兼容 `POST /v1/messages` 协议。

<Note>
  调用 Claude 格式接口时，需要在请求头中额外携带 `anthropic-version`，推荐值为 `2023-06-01`。
</Note>

<CodeGroup>
  ```python Python theme={null}
  import requests

  url = "https://api.haitoken.ai/v1/messages"
  headers = {
      "Authorization": "Bearer YOUR_API_KEY",
      "Content-Type": "application/json",
      "anthropic-version": "2023-06-01"
  }
  data = {
      "model": "claude-sonnet-4-0",
      "max_tokens": 1024,
      "messages": [
          {"role": "user", "content": "你好，请介绍一下自己"}
      ]
  }

  response = requests.post(url, json=data, headers=headers)
  print(response.json())
  ```

  ```java Java theme={null}
  import java.net.URI;
  import java.net.http.HttpClient;
  import java.net.http.HttpRequest;
  import java.net.http.HttpResponse;
  import java.net.http.HttpRequest.BodyPublishers;

  String apiKey = "YOUR_API_KEY";
  String body = """
      {
          "model": "claude-sonnet-4-0",
          "max_tokens": 1024,
          "messages": [
              {"role": "user", "content": "你好，请介绍一下自己"}
          ]
      }
      """;

  HttpRequest request = HttpRequest.newBuilder()
      .uri(URI.create("https://api.haitoken.ai/v1/messages"))
      .header("Authorization", "Bearer " + apiKey)
      .header("Content-Type", "application/json")
      .header("anthropic-version", "2023-06-01")
      .POST(BodyPublishers.ofString(body))
      .build();

  HttpClient client = HttpClient.newHttpClient();
  HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
  System.out.println(response.body());
  ```

  ```javascript Node.js theme={null}
  const response = await fetch("https://api.haitoken.ai/v1/messages", {
    method: "POST",
    headers: {
      "Authorization": "Bearer YOUR_API_KEY",
      "Content-Type": "application/json",
      "anthropic-version": "2023-06-01"
    },
    body: JSON.stringify({
      model: "claude-sonnet-4-0",
      max_tokens: 1024,
      messages: [
        { role: "user", content: "你好，请介绍一下自己" }
      ]
    })
  });

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

  ```curl cURL theme={null}
  curl -X POST "https://api.haitoken.ai/v1/messages" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -H "anthropic-version: 2023-06-01" \
    -d '{
      "model": "claude-sonnet-4-0",
      "max_tokens": 1024,
      "messages": [
        {"role": "user", "content": "你好，请介绍一下自己"}
      ]
    }'
  ```
</CodeGroup>

## 第三步：接入常用 AI 工具

获取 API Key 并验证 API 可用后，你可以将 HaiToken 网关接入常用 AI 编程工具。

### Cursor

1. 打开 Cursor，进入 **Settings** > **Models**
2. 在 **OpenAI API Key** 处填入你的 API Key
3. 将 **OpenAI Base URL** 设置为 `https://api.haitoken.ai/v1`
4. 保存后即可在模型列表中选择支持的模型

### Claude Code

1. 在终端中设置环境变量：

```bash theme={null}
export ANTHROPIC_API_KEY="YOUR_API_KEY"
export ANTHROPIC_BASE_URL="https://api.haitoken.ai"
```

2. 启动 Claude Code 即可使用。

### Open Code

1. 在 OpenCode TUI 中直接通过菜单添加haitoken

启动 OpenCode TUI 界面
输入 /connect 命令
在供应商列表中选择 「Other」（自定义端点）
根据提示填写：
Base URL：[https://api.haitoken.ai/v1](https://api.haitoken.ai/v1)
API Key：你的 haitoken API Key
保存后，输入 /models 切换到新添加的模型即可

2. 在项目根目录的 `opencode.json` 中配置 provider 和 Base URL：

```json theme={null}
"provider": {
    "haitoken": {
      "models": {
        "deepseek-v4-flash": {
          "name": "deepseek-v4-flash"
        },
        "deepseek-v4-pro": {
          "name": "deepseek-v4-pro"
        },
      },
      "name": "haitoken",
      "npm": "@ai-sdk/openai-compatible",
      "options": {
        "baseURL": "https://api.haitoken.ai/v1"
      }
    }
  }
```

<Tip>
  更多 AI 工具的接入方式，请参考 [AI 工具接入](/docs/zh/tools/claude-code) 章节。
</Tip>

## 下一步

* 查看 [API 文档](/docs/zh/api-reference/chat/openai-format) 了解完整的接口参数
* 查看 [模型列表](/docs/zh/api-reference/models/list-models) 了解可用的模型
* 查看 [频率限制](/docs/zh/others/rate-limits) 了解 API 调用限制
