Buuka ku birimu
Back to Nymbot

Omusingi gw’okumanya Kino

Buli, Buli, Buli

3 way to ask a model something, ku 3 formats client ya bibilika, bonke bula bula bula bula bula bula bula bula.

Tuba Tuba

OpenAI chat format, ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey ey

POST https://nymbot.ai/api/v1/chat/completions -Okuya API Key.

Kino model ne messages b) Buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli supported_parameters82. Buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli

KinoKinoKinoKino
modelKinoYeenymbot/auto (Ou) auto) for Nymbot's routing on the standard balance, okanye id model catalog anthropic/claude-sonnet-5 ekolimo. Ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo ekolimo Kino.
messagesTubaYeeKino, Kino system, developer (Enyele) user, assistant ne tool. Intanet. Intanet. Intanet. Intanet. Intanet. Intanet. text ne image_url ekhaya. ekhaya. ekhaya. ekhaya. ekhaya. ekhaya. input_audio Kukiya Kukiya
streamBuliBuliKuki-ku-ku-ku-ku Kino.
stream_optionsKinoBuli{"include_usage": true} ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibi.
max_tokens
max_completion_tokens
KinoBuliOkinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe. Okinawe.
temperature
top_p
KinoBuliSample Controls: temperature 0 – 2 top_p 0 – 1
stopstring / arrayBuliTeksti ekugwimi: ekugwimi obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu obuwu nymbot/auto.
seedKinoBuliKukiya, Kukiya, Kukiya, Kukiya
presence_penalty
frequency_penalty
KinoBuliTshukuba ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera ebimera.
response_formatKinoBuli{"type": "json_object"} O.O {"type": "json_schema", "json_schema": {…}}, apho model supports ya. Akwa akwa nymbot/auto.
tools
tool_choice
parallel_tool_calls
array, string okanye obj, booleanBuliKino Kinoa. a. web_search Tools-ku Kino. Oko 128 ngoma na 512 KB ya ebimera, ebimera ebimera ebimera 64 ebimera ebimera; 400.
reasoning_effort
reasoning
Kino, ObjectBuli"minimal", "low", "medium" O.O "high"– – – – {"effort": "high"}. "none" O.O {"enabled": false} Woo Woo Kino.
pluginsTubaBuli[{"id": "web", "max_results": 5}] kuki kuki kuki kuki kuki kuki kuki kuki kuki kuki kuki.
nKinoBuli1. Buli Buli Buli Buli 400.
logit_bias
user
metadata
Objet, String, ObjetBuliBuli, Buli, Buli, Buli logit_bias maps ku max 300 token ids ku numbidi -100 ku 100; user en: 256 en: metadata ekhaya 16 ekhaya, ekhaya 64 ekhaya, ekhaya 512 ekhaya.

Ebibala ebibala chat.completionKino usage.cost (kuba dollar) na nymbot Kino model ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide message.reasoning_contentbusa busa busa.

Kino

{
  "id": "chatcmpl-5f1c0a9e27d84b3c",
  "object": "chat.completion",
  "created": 1790726400,
  "model": "anthropic/claude-sonnet-5",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "A Lightning invoice is a one-time payment request..."
      },
      "logprobs": null,
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 1240,
    "completion_tokens": 380,
    "total_tokens": 1620,
    "prompt_tokens_details": { "cached_tokens": 0 },
    "completion_tokens_details": { "reasoning_tokens": 0 },
    "cost": 0.01895
  },
  "nymbot": {
    "balance": "pro",
    "charged_credits": 0.162,
    "charged_sats": 16.2,
    "balance_credits": 412.425,
    "balance_sats": 41242.5
  }
}

finish_reason ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibala ebibi: tool_calls busa Busa Busa Busa Busa length busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa content_filter busa busa busa busa busa stop Buli usage.completion_tokens_details.reasoning_tokens onani 0: tokens akhawuntiwa akhawuntiwa akhawuntiwa, akhawuntiwa completion_tokens.

