Ad contentum transili
Anthropic

Anthropic

POST /v1/messages petitionem in forma Anthropic Messages accipit et eadem forma respondet, per fluxum vel non. Cum SDK Anthropic et cum instrumentis in eo aedificatis utere, ut Claude Code: URL basim statue, clavem tuam API Shannon utere et id modelli Shannon nomina.

POST https://api.shannon-ai.com/v1/messages

SDK Anthropic ad URL basim Shannon dirige. SDK /v1/messages addit et clavem tuam in header x-api-key mittit.

import anthropic

client = anthropic.Anthropic(
    api_key="YOUR_API_KEY",
    base_url="https://api.shannon-ai.com",
)

message = client.messages.create(
    model="shannon-3",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Say hello in one sentence."}],
)

for block in message.content:
    if block.type == "text":
        print(block.text)

Responsum est nuntius cuius content est index blocorum. Blocka per type suum inveni: cum modellum ratiocinatum est, primum blocum est thinking et textus post id venit.

200 JSON
{
  "id": "msg_5f0c1e7a9b3d4c62a8e1f07d2b46c9a3",
  "type": "message",
  "role": "assistant",
  "model": "shannon-3",
  "content": [
    {
      "type": "thinking",
      "thinking": "The user wants a greeting in one sentence. Keep it short and friendly."
    },
    {
      "type": "text",
      "text": "Hello, it is good to meet you."
    }
  ],
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 1184,
    "output_tokens": 46
  }
}

Headers

Header Valor Descriptio
x-api-key YOUR_API_KEY Clavis tua API. Authorization: Bearer YOUR_API_KEY pro ea accipitur.
content-type application/json Requisitum.
anthropic-version 2023-06-01 Accipitur, non requiritur. SDK Anthropic 2023-06-01 mittit; responsum eandem formam habet quicumque valor est.
anthropic-beta Accipitur, non requiritur.
x-request-id Facultativum. Id tuum proprium pro petitione. In responso immutatum redit; sine eo responsum id 12 characterum hexadecimalium fert.

Campi petitionis

Solum messages requiritur. Columna Applicatur a modella nominat in quibus campus responsum mutat. Modella open-weight hospitata sunt duodecim ids indicis modellorum; familia Shannon 3 est shannon-3, shannon-3-pro, shannon-3.1 et shannon-3.1-pro. Modella et pretia

Campus Genus Default Descriptio Applicatur a
model string shannon-1.6-lite Id modelli Shannon ex indice modellorum. Cum omni petitione mitte. Comparatio maiusculas minusculasque non distinguit. Quodvis aliud nomen 400 unknown model reddit, itaque instrumentum quod nomina modellorum propria mittit ad id Shannon configurandum est. Omnia modella
messages array Requisitum. Colloquium, nuntio vetustissimo primo, cum partibus user et assistant. Vide Nuntii et blocka contenti infra. Omnia modella
system string | array Instructiones pro modello: series litterarum vel ordo blocorum textus. Vide System prompt infra. Modella open-weight hospitata, shannon-1.6-*, shannon-2-*, shannon-coder-1
max_tokens integer 4096 Limes superior responsi, in tokens. In hoc endpoint facultativum; SDK Anthropic eum semper mittit. Valor extra 1 ad 65,536 in illam seriem adducitur. Est etiam quantitas quae a saldo tuo reservatur dum petitio currit. Modella open-weight hospitata, shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1
stream boolean false true responsum ut server-sent events mittit. Vide Streaming infra. Omnia modella
temperature number Temperatura sampling. In modellis open-weight hospitatis valores inter 0 et 2 servantur. Modella open-weight hospitata, shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1
top_p number Nucleus sampling. Modella open-weight hospitata
stop_sequences array Usque ad 4 series litterarum. Responsum ante primam quae apparet finitur. stop_reason manet end_turn. Modella open-weight hospitata
tools array Instrumenta quae modellum vocare potest, quodque ut {"name", "description", "input_schema"}. Vide Tools infra. Omnia modella
tool_choice object {"type": "auto"} modellum decernere sinit, {"type": "any"} instrumentum vocare cogit, {"type": "tool", "name": "…"} illud instrumentum vocare cogit. Modella open-weight hospitata
thinking object Quantum modellum ratiocinetur antequam respondeat. Vide Thinking infra. Modella open-weight hospitata
web_search boolean false Additamentum Shannon ad formam: true modellum in interreti quaerere sinit antequam respondeat. shannon-1.6-*, shannon-2-*, familia Shannon 3

Sine max_tokens valor est 4,096, et 65,536 in shannon-coder-1.

metadata, top_k, service_tier et signa cache_control in blocis accipiuntur ut codex clientis existens immutatus currat. Responsum non mutant; cachatio prompti in modellis open-weight hospitatis automatica est.

