Skip to main content
POST
CometAPI supporta nativamente l’API Anthropic Messages, offrendoti accesso diretto ai modelli Claude con funzionalità specifiche di Anthropic. Usa questo endpoint per capacità di Claude come adaptive thinking, prompt caching e controllo dell’effort.
Usa il riferimento ufficiale dell’API Anthropic Messages come fonte autorevole per l’elenco completo dei parametri, lo schema della risposta e il comportamento specifico di Claude. Questa pagina di CometAPI spiega come inviare quel formato di richiesta tramite CometAPI.
I parametri della richiesta Anthropic e i campi della risposta possono cambiare con l’evolversi delle funzionalità di Claude. Controlla la documentazione dell’API Anthropic Messages per l’elenco completo più aggiornato dei parametri e il comportamento specifico del provider.
Molti modelli Claude più recenti rifiutano valori non predefiniti di temperature, top_p e top_k nell’API Messages. Ometti questi campi di campionamento a meno che tu non abbia verificato il supporto per il modello selezionato. Se un modello restituisce un errore di parametro non supportato o deprecato, rimuovi il campo dalla richiesta.
Sia gli header x-api-key sia Authorization: Bearer sono supportati per l’autenticazione. Gli SDK ufficiali di Anthropic usano x-api-key per impostazione predefinita.

Guida rapida

Per usare l’SDK ufficiale di Anthropic con CometAPI, imposta la base URL:

Controllare l’adaptive thinking

Usa adaptive thinking con output_config.effort per controllare quanto lavoro Claude applica a una risposta. I modelli Claude più recenti rifiutano il formato legacy del thinking manuale thinking={"type": "enabled", "budget_tokens": ...}.
I token di thinking vengono conteggiati nel limite di max_tokens. Imposta max_tokens abbastanza alto sia per il thinking sia per la risposta finale quando usi livelli di effort più elevati.

Memorizzare nella cache i prompt

Per ridurre la latenza e il costo nelle richieste successive, memorizza nella cache prompt di sistema di grandi dimensioni o prefissi di conversazione. Aggiungi cache_control ai blocchi di contenuto che devono essere memorizzati nella cache:
L’utilizzo della cache viene riportato nel campo usage della risposta:
  • cache_creation_input_tokens — token scritti nella cache (fatturati a una tariffa più alta)
  • cache_read_input_tokens — token letti dalla cache (fatturati a una tariffa ridotta)
La memorizzazione nella cache dei prompt richiede un minimo di 1,024 tokens nel blocco di contenuto memorizzato nella cache. I contenuti più brevi non verranno memorizzati nella cache.

Trasmettere le risposte in Streaming

Per trasmettere le risposte in Streaming usando Server-Sent Events (SSE), imposta stream: true. Gli eventi arrivano in questo ordine:
  1. message_start — contiene i metadati del messaggio e l’utilizzo iniziale
  2. content_block_start — indica l’inizio di ogni blocco di contenuto
  3. content_block_delta — frammenti di testo incrementali (text_delta)
  4. content_block_stop — indica la fine di ogni blocco di contenuto
  5. message_deltastop_reason finale e usage completo
  6. message_stop — segnala la fine dello stream

Controllare l’effort

Per controllare quanto impegno Claude mette nella generazione di una risposta, usa output_config.effort:

Usare gli strumenti server

Claude supporta strumenti lato server che vengono eseguiti sull’infrastruttura di Anthropic:
Recupera e analizza contenuti dagli URL:

Esempio di risposta

Una risposta tipica dall’endpoint Anthropic di CometAPI:

Confronto con l’endpoint compatibile con OpenAI

Autorizzazioni

x-api-key
string
header
obbligatorio

Your CometAPI key passed via the x-api-key header. Authorization: Bearer $COMETAPI_KEY is also supported.

Intestazioni

anthropic-version
string
predefinito:2023-06-01

The Anthropic API version to use. Defaults to 2023-06-01.

Esempio:

"2023-06-01"

anthropic-beta
string

Comma-separated list of beta features to enable. Examples: max-tokens-3-5-sonnet-2024-07-15, pdfs-2024-09-25, output-128k-2025-02-19.

Corpo

application/json
model
string
obbligatorio

The Claude model to use. See the Models page for available Claude model IDs.

Esempio:

"claude-sonnet-5"

messages
object[]
obbligatorio

The conversation messages. Must alternate between user and assistant roles. Each message's content can be a string or an array of content blocks (text, image, document, tool_use, tool_result). There is a limit of 100,000 messages per request.

max_tokens
integer
obbligatorio

The maximum number of tokens to generate. The model may stop before reaching this limit. When using thinking, the thinking tokens count towards this limit.

Intervallo richiesto: x >= 1
Esempio:

1024

system

System prompt providing context and instructions to Claude. Can be a plain string or an array of content blocks (useful for prompt caching).

temperature
number
predefinito:1

Model-dependent sampling control. Many newer Claude models reject non-default temperature values on the Messages API. Omit this field unless you have verified that the selected model accepts it; if the model returns an unsupported or deprecated-parameter error, remove the field instead of substituting another sampling value.

Intervallo richiesto: 0 <= x <= 1
Esempio:

1

top_p
number

Model-dependent nucleus sampling control. Many newer Claude models reject non-default top_p values on the Messages API. Omit this field unless you have verified support for the selected model. Do not set temperature and top_p together.

Intervallo richiesto: 0 <= x <= 1
Esempio:

1

top_k
integer

Model-dependent top-k sampling control. Many newer Claude models reject non-default top_k values on the Messages API. Omit this field unless you have verified support for the selected model.

Intervallo richiesto: x >= 0
Esempio:

0

stream
boolean
predefinito:false

If true, stream the response incrementally using Server-Sent Events (SSE). Events include message_start, content_block_start, content_block_delta, content_block_stop, message_delta, and message_stop.

stop_sequences
string[]

Custom strings that cause the model to stop generating when encountered. The stop sequence is not included in the response.

thinking
object

Controls Claude thinking when the selected model supports a configurable thinking mode. For newer adaptive-thinking models, use {"type":"adaptive"} with output_config.effort, or omit thinking when adaptive thinking is already the model default. Manual {"type":"enabled","budget_tokens":...} is supported only by older models and is rejected by newer Claude models.

tools
object[]

Tools the model may use. Supports client-defined functions, web search (web_search_20250305), web fetch (web_fetch_20250910), code execution (code_execution_20250522), and more.

tool_choice
object

Controls how the model uses tools.

metadata
object

Request metadata for tracking and analytics.

output_config
object

Configuration for response effort and output format. Field support depends on the selected Claude model.

service_tier
enum<string>

The service tier to use. auto tries priority capacity first, standard_only uses only standard capacity.

Opzioni disponibili:
auto,
standard_only

Risposta

200 - application/json

Successful response. When stream is true, the response is a stream of SSE events.

id
string

Unique identifier for this message (e.g., msg_01XFDUDYJgAACzvnptvVoYEL).

type
enum<string>

Always message.

Opzioni disponibili:
message
role
enum<string>

Always assistant.

Opzioni disponibili:
assistant
content
object[]

The response content blocks. May include text, thinking, tool_use, and other block types.

model
string

The specific model version that generated this response, such as claude-sonnet-5.

stop_reason
enum<string>

Why the model stopped generating. refusal can be returned as a successful HTTP response when the model declines a request.

Opzioni disponibili:
end_turn,
max_tokens,
stop_sequence,
tool_use,
pause_turn,
refusal
stop_sequence
string | null

The stop sequence that caused the model to stop, if applicable.

usage
object

Token usage statistics.