BuliKino
400Buli model O.O messages (missing_required_parameter); audio-ku, faili-ku, okanye imidyo-ku kwa modulu ebugayo (unsupported_content); ngaphezu 20 imago (too_many_images); isampula isampula isampula isampula (invalid_value); imeeli ekubuto (invalid_image_url); izolo ku model ebugayo (unsupported_tool); n 1; A :thinking Suffix on a model ebugayo (model_not_found); okanye abusa ibhokisi (upstream_rejected).
402Ekubali ekubali ekubali ekubali ekubali ekubali.
403(Enyele) (Enyele)key_limit_reachedb) Buli max_tokens Na na na na na na na
404Buli (Buli)model_not_found).
429(Enyele) (Enyele)upstream_rate_limited).
502, 503Kino (upstream_error(Enyele) (Enyele)upstream_overloadedKino Retry-After(B) Akhawunti akhawunti akhawunti akhawunti akhawunti.

Kuki Kuki Kuki Kuki Kuki Kuki Kuki Kuki Kino.

cURL

curl https://nymbot.ai/api/v1/chat/completions \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-5",
    "messages": [
      {"role": "system", "content": "Answer in one short paragraph."},
      {"role": "user", "content": "What is a Lightning invoice?"}
    ],
    "max_tokens": 400
  }'

Python

import os
from openai import OpenAI

client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])

reply = client.chat.completions.create(
    model="anthropic/claude-sonnet-5",
    messages=[
        {"role": "system", "content": "Answer in one short paragraph."},
        {"role": "user", "content": "What is a Lightning invoice?"},
    ],
    max_tokens=400,
)
print(reply.choices[0].message.content)
print(reply.usage.cost)

JavaScript

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });

const reply = await client.chat.completions.create({
  model: "anthropic/claude-sonnet-5",
  messages: [
    { role: "system", content: "Answer in one short paragraph." },
    { role: "user", content: "What is a Lightning invoice?" },
  ],
  max_tokens: 400,
});
console.log(reply.choices[0].message.content);
console.log(reply.usage.cost);

Kino

Kino "stream": true ekubuto ekubuto ekubuto ekubuto ekubuto ekubuto ekubuto ekubuto ekubuto ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato chat.completion.chunk Kino data: line, na stream ekubuto data: [DONE]4. Tuba Buba delta.reasoning_contentKino delta.content.

Stream-ka busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa busa. max_tokens b. B. B. B. B. B. B. B. B. B. B. B. B. B. B. B. B. B. B. B. B. B. B. B. B. B.

Kino

data: {"id":"chatcmpl-5f1c0a9e27d84b3c","object":"chat.completion.chunk","created":1790726400,"model":"anthropic/claude-sonnet-5","choices":[{"index":0,"delta":{"role":"assistant","content":""},"finish_reason":null}]}

data: {"id":"chatcmpl-5f1c0a9e27d84b3c","object":"chat.completion.chunk","created":1790726400,"model":"anthropic/claude-sonnet-5","choices":[{"index":0,"delta":{"content":"A Lightning invoice"},"finish_reason":null}]}

: keep-alive

data: {"id":"chatcmpl-5f1c0a9e27d84b3c","object":"chat.completion.chunk","created":1790726400,"model":"anthropic/claude-sonnet-5","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}

data: {"id":"chatcmpl-5f1c0a9e27d84b3c","object":"chat.completion.chunk","created":1790726400,"model":"anthropic/claude-sonnet-5","choices":[],"usage":{"prompt_tokens":1240,"completion_tokens":380,"total_tokens":1620,"cost":0.01895},"nymbot":{"balance":"pro","charged_credits":0.162,"charged_sats":16.2,"balance_credits":412.425,"balance_sats":41242.5}}

data: [DONE]
  • Tuba Buba : SSE-kwenya-kwenya-kwenya-kwenya-kwenya-kwenya-kwenya-kwenya.
  • Kino "stream_options": {"include_usage": true} to get the last chunk above, to get the last chunk above, to get the last choices, ya token, ya mali, ya nymbot Kino
  • Kino ya n'ebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebisebis
  • Kukiya Kukiya Kukiya Kukiya Kukiya 401 O.O 402, yaani JSON, yaani ikolimo, yaani ikolimo, yaani ikolimo. data: {"error": {…}} busa busa busa busa busa [DONE].
  • Kuki-ku-ku-ku-ku-ku-ku-ku-ku-ku-ku-ku-ku-ku

cURL

curl -N https://nymbot.ai/api/v1/chat/completions \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "nymbot/auto",
    "stream": true,
    "stream_options": {"include_usage": true},
    "messages": [{"role": "user", "content": "Write a haiku about sats."}]
  }'

