---
title: Claude API 快速上手：几分钟内从密钥到首次调用
description: "Claude API 快速上手指南：创建一把密钥，把任意兼容 Anthropic 的客户端指向 router.apitoken.sale，然后用 curl、Python、TypeScript 或你的 IDE 发出第一个 /v1/messages 请求。"
url: https://apitoken.sale/zh/docs/learn/claude-api-quick-setup
language: zh-CN
---

# Claude API 快速上手：完成配置并发出第一次调用

这份 Claude API 快速上手指南带你在几分钟内从新账户走到一次完成的 /v1/messages 调用。你只需要三样东西：一把 sk-pool 密钥、router.apitoken.sale 这个 Base URL，以及两个 HTTP 请求头。之后的一切都是标准的 Anthropic Messages API——同一份代码不做任何改动就能跑在官方端点上。

## Claude API 快速上手到底需要什么

一套能跑通的 Claude API 配置，既不是装一个 SDK，也不是一周的接入流程——它只是一个带两个请求头的 HTTP POST。注册、生成密钥、发出 messages 请求：第一个 2xx 通常比你读这页时泡的那杯咖啡到得还快。该端点讲的是原汁原味的 Anthropic Messages 协议，也就是说，每一个为 Claude 写的教程、SDK 和编程 agent 天生就知道怎么跟它对话。

- 一个免费账户——无需审核、没有等待名单，也不要求 Anthropic 账户。
- 一把 API 密钥（形如 sk-pool-…），通用于所有受支持的模型，包括 Claude、GPT、Gemini 和 Kimi。
- Base URL https://router.apitoken.sale——新集成的唯一端点。
- 每个请求带两个请求头：x-api-key 放你的密钥，以及 anthropic-version: 2023-06-01。

## 创建密钥并选定端点

1. 用 Google、GitHub 或邮箱注册，然后打开控制台——没有审核队列。
2. 生成密钥。它只显示一次；把它存进环境变量，不要写进源代码。
3. 把客户端的 Base URL 设为 https://router.apitoken.sale，并确认它向 POST /v1/messages 发送请求。

```
Base URL:  https://router.apitoken.sale
Endpoint:  POST /v1/messages
Headers:   x-api-key: sk-pool-•••
           anthropic-version: 2023-06-01
```

密钥在下一次请求时即刻生效——没有激活延迟。如果余额为空，先充值：支持任意整数美元金额，所以充一美元就足够把整条链路端到端验证一遍。

## 用 curl 发出第一个请求

在把任何东西接进应用之前，先用最小的调用验证通路。max_tokens 在 Messages API 上是必填的——漏掉它是首次调用最常见的错误。

```
curl https://router.apitoken.sale/v1/messages \
  -H "x-api-key: sk-pool-•••" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-opus-4-8",
    "max_tokens": 1024,
    "messages": [{"role":"user","content":"Hello"}]
  }'
```

成功的响应是一个 JSON 对象，它的 content 字段是一个块数组——纯文本回复就是一个 type 为 text 的块。配置阶段每次调用都值得读两个字段：stop_reason 告诉你模型是正常结束（end_turn）还是撞上了你设的 max_tokens 上限；usage 则报告本次计费的确切 input_tokens 和 output_tokens。如果 content 返回为空且 stop_reason: max_tokens，应该调高上限，而不是原样重试同一个请求。

## 用 Python 或 TypeScript 发同一个调用

官方 Anthropic SDK 接受自定义 Base URL，所以从 curl 迁移到真正的代码只是覆盖一个参数的事。模型 ID、消息结构、系统提示词和工具调用的行为与直连 api.anthropic.com 时完全一致。

```
from anthropic import Anthropic

client = Anthropic(
    base_url="https://router.apitoken.sale",
    api_key="sk-pool-•••",
)
msg = client.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello"}],
)
print(msg.content[0].text)
```

```
import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({
  baseURL: "https://router.apitoken.sale",
  apiKey: "sk-pool-•••",
});
const msg = await client.messages.create({
  model: "claude-opus-4-8",
  max_tokens: 1024,
  messages: [{ role: "user", content: "Hello" }],
});
```

[完整的 SDK 走查：anthropic-sdk-base-url](/docs/learn/anthropic-sdk-base-url)

## 做 UI 之前先打开流式输出

凡是有人盯着等的东西——聊天、代码补全、带可见进度的 agent 循环——都应该走流式。在同一个请求体里加上 "stream": true，响应就变成 Server-Sent Events：一个 message_start 信封、一串携带文本片段的 content_block_delta 事件，最后是一个 message_stop。客户端负责把片段拼起来；请求的其他部分完全不变。

