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 的請求包含下列標頭:
| 標頭 | 值 | 是否必要 |
|---|---|---|
x-api-key | 您從 Console 取得的 API 金鑰 | x-api-key 或 Authorization 其中之一 |
Authorization | Bearer <token>,其中 <token> 是透過 Workload Identity Federation 從 POST /v1/oauth/token 取得的短效存取權杖 | x-api-key 或 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 金鑰。建立金鑰時,您可以選擇每組金鑰的類型(請參閱金鑰類型)及其到期時間。使用工作區來區隔環境,並依使用情境控制支出。
用戶端 SDK
Anthropic 提供官方 SDK,透過處理驗證、請求格式化、錯誤處理等工作來簡化 API 整合。
優點:
- 自動管理標頭(
x-api-key、anthropic-version、content-type) - 型別安全的請求與回應處理
- 內建重試邏輯與錯誤處理
- 支援「streaming」(串流)
- 請求逾時與連線管理
如需用戶端 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 金鑰或存取權杖所解析到之工作區的 ID,以 wrkspc_ 為前綴,例如 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 的自動分頁迭代器。在 Python 與 TypeScript 中,您可以直接迭代列表結果來取得它。其他 SDK 則透過獨立的方法提供此迭代器。SDK 的自動分頁僅支援向前;若要返回上一頁,請自行從回應中讀取 prev_page,並將其作為 page 參數傳回。如需各語言的詳細資訊,請參閱用戶端 SDK。
速率限制與可用性
速率限制
API 會強制執行「rate limit」(速率限制)與支出限制,以防止濫用並管理容量。限制依使用層級組織;您的組織會自動被分配到某個層級,並可隨時間升級至更高層級。每個層級都有:
- 支出限制:API 使用的每月最高費用
- 速率限制:每分鐘最大請求數(RPM)與每分鐘最大 token 數(TPM)
您可以在 Console 的速率限制頁面檢視您的速率限制,並在帳單頁面檢視您的支出限制。如需更高的速率限制或更高的每月支出上限,請使用速率限制頁面上的 Request rate limit increase。
如需有關限制、層級以及速率限制所使用之 token bucket 演算法的詳細資訊,請參閱速率限制。
可用性
Claude API 在全球許多國家與地區提供服務。請查看支援地區頁面以確認您所在地點的可用性。
後續步驟
直接模型互動的完整 API 規格
Agents、Sessions 與 Environments 端點
Python、TypeScript、C#、Go、Java、PHP 與 Ruby
使用層級、申請更高限制,以及 token bucket 演算法
Was this page helpful?