Python

import os
from openai import OpenAI

client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])

stream = client.chat.completions.create(
    model="nymbot/auto",
    stream=True,
    stream_options={"include_usage": True},
    messages=[{"role": "user", "content": "Write a haiku about sats."}],
)
for chunk in stream:
    if chunk.choices:
        print(chunk.choices[0].delta.content or "", end="", flush=True)
    elif chunk.usage:
        print("\ncost:", chunk.usage.cost)

JavaScript

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });

const stream = await client.chat.completions.create({
  model: "nymbot/auto",
  stream: true,
  stream_options: { include_usage: true },
  messages: [{ role: "user", content: "Write a haiku about sats." }],
});
for await (const chunk of stream) {
  if (chunk.choices.length) process.stdout.write(chunk.choices[0].delta.content || "");
  else if (chunk.usage) console.log("\ncost:", chunk.usage.cost);
}

Kino

W. W. W. tools n'akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula akhawula tool Tuba Tuba Tuba tool_call_idNymbot akhawuntiwe, akhawuntiwe, akhawuntiwe, akhawuntiwe, akhawuntiwe, akhawuntiwe.

tool_choice Kino "auto", "none", "required" O.O {"type": "function", "function": {"name": "…"}}. The model list marks eyayibisa modules (capabilities.tools(Eko) Eko 400 unsupported_tool Kino nymbot/auto Nymbot-Nymbot-Nymbot-Nymbot-Nymbot-Nymbot-Nymbot-Nymbot

Kino "stream": true, omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo ile omo.

Kino

"choices": [
  {
    "index": 0,
    "message": {
      "role": "assistant",
      "content": null,
      "tool_calls": [
        {
          "id": "call_7d2e",
          "type": "function",
          "function": { "name": "get_invoice_status", "arguments": "{\"invoice_id\":\"a41f\"}" }
        }
      ]
    },
    "finish_reason": "tool_calls"
  }
]

cURL

curl https://nymbot.ai/api/v1/chat/completions \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-5",
    "messages": [{"role": "user", "content": "Has invoice a41f been paid?"}],
    "tools": [{
      "type": "function",
      "function": {
        "name": "get_invoice_status",
        "description": "Look up whether an invoice is paid.",
        "parameters": {
          "type": "object",
          "properties": {"invoice_id": {"type": "string"}},
          "required": ["invoice_id"]
        }
      }
    }]
  }'

Python

import json, os
from openai import OpenAI

client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])

tools = [{
    "type": "function",
    "function": {
        "name": "get_invoice_status",
        "description": "Look up whether an invoice is paid.",
        "parameters": {
            "type": "object",
            "properties": {"invoice_id": {"type": "string"}},
            "required": ["invoice_id"],
        },
    },
}]
messages = [{"role": "user", "content": "Has invoice a41f been paid?"}]

reply = client.chat.completions.create(model="anthropic/claude-sonnet-5", messages=messages, tools=tools)
call = reply.choices[0].message.tool_calls[0]
args = json.loads(call.function.arguments)

messages.append(reply.choices[0].message)
messages.append({"role": "tool", "tool_call_id": call.id, "content": json.dumps({"paid": True})})

final = client.chat.completions.create(model="anthropic/claude-sonnet-5", messages=messages, tools=tools)
print(final.choices[0].message.content)

JavaScript

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });

const tools = [{
  type: "function",
  function: {
    name: "get_invoice_status",
    description: "Look up whether an invoice is paid.",
    parameters: {
      type: "object",
      properties: { invoice_id: { type: "string" } },
      required: ["invoice_id"],
    },
  },
}];
const messages = [{ role: "user", content: "Has invoice a41f been paid?" }];

const reply = await client.chat.completions.create({ model: "anthropic/claude-sonnet-5", messages, tools });
const call = reply.choices[0].message.tool_calls[0];
const args = JSON.parse(call.function.arguments);

messages.push(reply.choices[0].message);
messages.push({ role: "tool", tool_call_id: call.id, content: JSON.stringify({ paid: true }) });

const final = await client.chat.completions.create({ model: "anthropic/claude-sonnet-5", messages, tools });
console.log(final.choices[0].message.content);

Kino / Kino / Kino / Kino