Responsum JSON ad schema cum response_format in Chat Completions et cum text.format in Responses petitur. Exitus structi

Petitio cum system prompt et thinking

Haec petitio system prompt, budgetum cogitationis, temperaturam et sequentiam stop mittit. Modellum open-weight hospitatum utitur, quod omnia applicat.

import anthropic

client = anthropic.Anthropic(
    api_key="YOUR_API_KEY",
    base_url="https://api.shannon-ai.com",
)

message = client.messages.create(
    model="DeepSeek-V4-Flash-0731-W4A16-AUTOROUND-REAP",
    max_tokens=4096,
    system="You are a physics teacher. Answer in two sentences.",
    thinking={"type": "enabled", "budget_tokens": 2048},
    temperature=0.3,
    stop_sequences=["\n\n"],
    messages=[{"role": "user", "content": "Why is the sky blue?"}],
)

for block in message.content:
    if block.type == "thinking":
        print("reasoning:", block.thinking)
    elif block.type == "text":
        print("answer:", block.text)
print(message.usage)

In modellis open-weight hospitatis usage tokens e cache prompti lectos separatim ab aliis tokens inputi nuntiat.

200 JSON
{
  "usage": {
    "input_tokens": 31,
    "cache_read_input_tokens": 0,
    "cache_creation_input_tokens": 0,
    "output_tokens": 62
  }
}

System prompt

system est series litterarum vel ordo blocorum textus in forma [{"type": "text", "text": "…"}]. Textus blocorum fine lineae coniunguntur.

A modellis open-weight hospitatis, shannon-1.6-lite, shannon-1.6-pro, shannon-2-lite, shannon-2-pro et shannon-coder-1 applicatur. Cum id familiae Shannon 3, instructiones quae valere debent in nuntium utentis pone.

Nuntii et blocka contenti

Nuntius role habet, user vel assistant, et content. content est series litterarum vel ordo blocorum.

Blocum Descriptio Praesto in
{"type": "text", "text": "…"} Textus. Omnia modella
{"type": "image", "source": {"type": "base64", "media_type": "image/png", "data": "…"}}
{"type": "image", "source": {"type": "url", "url": "…"}}
Imago in nuntio user, ut base64 vel per URL. Familia Shannon 3, shannon-1.6-lite, shannon-1.6-pro et modella open-weight hospitata quae imaginem ut input enumerant
{"type": "document", "source": {"type": "base64", "media_type": "application/pdf", "data": "…"}} Documentum (PDF, Word, PowerPoint vel Excel) in nuntio user, ut base64 vel per URL. Familia Shannon 3
{"type": "tool_use", "id": "toolu_…", "name": "…", "input": {…}} In nuntio assistant: vocatio instrumenti quam modellum in responso priore fecit. Omnia modella
{"type": "tool_result", "tool_use_id": "toolu_…", "content": "…"} In nuntio user: exitus illius vocationis. content est series litterarum vel index blocorum textus. Omnia modella

content responsi prioris, ut est, remittere potes: blocka text et tool_use leguntur, blocka thinking praetermittuntur.

In gradibus Shannon imagines et documenta ex ultimo nuntio user leguntur. Magnitudines et limites paginam propriam habent. Imagines et fasciculi

Cogitatio

Modella open-weight hospitata thinking ad conatum ratiocinationis referunt. Sine campo conatus est altus.

Forma budget_tokens Effectus
{"type": "disabled"} Nulla ratiocinatio. Responsum blocum thinking non habet.
{"type": "enabled", "budget_tokens": 2048} ≤ 2,048 Conatus humilis.
{"type": "enabled", "budget_tokens": 8192} ≤ 8,192 Conatus medius.
{"type": "enabled", "budget_tokens": 16000} > 8,192 Conatus altus.

Modellum quod ratiocinatur ratiocinationem suam ut blocum {"type": "thinking", "thinking": "…"} ante textum reddit. Gradus Shannon qui ratiocinantur etiam eam mittunt.

Conatus in pagina propria describuntur. Conatus ratiocinationis

Instrumenta

Instrumentum est functio quam codex tuus exsequitur. Quodque cum name, description et input_schema describe. Cum modellum instrumentum vult, responsum blocum tool_use continet et stop_reason est tool_use.

Definitio instrumenti in tools:

tools
[
  {
    "name": "get_weather",
    "description": "Current weather for a city.",
    "input_schema": {
      "type": "object",
      "properties": {
        "city": {
          "type": "string"
        }
      },
      "required": [
        "city"
      ]
    }
  }
]

content responsi quod id vocat:

