Dokumentacja API Hop
API Claude Messages
Natywne API zgodne z Claude Messages. Ten punkt końcowy używa struktur żądań i odpowiedzi Anthropic Messages, w tym wywołań narzędzi i zdarzeń SSE Anthropic.
https://api.apihop.ai/anthropic/v1/messagesNatywne API zgodne z Claude Messages. Ten punkt końcowy używa struktur żądań i odpowiedzi Anthropic Messages, w tym wywołań narzędzi i zdarzeń SSE Anthropic.
Claude Sonnet 4.6 (claude-sonnet-4-6) jest obsługiwany przez dostawcę, ale nie jest obecnie opublikowany w API Hop. Nie jest aktywnym domyślnym modelem integracji. Przed wywołaniem dowolnego modelu potwierdź dostęp we własnej odpowiedzi GET https://api.apihop.ai/v1/models.
POST https://api.apihop.ai/anthropic/v1/messagesUwierzytelnianie
Wszystkie żądania wymagają klucza API API Hop. SDK Anthropic, Claude Code i zgodne klienty zwykle używają x-api-key; zwykłe klienty HTTP mogą także korzystać z uwierzytelniania tokenem Bearer.
x-api-key: YOUR_APIHOP_API_KEY
anthropic-version: 2023-06-01Authorization: Bearer YOUR_APIHOP_API_KEY
anthropic-version: 2023-06-01Treść żądania
modelstringWymaganeWartość domyślna: claude-sonnet-5-5Obsługiwane identyfikatory modeli Claude.
claude-fable-5claude-fable-5-1claude-opus-4-6claude-opus-4-7claude-opus-4-8claude-opus-5claude-opus-5-5claude-sonnet-5claude-sonnet-5-5
Użyj GET https://api.apihop.ai/v1/models, aby sprawdzić modele obecnie dostępne dla Twojego klucza API.
max_tokensintegerWymaganeMaksymalna liczba tokenów wyjściowych jako dodatnia bezpieczna liczba całkowita. Limit obejmuje tokeny rozumowania i końcowego tekstu. Brak wartości, zero, wartość ujemna, ułamek, ciąg znaków lub liczba całkowita spoza bezpiecznego zakresu zwracają HTTP 400 z invalid_request_error przed generowaniem lub rozliczeniem. Model może narzucać niższe maksimum.
W modelach generujących rozumowanie mały limit, na przykład 128, może dać wyłącznie bloki rozumowania przed zakończeniem z stop_reason: "max_tokens", bez tekstu odpowiedzi. Ustaw jawny limit dla zadania i wybranego modelu, zostawiając miejsce na rozumowanie i końcową odpowiedź. Wartości w przykładach są edytowalnymi limitami, a nie wartościami domyślnymi dostawcy ani ograniczeniami modelu; większe limity mogą zwiększyć zużycie tokenów wyjściowych i koszt.
messagesobject[]WymaganeWiadomości rozmowy. Każda wiadomość zawiera role i content.
role obsługuje user i assistant. content może być ciągiem znaków lub tablicą bloków treści.
systemstring | object[]Prompt systemowy. Anthropic Messages używa pola system na najwyższym poziomie zamiast roli system w messages.
streambooleanWartość domyślna: falseCzy zwracać zdarzenia SSE Anthropic.
temperaturenumberTemperatura próbkowania. Akceptowane wartości i efekty zależą od wybranego modelu.
top_pnumberParametr próbkowania jądrowego. Przyjęcie parametru nie gwarantuje zmiany zachowania generowania.
top_kintegerParametr próbkowania top-k. Obsługa zależy od wybranego modelu.
stop_sequencesstring[]Sekwencje zatrzymania.
Żądania z niepustymi sekwencjami zatrzymania pomijają usługi modeli, o których wiadomo, że ich nie obsługują; jeśli zgodna usługa nie jest dostępna, żądanie zwraca 400 przed generowaniem lub rozliczeniem.
toolsobject[]Definicje narzędzi Anthropic. Narzędzia funkcyjne zwykle zawierają name, description i input_schema.
tool_choiceobjectZasady wyboru narzędzi, na przykład { "type": "auto" } lub { "type": "tool", "name": "..." }.
thinkingobjectNatywna konfiguracja rozumowania Anthropic, zależna od obsługi wybranego modelu i dostawcy. Claude 4.5 używa { "type": "enabled", "budget_tokens": 1024 }; Claude Sonnet/Opus 4.6 obsługują także rozumowanie adaptacyjne. Nie stosuj ręcznego limitu do każdej wersji modelu. W kontynuacjach narzędzi zwracaj kompletną, uporządkowaną treść asystenta, w tym thinking, signature, redacted_thinking i tool_use, bez zmian. Zachowuj spójność konfiguracji rozumowania i wymaganych nagłówków anthropic-beta przez cały cykl wywołania narzędzia. W SSE łącz fragmenty signature_delta.signature tego samego bloku treści; puste podsumowanie rozumowania nie oznacza, że można odrzucić jego podpis. Odmowa dostępu do konta dostawcy jest błędem po stronie dostawcy, a nie dowodem niepoprawnego podpisu. Rozpoznane odmowy dostępu do konta Bedrock zwracają HTTP 502 z api_error; zwykłe błędy walidacji klienta zachowują HTTP 400. Akceptacja nadal wymaga włączonego konta u dostawcy.
metadataobjectMetadane żądania.
Buforowanie promptów
Dodaj cache_control: { "type": "ephemeral" } do bloku system lub treści wiadomości. Zużycie pamięci podręcznej może obejmować cache_creation_input_tokens, cache_read_input_tokens oraz obsługiwane kategorie tworzenia o czasie 5 minut lub 1 godziny. TTL wynoszący 1 godzinę wymaga także odpowiedniego nagłówka anthropic-beta.
Przykłady żądań
Bez strumieniowania
{
"model": "claude-sonnet-5-5",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": "Hello, introduce yourself in one sentence."
}
],
"stream": false
}Strumieniowanie
{
"model": "claude-sonnet-5-5",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": "Reply exactly OK."
}
],
"stream": true
}Odpowiedź
Odpowiedzi bez strumieniowania zachowują strukturę Anthropic Message.
idstringIdentyfikator odpowiedzi, na przykład msg_....
typestringTyp obiektu, zwykle message.
rolestringZwykle assistant.
modelstringFaktycznie użyty model Claude.
contentobject[]Natywne bloki treści wyjściowej, w tym text, tool_use i thinking, gdy są używane.
stop_reasonstringPowód zatrzymania, na przykład end_turn, max_tokens, stop_sequence lub tool_use.
usageobjectZużycie tokenów, w tym input_tokens i output_tokens. Pola tokenów pamięci podręcznej są dołączane, gdy występują.
Przykład powodzenia
{
"id": "msg_01...",
"type": "message",
"role": "assistant",
"model": "claude-sonnet-5-5",
"content": [
{
"type": "text",
"text": "Hello, I am Claude and can help with writing, coding, and analysis tasks."
}
],
"stop_reason": "end_turn",
"stop_sequence": null,
"usage": {
"input_tokens": 18,
"output_tokens": 24
}
}Odpowiedź strumieniowa
Przy stream: true punkt końcowy zwraca zdarzenia SSE Anthropic. Typowe zdarzenia to:
message_startcontent_block_startcontent_block_deltacontent_block_stoppingmessage_deltamessage_stop
Odpowiedź błędu
Zobacz kody błędów i diagnozowanie, aby poznać pełny wykaz kodów, różnice protokołów i kroki diagnostyczne.
Odpowiedzi błędów używają struktury w stylu Anthropic:
{
"type": "error",
"error": {
"type": "authentication_error",
"message": "Invalid credentials or API key has expired."
}
}