Modeli capabilities.vision busa busa busa image_url ekhaya, ekhaya, ekhaya, ekhaya https:// a / a data:image/…;base64, Url. Enigma 20 imeyili. SVG imeyili akhawuntiwa, n'akhawuntiwa akhawuntiwa akhawuntiwa akhawuntiwa akhawuntiwa 4.096 (400 invalid_image_urlb) Buli detail Kino auto, low O.O high.

Kino nymbot/auto, igolide ya n'ebala ebala ebala ebala ebala ebala ebala ebala ebala ebala ebala ebala ebala ebala ebala ebala capabilities.vision Buli Buli 400 unsupported_content. Imiriya inaweza tu ku message user. Khawula ku n'okuto ku n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto.

Kino ya kukiya, kukiya, kukiya, kukiya, kukiya, kukiya.

cURL

curl https://nymbot.ai/api/v1/chat/completions \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-5",
    "messages": [{
      "role": "user",
      "content": [
        {"type": "text", "text": "What is in this picture?"},
        {"type": "image_url", "image_url": {"url": "https://example.com/receipt.jpg"}}
      ]
    }]
  }'

Python

import base64, os
from openai import OpenAI

client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])

with open("receipt.jpg", "rb") as f:
    data_url = "data:image/jpeg;base64," + base64.b64encode(f.read()).decode()

reply = client.chat.completions.create(
    model="anthropic/claude-sonnet-5",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "What is in this picture?"},
            {"type": "image_url", "image_url": {"url": data_url}},
        ],
    }],
)
print(reply.choices[0].message.content)

JavaScript

import { readFile } from "node:fs/promises";
import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });

const dataUrl = "data:image/jpeg;base64," + (await readFile("receipt.jpg")).toString("base64");

const reply = await client.chat.completions.create({
  model: "anthropic/claude-sonnet-5",
  messages: [{
    role: "user",
    content: [
      { type: "text", text: "What is in this picture?" },
      { type: "image_url", image_url: { url: dataUrl } },
    ],
  }],
});
console.log(reply.choices[0].message.content);

Kino

Modeli capabilities.reasoning waya waya waya waya waya waya waya waya waya reasoning_effort ("minimal", "low", "medium" O.O "high"(Ou) "reasoning": {"effort": "high"}W. W. W. W :thinking Model Name, yaani High Effort. On a model without reasoning the setting is ignored. nymbot/auto, :thinking busa busa busa busa busa busa.

On Anthropic amamodeli ezalimi ya biinyo ya biinyo 1000, 2000, 8,000 okanye 16,000, awukwenye ezalimi max_tokens w. W. W. W. W. W. W. W. tool_choice busa a ngowola, yaani busa busa busa busa busa (busa busa busa busa busa busa busa), yaani busa busa busa busa busa busa busa busa.

Na na na na na message.reasoning_content– – – – delta.reasoning_content ekhaya. Ekhaya. Ekhaya. Ekhaya. Ekhaya. Ekhaya. Ekhaya. Ekhaya. Ekhaya. Ekhaya. Ekhaya. completion_tokens. Enye abala abala abala abala abala abala abala abala abala abala abala abala abala.

cURL

curl https://nymbot.ai/api/v1/chat/completions \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-5",
    "reasoning_effort": "high",
    "messages": [{"role": "user", "content": "Is 2^61 - 1 prime? Show why."}]
  }'

Python

import os
from openai import OpenAI

client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])

reply = client.chat.completions.create(
    model="anthropic/claude-sonnet-5",
    reasoning_effort="high",
    messages=[{"role": "user", "content": "Is 2^61 - 1 prime? Show why."}],
)
message = reply.choices[0].message
print(getattr(message, "reasoning_content", None))
print(message.content)

JavaScript

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });

const reply = await client.chat.completions.create({
  model: "anthropic/claude-sonnet-5",
  reasoning_effort: "high",
  messages: [{ role: "user", content: "Is 2^61 - 1 prime? Show why." }],
});
console.log(reply.choices[0].message.reasoning_content);
console.log(reply.choices[0].message.content);

Tuba Buba

A ntuku ku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku anthropic/claude-sonnet-5:online.

