API 概覽
了解 Claude API 可用的端點、驗證標頭、用戶端 SDK、分頁、速率限制以及雲端平台存取選項。
Claude API 是位於 https://api.anthropic.com 的 RESTful API,提供對 Claude 模型和 Claude Managed Agents 的程式化存取。
先決條件
若要使用 Claude API,您需要:
- 一個 Claude Console 帳戶
- 一個 API 金鑰,或一個已設定的 Workload Identity Federation 規則
如需逐步設定說明,請參閱開始使用。
可用的 API
Claude API 包含以下 API:
- Messages API:向 Claude 傳送訊息以進行對話式互動(
POST /v1/messages) - Message Batches API:以非同步方式處理大量 Messages 請求,成本降低 50%(
POST /v1/messages/batches) - Token Counting API:在傳送前計算訊息中的 token 數量,以管理成本和速率限制(
POST /v1/messages/count_tokens) - Models API:列出可用的 Claude 模型及其詳細資訊(
GET /v1/models) - Files API:上傳和管理檔案,以便在多個 API 呼叫中使用(
POST /v1/files、GET /v1/files) - Skills API:建立和管理自訂代理技能(
POST /v1/skills、GET /v1/skills)
以下 API 處於 beta 階段:
- Agents API:為 Claude Managed Agents 定義可重複使用、具版本控制的代理設定(
POST /v1/agents、GET /v1/agents) - Sessions API:在受管理的雲端沙箱中執行具狀態的代理工作階段(
POST /v1/sessions、GET /v1/sessions/{id}/events/stream) - Environments API:為代理工作階段設定沙箱範本(
POST /v1/environments、GET /v1/environments)
如需包含所有端點、參數和回應結構描述的完整 API 參考,請瀏覽導覽列中列出的 API 參考頁面。若要存取 beta 功能,請參閱 Beta 標頭。
驗證
如需各驗證方法的詳細資訊以及何時使用,請參閱驗證。對 Claude API 的請求包含以下標頭:
| 標頭 | 值 | 必要 |
|---|---|---|
Authorization | Bearer <token>,其中 <token> 是您的 API 金鑰,或透過 Workload Identity Federation 從 POST /v1/oauth/token 取得的短期存取權杖 | 是,除非已設定 x-api-key |
x-api-key | 您從 Console 取得的 API 金鑰。Authorization 的舊版替代方式,仍受支援 | 否 |
anthropic-workspace-id | 請求執行所在的工作區 ID(例如 wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ)。請參閱選擇工作區。 | 使用多工作區 API 金鑰時為必要。其他 API 金鑰則為選用。為單一工作區建立的金鑰在您省略此標頭時,會在該工作區中執行。不適用於 Workload Identity Federation 權杖,這類權杖會在權杖交換時選擇工作區。 |
anthropic-version | API 版本(例如 2023-06-01) | 是 |
content-type | application/json | 是 |
如果您使用用戶端 SDK,SDK 會自動傳送驗證、版本和 content-type 標頭;當您的金鑰需要時,您需自行傳遞 anthropic-workspace-id。如需 API 版本控制的詳細資訊,請參閱 API 版本。
透過雲端平台存取 Claude 時,驗證會與雲端供應商的 IAM 系統整合。請參閱平台專屬文件,以了解支援的憑證類型、必要標頭和驗證選項。
取得 API 金鑰
API 透過網頁版 Console 提供。您可以使用 playground 在瀏覽器中試用 API,然後在帳戶設定中產生 API 金鑰(請參閱取得您的 Claude API 金鑰)。您在建立每個金鑰時選擇其類型(請參閱金鑰類型)及其到期時間。使用工作區來區隔環境,並依使用案例控制支出。
用戶端 SDK
Anthropic 提供官方 SDK,透過處理驗證、請求格式化、錯誤處理等來簡化 API 整合。
優點:
- 自動標頭管理(驗證、
anthropic-version、content-type) - 型別安全的請求和回應處理
- 內建重試邏輯和錯誤處理
- 串流支援
- 請求逾時和連線管理
如需用戶端 SDK 清單,請參閱用戶端 SDK。
Claude API 與雲端平台的比較
Claude 可透過直接的 Claude API 以及雲端平台使用。請根據您的基礎設施、功能可用性、合規要求和定價偏好進行選擇。
Claude API
- 直接存取最新的模型和功能
- Anthropic 計費和支援
- 最適合: 新整合、完整功能存取、與 Anthropic 的直接關係
雲端平台 API
透過 AWS、Google Cloud 或 Microsoft Azure 存取 Claude:
- 整合雲端供應商的計費和 IAM
- 功能可用性因平台而異: Anthropic 營運的平台包括 Claude Platform on AWS 和 Microsoft Foundry;合作夥伴營運的平台包括 Amazon Bedrock 和 Google Cloud。請參閱各平台的頁面以了解功能可用性和時程。
- 最適合: 現有的雲端承諾、特定合規要求、整合的雲端計費
| 平台 | 供應商 | 文件 |
|---|---|---|
| Agent Platform | Google Cloud | Google Cloud 上的 Claude |
| Amazon Bedrock | AWS | Amazon Bedrock 中的 Claude |
| Claude Platform on AWS | AWS(Anthropic 營運) | Claude Platform on AWS |
| Microsoft Foundry | Microsoft Azure(Anthropic 營運) | Microsoft Foundry 中的 Claude |
請求和回應格式
請求大小限制
| 端點 | 最大請求大小 |
|---|---|
| Messages、Token Counting | 32 MB |
| Message Batches API | 256 MB |
| Files API | 500 MB |
| Sessions、Agents、Environments | 32 MB |
如果您超過這些限制,將會收到 413 request_too_large 錯誤。
回應標頭
Claude API 在其回應中包含以下標頭:
| 標頭 | 說明 |
|---|---|
request-id | 請求的全域唯一識別碼,例如 req_018EeWyXxfu5pfWkrYcMdjWG。當您就特定請求聯絡支援時請附上它。請參閱請求 ID。 |
anthropic-organization-id | 請求中使用的 API 金鑰或存取權杖所屬組織的 ID。 |
anthropic-workspace-id | API 金鑰或存取權杖解析到的工作區的 wrkspc_ 前綴 ID,例如 wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ,包括當該工作區是您組織的預設工作區時。當憑證未解析到工作區時(例如在 Admin API 請求上)或請求在驗證完成前失敗時則不存在。請參閱識別 API 回應背後的工作區。 |
如需速率限制標頭,請參閱速率限制中的回應標頭。如需使用各 SDK 依名稱讀取回應標頭的範例,請參閱識別 API 回應背後的工作區。
分頁
列表端點以分頁方式傳回結果。大多數較新的列表端點使用本節所述的 page 和 next_page 游標方案。有些使用不同的方案;請參閱本節結尾的備註。使用 limit 查詢參數來控制頁面大小,並使用 page 查詢參數來擷取相鄰頁面。每個回應都包含一個 data 陣列以及用於在頁面之間導覽的游標欄位。
| 名稱 | 位置 | 說明 |
|---|---|---|
limit | 查詢參數 | 每頁傳回的項目數上限。 |
page | 查詢參數 | 來自先前回應的不透明游標。在此傳遞 next_page 或 prev_page 值以擷取相鄰頁面。 |
order | 查詢參數 | 結果的排序方向(asc 或 desc),適用於支援排序的列表端點。page 游標僅在與其建立時所用的 order 相同時才有效。 |
next_page | 回應欄位 | 下一頁的游標,如果沒有更多結果則為 null。 |
prev_page | 回應欄位 | 在支援向後分頁的端點上(目前為 GET /v1/sessions)上一頁的游標,如果您在第一頁則為 null。其他列表端點會省略此欄位。 |
若要返回上一頁,請將 prev_page 作為 page 參數傳遞。當您在第一頁時,prev_page 為 null。並非所有列表端點都支援 prev_page。只有 GET /v1/sessions 會傳回 prev_page;在不支援向後分頁的列表端點上,該欄位會從回應中缺失,而非為 null。如需請求逐步說明,請參閱列出工作階段。
SDK 提供自動分頁的迭代器,會為您追蹤 next_page。例如,for session in client.beta.sessions.list() 會逐一走訪每個工作階段。SDK 自動分頁僅支援向前;若要返回上一頁,請從回應中讀取 prev_page,並自行將其作為 page 參數傳回。詳情請參閱用戶端 SDK。
速率限制和可用性
速率限制
API 強制執行速率限制和支出限制,以防止濫用並管理容量。限制依使用層級組織;您的組織會自動被置於某個層級,並可隨時間移至更高層級。每個層級都有:
- 支出限制:API 使用的每月最高成本
- 速率限制:每分鐘請求數上限(RPM)和每分鐘 token 數上限(TPM)
您可以在 Console 的速率限制頁面查看您的速率限制,並在計費頁面查看您的支出限制。若要提高速率限制或提高每月支出上限,請使用速率限制頁面上的請求提高速率限制。
如需有關限制、層級以及用於速率限制的 token bucket 演算法的詳細資訊,請參閱速率限制。
可用性
Claude API 在全球許多國家和地區提供。請查看支援地區頁面以確認您所在位置的可用性。
後續步驟
直接模型互動的完整 API 規格
Agents、Sessions 和 Environments 端點
Python、TypeScript、C#、Go、Java、PHP 和 Ruby
使用層級、請求更高限制以及 token bucket 演算法
Was this page helpful?