200 content
[
  {
    "type": "text",
    "text": ""
  },
  {
    "type": "tool_use",
    "id": "toolu_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
    "name": "get_weather",
    "input": {
      "city": "Paris"
    }
  }
]

Instrumentum exsequere, deinde petitionem iterum mitte cum vocatione et bloco tool_result ad messages addito:

messages
[
  {
    "role": "user",
    "content": "What is the weather in Paris?"
  },
  {
    "role": "assistant",
    "content": [
      {
        "type": "tool_use",
        "id": "toolu_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
        "name": "get_weather",
        "input": {
          "city": "Paris"
        }
      }
    ]
  },
  {
    "role": "user",
    "content": [
      {
        "type": "tool_result",
        "tool_use_id": "toolu_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
        "content": "{\"temperature_c\": 18, \"sky\": \"cloudy\"}"
      }
    ]
  }
]

tool_choice

Forma Effectus Applicatur a
{"type": "auto"} Modellum decernit num instrumentum vocet. Hoc est default. Omnia modella
{"type": "any"} Modellum unum ex instrumentis vocare debet. Modella open-weight hospitata
{"type": "tool", "name": "…"} Modellum instrumentum nominatum vocare debet. Modella open-weight hospitata

Solum instrumenta cum input_schema leguntur. Quaestus interretialis in hoc endpoint instrumentum non est: campum web_search pone.

Circulus instrumentorum plene in pagina propria describitur. Vocatio functionum

Responsum

Campus Genus Descriptio Mittitur a
id string msg_ quod sequuntur 32 characteres hexadecimales. Omnia modella
type string Semper message. Omnia modella
role string Semper assistant. Omnia modella
model string Id canonicum modelli quod respondit. Omnia modella
content array Blocka responsi, hoc ordine: thinking si modellum ratiocinatum est, text, deinde unum tool_use pro qualibet vocatione instrumenti. Omnia modella
stop_reason string Cur responsum finitum sit. Vide valores infra. Omnia modella
usage object input_tokens et output_tokens. Omnia modella
sources array Solum in petitione cum web_search: true cuius quaestus aliquid invenit: eventus qui modello dati sunt, quisque cum index, title et url. [1] in responso est ingressus cum index 1. In stream cum eventu message_delta venit. shannon-1.6-*, shannon-2-*, familia Shannon 3
usage.cache_read_input_tokens integer cache_read_input_tokens est pars prompti e cache lecta; input_tokens est reliquum. cache_creation_input_tokens semper est 0. Modella open-weight hospitata

Blocka responsi

Blocum Descriptio
{"type": "thinking", "thinking": "…"} Ratiocinatio modelli. Membrum signature non est.
{"type": "text", "text": "…"} Textus responsi. Vacuus esse potest cum responsum est vocatio instrumenti.
{"type": "tool_use", "id": "toolu_…", "name": "…", "input": {…}} Vocatio instrumenti. input est objectum JSON. Exitum cum eodem id remitte.

stop_reason

stop_reason Descriptio Mittitur a
end_turn Modellum responsum finivit, vel una ex stop_sequences tuis apparuit. Omnia modella
tool_use Responsum unam vel plures vocationes instrumentorum continet. Omnia modella
max_tokens Responsum ad limitem outputi abscissum est. Familia Shannon 3, shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1, in fluxibus

Fluxus

stream in true pone ut server-sent events accipias. Quodque frame lineam event: cum nomine eventus et lineam data: cum objecto JSON habet quod nomen in type repetit. Adiutores fluxus SDK Anthropic hos eventus pro te legunt:

import anthropic

client = anthropic.Anthropic(
    api_key="YOUR_API_KEY",
    base_url="https://api.shannon-ai.com",
)

with client.messages.stream(
    model="shannon-3",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Explain server-sent events in three sentences."}],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)
    message = stream.get_final_message()

print()
print(message.stop_reason, message.usage)

Eventus, ordine quo adveniunt:

Eventus Data Quando
message_start message Semper primus. message id, partem, modellum, content vacuum et usage a nihilo incipientem continet.
content_block_start index, content_block Blocum aperitur. content_block est blocum text vel thinking vacuum, vel blocum tool_use cum id et name suis.
content_block_delta index, delta {"type": "thinking_delta", "thinking"} Frustum ratiocinationis, pro bloco thinking.
content_block_delta index, delta {"type": "text_delta", "text"} Frustum responsi, pro bloco text.
content_block_delta index, delta {"type": "input_json_delta", "partial_json"} Argumenta vocationis instrumenti, in uno delta completa, pro bloco tool_use.
content_block_stop index Blocum cum hoc index completum est.
message_delta delta {stop_reason, stop_sequence}, usage Finis responsi: delta.stop_reason, et usage petitionis.
message_stop Semper ultimus.

Blocka per index numerantur ordine quo aperiuntur, et unum blocum completur antequam proximum aperiatur. Quodque blocum per genus suum lege, non per numerum: fluxus primum blocum text vacuum aperire potest, deinde blocum thinking, et responsum in blocum text posterius tradere.

200 text/event-stream
event: message_start
data: {"type":"message_start","message":{"id":"msg_5f0c…","type":"message","role":"assistant","model":"shannon-3","content":[],"usage":{"input_tokens":0,"output_tokens":0}}}

event: content_block_start
data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""}}