KinoKino
:onlineKukiya Web, Kukiya plugins: [{"id": "web"}]Kino Kino.
:thinkingOkubala okubala okubala; on nymbot/autob. B. B. B. B. B. B. B. B. B. B. B. B. B. B. 400 model_not_found na “no endpoints found”.
:nitro, :floor, :exacto, :extendedBuli, Buli, Buli, Buli, Buli, Buli, Buli

Wonke omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba om 400 invalid_value.

cURL

curl https://nymbot.ai/api/v1/chat/completions \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-5:thinking",
    "messages": [{"role": "user", "content": "Plan a three-day trip to Lisbon."}]
  }'

Python

import os
from openai import OpenAI

client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])

reply = client.chat.completions.create(
    model="anthropic/claude-sonnet-5:thinking",
    messages=[{"role": "user", "content": "Plan a three-day trip to Lisbon."}],
)
print(reply.choices[0].message.content)

JavaScript

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });

const reply = await client.chat.completions.create({
  model: "anthropic/claude-sonnet-5:thinking",
  messages: [{ role: "user", content: "Plan a three-day trip to Lisbon." }],
});
console.log(reply.choices[0].message.content);

Nymbot ya ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuku ntuk

  • Buli: "plugins": [{"id": "web", "max_results": 5}]a, a :online Suffix on model.
  • Buli, Buli: "tools": [{"type": "web_search", "parameters": {"max_results": 5}}]Kino web_search_preview O.O openrouter:web_search. Nymbot kukiwa tu lapho ibe ya kukiwa kufuneka akhawunti ya oku, kukiwa kukiwa app.

max_results on 5 default na max. 10. Nguwo zika nymbot.web_search.sourcesa, a, a title, snippet ne urlKino url_citation abala abala abala.

Kilo n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto n'okuto.

Kino

"nymbot": {
  "balance": "pro",
  "charged_credits": 0.431,
  "charged_sats": 43.1,
  "balance_credits": 411.994,
  "balance_sats": 41199.4,
  "web_search": {
    "sources": [
      { "title": "Lightning Network - Wikipedia", "snippet": "The Lightning Network is a payment protocol...", "url": "https://en.wikipedia.org/wiki/Lightning_Network" }
    ]
  }
}

cURL

curl https://nymbot.ai/api/v1/chat/completions \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-5",
    "plugins": [{"id": "web", "max_results": 5}],
    "messages": [{"role": "user", "content": "What changed in the latest Bitcoin Core release?"}]
  }'

Python

import os
from openai import OpenAI

client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])

reply = client.chat.completions.create(
    model="anthropic/claude-sonnet-5",
    messages=[{"role": "user", "content": "What changed in the latest Bitcoin Core release?"}],
    extra_body={"plugins": [{"id": "web", "max_results": 5}]},
)
print(reply.choices[0].message.content)
for source in reply.model_extra["nymbot"]["web_search"]["sources"]:
    print(source["url"])

JavaScript

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });

const reply = await client.chat.completions.create({
  model: "anthropic/claude-sonnet-5",
  plugins: [{ id: "web", max_results: 5 }],
  messages: [{ role: "user", content: "What changed in the latest Bitcoin Core release?" }],
});
console.log(reply.choices[0].message.content);
for (const source of reply.nymbot.web_search.sources) console.log(source.url);

Kino

OpenAI: OpenAI Agents SDK, OpenAI Agents SDK, OpenAI Agents SDK, OpenAI Agents, Codex.

POST https://nymbot.ai/api/v1/responses -Okuya API Key.