```
curl -N https://router.apitoken.sale/v1/messages \
  -H "x-api-key: sk-pool-•••" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-opus-4-8",
    "max_tokens": 1024,
    "stream": true,
    "messages": [{"role":"user","content":"Count to five."}]
  }'
```

> 流式有两个坑：不加 -N（或 HTTP 客户端的无缓冲模式）时，curl 会把整个 SSE 响应体缓冲起来，看起来和非流式调用一模一样；最终的 usage 统计是在结尾的 message_delta 事件里到达的，而不是在 JSON 响应体里——如果你按请求统计花费，要去那里读。

## 把 IDE 或编程 agent 指向同一把密钥

因为端点在协议上完全一致，任何带 Anthropic 供应商设置的工具都只要改两个字段。以 Cursor 为例：Settings → Models → Anthropic API，填入 Base URL、粘贴密钥，然后选一个当前的模型 ID。

```
# Cursor → Settings → Models → Anthropic API
Base URL : https://router.apitoken.sale
API key  : sk-pool-•••
Model    : claude-opus-4-8
```

同样的两字段改动也适用于 Cline、Continue 这类 VS Code 扩展，以及从环境变量读取 ANTHROPIC_BASE_URL 和 ANTHROPIC_API_KEY 的终端 agent。一把密钥、一份预付余额，覆盖所有工具。

[Cursor 专用指南：claude-api-key-for-cursor](/docs/learn/claude-api-key-for-cursor)

[当前模型阵容与各模型定价](/models)

## 首次调用报错？逐条解码

几乎所有失败的首次调用都落在这四种状态码里。响应体也要读——错误以 Anthropic 错误信封返回，message 里会点名出问题的字段。网关限制会加上 error.details.error_code documented_limitation 或 unsupported_parameter。

| 状态码 | 含义 | 解决办法 |
| --- | --- | --- |
| 400 Bad Request | 请求体有误、模型未知，或本 endpoint 无法兑现的字段（details.error_code documented_limitation / unsupported_parameter） | 设置 max_tokens；使用当前的模型 ID，例如 claude-opus-4-8；去掉或改写点名的字段 |
| 401 Unauthorized | x-api-key 缺失或错误，或请求发到了错误的 Base URL | 重新确认密钥已完整粘贴，且 Base URL 是 https://router.apitoken.sale |
| 402 billing_error | 预付余额不足以支付本次请求——error.type 是 billing_error，不是 invalid_request_error | 按任意整数美元金额充值后重试；不要把 402 当成 429 |
| 429 Too Many Requests | 触发了并发或速率上限 | 遵守 Retry-After 请求头并降低并发 |

## 常见问题

### Claude API 快速上手该用哪个 Base URL？

在任意兼容 Anthropic 的工具中使用 https://router.apitoken.sale，并向 /v1/messages 发送请求。仍在旧主机 https://api.apitoken.sale 上的既有集成继续可用——对新接入来说，统一 router 是推荐端点。

### Claude API 需要哪个鉴权请求头？

发送携带密钥的 x-api-key 和 anthropic-version: 2023-06-01，与官方 Anthropic API 完全一致。这个入口不要用 Authorization: Bearer——那个请求头属于 OpenAI 兼容通道。

### 需要 Anthropic 账户或绑定的信用卡吗？

不需要 Anthropic 账户——用 Google、GitHub 或邮箱注册即可获得自己的 sk-pool 密钥。余额是预付制：按任意整数美元金额充值，只在请求实际运行时扣费。

### 验证配置跑通的最便宜方式是什么？

充最小的整数美元金额，发一个 max_tokens: 1 的请求——一次成功的 2xx 就在一次调用里同时证明了鉴权、端点和计费。通过 Google 或 GitHub 注册的新账户还自带 $5 平台奖励余额，足够完全覆盖这次测试。

### 为什么密钥有效，第一次调用还是返回 400？

几乎都是缺了 max_tokens 字段，或用了未启用的模型 ID——Messages API 会拒绝没有 max_tokens 的请求。使用当前的模型 ID（例如 claude-opus-4-8）并设置明确的 token 上限。

### 同一把密钥能用于流式输出和工具调用吗？

可以。流式只是在同一个请求上加 "stream": true 标志，工具调用遵循标准的 Anthropic schema——不需要单独的密钥、套餐或端点。

---
Get a key: https://apitoken.sale/register
More guides: https://apitoken.sale/zh/docs/learn