event: content_block_stop
data: {"type":"content_block_stop","index":0}

event: content_block_start
data: {"type":"content_block_start","index":1,"content_block":{"type":"thinking","thinking":""}}

event: content_block_delta
data: {"type":"content_block_delta","index":1,"delta":{"type":"thinking_delta","thinking":"Three sentences: what it is, how it is framed, why it is used."}}

event: ping
data: {"type": "ping"}

event: content_block_stop
data: {"type":"content_block_stop","index":1}

event: content_block_start
data: {"type":"content_block_start","index":2,"content_block":{"type":"text","text":""}}

event: content_block_delta
data: {"type":"content_block_delta","index":2,"delta":{"type":"text_delta","text":"Server-sent events let a server push text over one HTTP reply."}}

event: content_block_stop
data: {"type":"content_block_stop","index":2}

event: message_delta
data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"input_tokens":1190,"output_tokens":84}}

event: message_stop
data: {"type":"message_stop"}

Keep-alive

Mittitur a Descriptio
Familia Shannon 3, shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1 Eventus ping cum datis {"type": "ping"}, quaque 15 secundis.
Modella open-weight hospitata Linea commenti : keepalive, quaque 15 secundis dum modellum operatur.

Fluxus qui deficit

Defectus post fluxum incohatum est eventus error cum eodem corpore ac responsum erroris: {"type": "error", "error": {"type", "message"}}. Eventus clausurae, message_delta et message_stop, tamen sequuntur. Responsum ut defectum tracta et petitionem iterum mitte.

Errores

Errores corpus erroris Anthropic utuntur: type est error, et objectum error type et message continet. Tabula ea enumerat quae hoc endpoint saepissime reddit. Index plenus, cum notis quid iterandum sit, paginam propriam habet. Tractatio errorum

400 JSON
{
  "type": "error",
  "error": {
    "type": "invalid_request_error",
    "message": "unknown model: no-such-model"
  }
}
Status Genus Nuntius Quando
401 authentication_error Missing authentication
Invalid API key
Nulla clavis API missa est, vel clavis ignota aut revocata est.
400 invalid_request_error unknown model: <id> model non est id modelli Shannon.
400 invalid_request_error No user message provided Gradus Shannon: petitio nullum textum utentis nec tools habet.
400 invalid_request_error <id> does not accept image input Imago ad modellum open-weight hospitatum missa est quod imaginem ut input non accipit.
422 invalid_request_error Failed to deserialize the JSON body into the target type: … messages deest, vel campus genus JSON falsum habet.
429 rate_limit_error Quota exceeded. Upgrade your plan at shannon-ai.com/plan max_tokens maius est quam quod de saldo tuo superest.
429 rate_limit_error Too many requests. Retry in <n>s. Defensio inundationis: plus quam 120 petitiones uno minuto in ratione tua.
429 rate_limit_error Shannon Coder call quota reached. Upgrade your plan at shannon-ai.com/plan shannon-coder-1: vocationes Shannon Coder plani tui pro fenestra 4 horarum praesenti consumptae sunt.
500 server_error The model backend failed to answer. Please retry. Modellum responsum non edidit. Petitionem iterum mitte.
502 api_error The model backend failed to answer. Please retry. Modellum responsum non edidit. Petitionem iterum mitte.

Computatio tokenum

POST /v1/messages/count_tokens idem corpus accipit quod petitio nuntii (model, system, messages, tools) et reddit {"input_tokens": n}: numerum tokenorum inputi pro quibus petitio computaretur. Pro modellis open-weight hospitatis valet, gratuitum est et a defensione inundationis non computatur.

import anthropic

client = anthropic.Anthropic(
    api_key="YOUR_API_KEY",
    base_url="https://api.shannon-ai.com",
)

count = client.messages.count_tokens(
    model="DeepSeek-V4-Flash-0731-W4A16-AUTOROUND-REAP",
    system="You are a physics teacher. Answer in two sentences.",
    messages=[{"role": "user", "content": "Why is the sky blue?"}],
)

print(count.input_tokens)

Computatio paginam propriam habet, cum endpoint textus simplicis et limitibus. Computatio tokenum