Claude API
POST
/v1/messages
发送消息到Claude (兼容官方API格式)
请求头
Header |
类型 |
必填 |
说明 |
X-API-Key |
string |
是 |
用户API密钥 |
Content-Type |
string |
是 |
application/json |
请求参数
参数 |
类型 |
必填 |
说明 |
model |
string |
是 |
模型名称 |
messages |
array |
是 |
消息数组 |
max_tokens |
number |
否 |
最大生成长度 |
stream |
boolean |
否 |
是否流式响应 |
请求示例
{
"model": "claude-3-sonnet-20240229",
"messages": [
{
"role": "user",
"content": "Hello, Claude!"
}
],
"max_tokens": 1000
}
调用示例
Python 示例
import requests
# 配置
API_KEY = "sk-xxxxxxxxxxxxxxxx"
BASE_URL = "http://localhost:3000"
# 调用Claude API
response = requests.post(
f"{BASE_URL}/v1/messages",
headers={
"X-API-Key": API_KEY,
"Content-Type": "application/json"
},
json={
"model": "claude-3-sonnet-20240229",
"messages": [
{"role": "user", "content": "Hello!"}
],
"max_tokens": 1000
}
)
print(response.json())
JavaScript 示例
const API_KEY = 'sk-xxxxxxxxxxxxxxxx';
const BASE_URL = 'http://localhost:3000';
async function callClaude() {
const response = await fetch(`${BASE_URL}/v1/messages`, {
method: 'POST',
headers: {
'X-API-Key': API_KEY,
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'claude-3-sonnet-20240229',
messages: [
{ role: 'user', content: 'Hello!' }
],
max_tokens: 1000
})
});
const data = await response.json();
console.log(data);
}
callClaude();
cURL 示例
curl -X POST http://localhost:3000/v1/messages \
-H "X-API-Key: sk-xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-3-sonnet-20240229",
"messages": [
{"role": "user", "content": "Hello!"}
],
"max_tokens": 1000
}'