KinoKinoKinoKino
modelKinoYeeKino Tuba TubaBuli Buli Buli
inputstring / arrayYeeA string, au list of items: messages (wola) user, assistant, system, developerb) Buli input_text, input_image ne output_text Buli function_call ne function_call_output Buli Buli input_image Kino image_url i-link okanye i-data URL, ko id faili. reasoning ne web_search_call busa busa; item_reference Buli
instructionsKinoBuliKino
max_output_tokensKinoBuliKukiya Kukiya
temperature
top_p
KinoBuliSampling controls, apho model akwa.
tools
tool_choice
parallel_tool_calls
array, string okanye obj, booleanBuliKino ({"type": "function", "name": …, "parameters": …}(A) web_search O.O web_search_preview Tools-ku Kino busa. Busa busa busa busa busa.
reasoningKinoBuli{"effort": "minimal" | "low" | "medium" | "high"}. xhigh ne max Kino high; none Woo Woo
text.format
response_format
KinoBuliEkhaya ekhaya ekhaya ekhaya ekhaya json_object.
metadataKinoBuliKhawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula khawula
streamBuliBuliKino ekhaya ekhaya ekhaya.
storeBuliBuliBuli. Buli. Buli. Buli. Buli. Buli. Buli. Buli. "store": false.
previous_response_id
conversation
background
obj, obj, objBuliBuli Buli: 400 unsupported_parameter. Buli buli buli buli buli buli buli buli buli buli input Buli

Kino

{
  "id": "resp_8c1e4b0f9a2d4e61",
  "object": "response",
  "created_at": 1790726400,
  "status": "completed",
  "model": "anthropic/claude-sonnet-5",
  "output": [
    {
      "type": "message",
      "id": "msg_2b7f",
      "role": "assistant",
      "status": "completed",
      "content": [{ "type": "output_text", "text": "A Lightning invoice is...", "annotations": [] }]
    }
  ],
  "output_text": "A Lightning invoice is...",
  "usage": {
    "input_tokens": 1240,
    "input_tokens_details": { "cached_tokens": 0 },
    "output_tokens": 380,
    "output_tokens_details": { "reasoning_tokens": 0 },
    "total_tokens": 1620
  },
  "incomplete_details": null,
  "error": null,
  "instructions": null,
  "store": false,
  "previous_response_id": null,
  "metadata": {},
  "nymbot": { "balance": "pro", "charged_credits": 0.162, "charged_sats": 16.2, "balance_credits": 412.425, "balance_sats": 41242.5 }
}

Kuki Kuki Kuki Kuki output Kino function_call Buli call_id, name ne arguments; xala busa a function_call_output Buli Buli call_idOkuto, ekubuto, ekubuto, ekubuto, ekubuto reasoning Buli reasoning_text Kino, Kino, Kino, Kino, Kino status Kino incomplete Kino max_output_tokens Na na na na na na na na na na incomplete_details.reason Kino max_output_tokens O.O content_filter. Ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya nymbot Kino Object.

Streamed, kiliwa kiliwa event: Kino A data: Line A sequence_numberW. W. W. W. response.created, response.in_progress, response.output_item.added, response.content_part.addedKiliwa response.output_text.delta, response.output_text.done, response.content_part.done, response.output_item.doneKino response.completed n’ebisebisi, n’ebisebisi, n’ebisebisi, n’ebisebisi, n’ebisebisi response.incomplete busa, busa busa, busa busa, busa busa, busa busa, busa busa response.failed. Buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli buli response.reasoning_text.delta ne .done. Ngwuma ngwuma ngwuma ngwuma ngwuma ngwuma ngwuma ngwuma ngwuma ngwuma ngwuma ngwuma response.function_call_arguments.delta ne .done.

BuliKino
400Buli model O.O input; previous_response_id, conversation, background Kino item_reference (unsupported_parameter( ); Amasoro ya Buli, Ya Buli.
402, 403, 404, 429, 502, 503Kino

cURL

curl https://nymbot.ai/api/v1/responses \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-5",
    "instructions": "Answer in one short paragraph.",
    "input": "What is a Lightning invoice?"
  }'

Python

import os
from openai import OpenAI

client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])

response = client.responses.create(
    model="anthropic/claude-sonnet-5",
    instructions="Answer in one short paragraph.",
    input="What is a Lightning invoice?",
)
print(response.output_text)

JavaScript

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });

const response = await client.responses.create({
  model: "anthropic/claude-sonnet-5",
  instructions: "Answer in one short paragraph.",
  input: "What is a Lightning invoice?",
});
console.log(response.output_text);

Kino

Anthropic's format, for the Anthropic SDKs and Claude Code. Oku bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula bula.

POST https://nymbot.ai/api/v1/messages — kufuneka API key, bi x-api-key O.O Authorization: Bearer.

Kino anthropic-version ne anthropic-beta abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala abala:

  • Kino – Kino – Kino – Kino claude-sonnet-5 O.O anthropic/claude-opus-5Na na na na na na na na na
  • Kino (-20260514), -latest, version tag ya bi -v1kuki, kuki, kuki, kuki [1m] Kino anthropic/ O.O anthropic. busa busa busa busa busa busa busa busa (claude-haiku-4-5 Kino claude-haiku-4.5).
  • If that still matches nothing, is used the family (Opus, Sonnet, Haiku) if the catalog’s version is the same or newer than the one requested for. If that still matches nothing, is used the family (Opus, Sonnet, Haiku) if the catalog’s version is the same or newer than the one asked for.
  • Kino: Kino: Kino: Kino: Kino: Kino 404 not_found_error.
