Messages
MarkdownFormát Anthropic Messages. Používají jej Claude Code, Anthropic SDK a mnoho agentů.
Úplný průvodce
https://api.ailoot.ai/v1/messagescurl https://api.ailoot.ai/v1/messages \
-H "x-api-key: $AILOOT_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-5-5",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "Ahoj! Co umíš?"}]
}' import anthropic
import os
client = anthropic.Anthropic(max_retries=0,
base_url="https://api.ailoot.ai", # bez /v1: SDK samo přidá /v1/messages
api_key=os.environ["AILOOT_API_KEY"],
)
msg = client.messages.create(
model="claude-sonnet-5-5",
max_tokens=1024,
messages=[{"role": "user", "content": "Vysvětli ve dvou větách, co je API."}],
)
print(msg.content[0].text)import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({ maxRetries: 0,
baseURL: "https://api.ailoot.ai", // bez /v1
apiKey: process.env.AILOOT_API_KEY,
});
const msg = await client.messages.create({
model: "claude-sonnet-5-5",
max_tokens: 1024,
messages: [{ role: "user", content: "Vysvětli ve dvou větách, co je API." }],
});
console.log(msg.content[0].type === "text" ? msg.content[0].text : msg.content);{
"id": "msg_01H…",
"type": "message",
"role": "assistant",
"model": "claude-sonnet-5-5",
"content": [
{ "type": "text", "text": "Ahoj! Umím psát a vysvětlovat kód, odpovídat na otázky…" }
],
"stop_reason": "end_turn",
"usage": { "input_tokens": 14, "output_tokens": 52 }
}Autorizace
- x-api-keyheaderpovinný
Klíč
sk-…. Lze použít takéAuthorization: Bearer sk-…– takto to dělá Claude Code sANTHROPIC_AUTH_TOKEN. - anthropic-versionheadernepovinný
Verze API, například
2023-06-01. SDK ji odesílají automaticky.
Tělo požadavku
- modelstringpovinný
ID modelu s formátem Messages – 776 identifikátorů: Claude, také GPT, Gemini, DeepSeek, Qwen a další.
- messagesarraypovinný
Zprávy
useraassistant;content– řetězec nebo bloky (text,image,tool_use,tool_result). - max_tokensintegerpovinný
Maximální počet tokenů odpovědi. Započítává se do rezervace; pokud zůstatek nestačí na plný limit, Ailoot jej sníží, ne však pod 256 (1025 při zapnutém uvažování), a nový limit oznámí v hlavičce
X-Ailoot-Max-Tokens-Capped. - systemstring | arraynepovinný
Systémový pokyn.
- streambooleannepovinný
Proud událostí SSE (
message_start,content_block_delta, …,message_stop). Placený text přichází v jednom bloku po výpočtu ceny. - temperaturenumbernepovinný
Náhodnost odpovědi od 0 do 1.
- toolsarraynepovinný
Nástroje:
name,description,input_schema. - tool_choiceobjectnepovinný
auto,any,toolnebonone. - thinkingobjectnepovinný
{"type": "enabled", "budget_tokens": N}– uvažování u modelů, které jej podporují. - stop_sequencesarraynepovinný
Řetězce, při jejichž výskytu se generování zastaví.
Odpověď
- contentarray
Bloky odpovědi:
text,thinking,tool_use. - stop_reasonstring
end_turn,max_tokens,stop_sequencenebotool_use. - usageobject
input_tokens,output_tokens, pro mezipaměť –cache_read_input_tokensacache_creation_input_tokens.