KinoKinoKinoKino
modelKinoYeeA kataloogu model id, okanye Anthropic model igama.
max_tokensKinoYeeKukiya Kukiya
messagesTubaYeeuser ne assistant kino, kino text, image (base64 okanye URL ekhaya), tool_use ne tool_result Kino thinking ezimera ezimera ezimera ezimera ezimera ezimera ezimera ezimera ezimera ezimera ezimera
systemstring / arrayBuliSystem prompt, kama string okanye text blocks.
temperature
top_p
KinoBuliSampling controls, apho model akwa. top_k Kukiya Kukiya
stop_sequencesKino: StringsBuliTeksti ekugwimi. Ekugwimi 4 ekugwimi, ekugwimi 256 ekugwimi.
tools
tool_choice
busa, busaBuliTools name, description ne input_schemaa. a. web_search Server Tool-ku Kino; Anthropic's omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba omukuba unsupported_tool. tool_choice Kino auto, any, tool O.O noneKino disable_parallel_tool_use.
thinkingKinoBuli{"type": "enabled", "budget_tokens": 8192}, {"type": "adaptive"} O.O {"type": "disabled"}. Ekubuto ekubuto ekubuto ekubuto ekubuto ekubuto ekubuto ekubuto ekubuto ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekubato ekub output_config.effortNa na na na na na na
streamBuliBuliStream ku Anthropic's event format.
metadataKinoBuliOnyusane, Onyusane

Kino

{
  "id": "msg_01c7a2f93e5b4d08",
  "type": "message",
  "role": "assistant",
  "model": "anthropic/claude-sonnet-5",
  "content": [{ "type": "text", "text": "A Lightning invoice is..." }],
  "stop_reason": "end_turn",
  "stop_sequence": null,
  "usage": {
    "input_tokens": 1240,
    "output_tokens": 380,
    "cache_read_input_tokens": 0,
    "cache_creation_input_tokens": 0
  },
  "nymbot": { "balance": "pro", "charged_credits": 0.162, "charged_sats": 16.2, "balance_credits": 412.425, "balance_sats": 41242.5 }
}

content Buli tool_use Kino a thinking Kino signature Buli stop_reason Kino end_turn, max_tokens, tool_use O.O refusalkuki, kuki finish_reason Kino Tuba Tuba; stop_sequence Buli null, yaani idio stop sekwensi yawo ekubalimi. input_tokens busa busa busa busa busa busa busa busa busa busa busa busa busa busa nymbot Objet & Objet X-Nymbot-Cost-Sats Kino

Kino, kino, kino, kino, kino message_start, content_block_start, ping, content_block_delta (text_delta, input_json_delta O.O thinking_delta), content_block_stop, message_delta ekhaya, ekhaya, ekhaya, ekhaya nymbot Koste objekti, na message_stopa. a. ping kuki, kuki, kuki, kuki, kuki, kuki, kuki tool_use block ya busa ya busa ya busa input_json_delta.

Errors on this endpoint use Anthropic's format: {"type": "error", "error": {"type": "not_found_error", "message": "…"}}Kino 402 billing_error© Copyright - 2019 - 2019 - 2019 - 2019 503 overloaded_error. Ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya ekubalya error Kino

cURL

curl https://nymbot.ai/api/v1/messages \
  -H "x-api-key: $NYMBOT_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "What is a Lightning invoice?"}]
  }'

Python

import os
import anthropic

client = anthropic.Anthropic(base_url="https://nymbot.ai/api", api_key=os.environ["NYMBOT_API_KEY"])

message = client.messages.create(
    model="claude-sonnet-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "What is a Lightning invoice?"}],
)
print(message.content[0].text)

JavaScript

import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({ baseURL: "https://nymbot.ai/api", apiKey: process.env.NYMBOT_API_KEY });

const message = await client.messages.create({
  model: "claude-sonnet-5",
  max_tokens: 1024,
  messages: [{ role: "user", content: "What is a Lightning invoice?" }],
});
console.log(message.content[0].text);

Kino

Oyaani bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi bubuzi

POST https://nymbot.ai/api/v1/messages/count_tokens — Kube API key. Free.

Ebibala ebibala KinoKino max_tokens; akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa akwa.

Kino

{ "input_tokens": 318 }

cURL

curl https://nymbot.ai/api/v1/messages/count_tokens \
  -H "x-api-key: $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5",
    "messages": [{"role": "user", "content": "What is a Lightning invoice?"}]
  }'

Python

import os
import anthropic

client = anthropic.Anthropic(base_url="https://nymbot.ai/api", api_key=os.environ["NYMBOT_API_KEY"])

count = client.messages.count_tokens(
    model="claude-sonnet-5",
    messages=[{"role": "user", "content": "What is a Lightning invoice?"}],
)
print(count.input_tokens)

JavaScript

import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({ baseURL: "https://nymbot.ai/api", apiKey: process.env.NYMBOT_API_KEY });

const count = await client.messages.countTokens({
  model: "claude-sonnet-5",
  messages: [{ role: "user", content: "What is a Lightning invoice?" }],
});
console.log(count.input_tokens);

Kino

Wonke model na generator API akhawuntiwe, ekubali. Ekubali akhawuntiwe ekubaliwe ekubaliwe ekubaliwe ekubaliwe ekubaliwe ekubaliwe ekubaliwe ekubaliwe.

GET https://nymbot.ai/api/v1/models — No key needed. Ekubuto 5 min.

GET /api/v1/models/{id} Tuba 1 Tuba

KinoKinoKinoKino
typeKino (Query)Bulichat (Enyele) image, video, audio, embedding O.O all. . . . . . . . image,video.

Onyusane, onyusane, onyusane, onyusane, onyusane, onyusane. balance ekubali ekubali ekubali ekubali ekubali ekubali nymbot_key Oko n’ebala ebala ebala ebala ebala ebala. created onani 0 xa katakololi akolokolo akolokolo. A model akolokolo akolokolo akolokolo akolokolo per_request mu kifo kya.

nymbot/auto Kino: Kino: Kino: Kino variablea, a routes kuki, kuki, kuki, kuki, kuki, kuki

GET /api/v1/models/{id} i-akhawula ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile ebile.

Kino

{
  "object": "list",
  "data": [
    {
      "id": "anthropic/claude-sonnet-5",
      "object": "model",
      "type": "chat",
      "owned_by": "anthropic",
      "name": "Claude Sonnet 5",
      "created": 0,
      "context_length": 1000000,
      "max_output_tokens": 64000,
      "architecture": { "input_modalities": ["text", "image"], "output_modalities": ["text"] },
      "supported_parameters": ["max_tokens", "temperature", "tools", "tool_choice", "reasoning", "response_format", "stop"],
      "capabilities": { "vision": true, "video": false, "tools": true, "reasoning": true, "web_search": true },
      "balance": "pro",
      "pricing": {
        "type": "per_token",
        "currency": "USD",
        "input_per_1M_tokens": 4.725,
        "output_per_1M_tokens": 23.625,
        "cache_read_per_1M_tokens": 0.4725,
        "sats_input_per_1M_tokens": 4038,
        "sats_output_per_1M_tokens": 20192
      },
      "description": "...",
      "nymbot_key": "claude-sonnet"
    }
  ]
}

Kino

  • Kino Kino capabilities (accepts_image_url, requires_image_url, edita) Buli per_generation.
  • Kino Kino max_duration_seconds ne resolutionsKino per_second Kinshasa
  • Kino Kino audio_type speech O.O transcriptionKino per_1k_chars O.O per_minute.
  • Buli Kino dimensions, context_length, max_inputs ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide

Kino "estimated": true ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide ekolide type Kino 400.

cURL

curl "https://nymbot.ai/api/v1/models?type=chat"

Python

import requests

models = requests.get("https://nymbot.ai/api/v1/models", params={"type": "chat"}).json()["data"]
for m in models:
    print(m["id"], m["balance"], m["pricing"].get("input_per_1M_tokens"))

JavaScript

const res = await fetch("https://nymbot.ai/api/v1/models?type=chat");
const { data } = await res.json();
for (const m of data) console.log(m.id, m.balance, m.pricing.input_per_1M_tokens);