Znalostní základna Vývojáři
Oheň přehled
Modely, generátory a rovnováhy, které používáte v aplikaci, pocházejí z vašeho vlastního kódu. API mluví formáty OpenAI a Anthropic, takže většina nástrojů a SDK funguje změnou základní URL a klíče.
Tato stránka je pro usnadnění přeložena strojově. Platí anglický originál.
Co je to oheň
HTTP API na nymbot.ai který odpovídá na stejné požadavky, které již klient OpenAI nebo Anthropic odesílá.
- Chatové dokončení, které Odpověď oheň a Antropické poselství, s streamováním, nástroji, obrázky, uvažováním a vyhledáváním na webu, pro každý model v Katalogy a pro vlastní auto-routing Nymbotu.
- Obrázky, Videa, řeč, transkripce a Embeddingové.
- Vaše rovnováha, Lightning top-up ke stažení, Automatické top-upy z vaší peněženky a a Historie Kolik každá žádost stojí.
Platí se ze stejných dvou rovnováhy Neexistuje žádný předplatný a žádný bezplatný příspěvek na API: každá žádost je zaplacena z kreditů, které jste zakoupili.
To, co API nedělá, je přidat něco z vlastního Nymbotu. Vaše zprávy jdou do modelu, jak jste je poslali: žádný systémový pop-up Nymbotu, žádná paměť, žádné datum nebo jazykové náznaky.
Základní URL
| Používejte | Základní URL |
|---|---|
| OpenAI SDK a nástroje kompatibilní s OpenAI | https://nymbot.ai/api/v1 |
| Antropické SDK a Claude Kód | https://nymbot.ai/api (SDK přidává /v1/messages sám o sobě) |
Každý koncový bod žije pod /api/v1/Neznámá cesta se vrací 404 a známá cesta nazvaná špatnou metodou se vrátí 405Stejně jako JSON.
API odpovídá na křížové požadavky z jakéhokoli webu, takže prohlížečová stránka ji může volat. Cokoliv, co odesíláte do prohlížeče, může číst každý, kdo ji otevře, takže to udělejte pouze s klíčem, který má malou HlavaKoncové body podepsané s vaším nym (klíče, souhrn účtu, NWC auto-top-up a vrácení peněz) jsou výjimkou: v prohlížeči odpovídají pouze na stránky Nymbotu. Podepsání žádosti o účet.
Odeslat každé JSON tělo s Content-Type: application/jsonJakýkoliv jiný typ je odmítnut s 415Jedná se o jednoduchý formát HTML nebo text/plain žádost z jiného webu nemůže dosáhnout rozhraní API.
-H "Content-Type: application/json" Spolu s -d.
Ohnivé klíče
Klíče jsou vytvořeny v aplikaci.Otevřít Oheň v bočním panelu webové aplikace nebo v menu na Androidu a iOS a klepněte na Vytvořte klíčDejte mu název a pokud chcete, čepici a datum vypršení platnosti.
Klíč se zobrazí jednou. Před uzavřením listu jej zkopírujte na bezpečné místo: Nymbot si ponechá pouze otisk prstu, takže vám ho nemůže znovu ukázat. Ztracený klíč nelze obnovit; zrušte jej a vytvořte další.
Klíč vypadá jako sk-nymbot- následuje 43 písmen, číslic, tabulek a podhodnocení. Aplikace uvádí každý klíč podle svého jména a krátkého nápadu, jako je:
sk-nymbot-Qm7x…c2Lw.
- Klíč patří vašemu nym. To utratí váš zůstatek, a pouze váš nym může vytvořit, změnit nebo zrušit.Kdo má klíč může utratit s ním, takže to zacházet jako heslo.
- Kapsy jsou v sázce. Klíč může mít výdajovou hranici a hranici lze resetovat každý den, každý týden ( pondělí) nebo každý měsíc (první), v 00:00 UTC. Počítá obě zůstatky, standardní úvěr jako 10 sats a Pro úvěr jako 100, takže to znamená totéž bez ohledu na to, jaký zůstatek žádost utrácí.
403key_limit_reached, i kdyby odpověď přišla pod kapotou; chyba říká, kolik zbývá a kdy se kapota resetuje.max_tokensPožadavek je účtován za to, co skutečně stojí, a to se počítá proti limitu, takže pokud poskytovatel hlásí více žetonů, než bylo umístěno stranou, poslední žádost, která se hodí, může klíč trochu přeskočit jeho limitu; další je pak zamítnuta. - Vyčerpaná kapsa pouze zastaví výdaje. Klíč ve svém krytu může stále kontrolovat zůstatek, číst jeho historii, seznam modelů, počítat žetony, nahrát a zkontrolovat video, které již začalo.
- Expirace je volitelná. Po nastavení data klíč přestane pracovat.
- Zrušení je okamžité a konečné. Zrušený klíč selže v další žádosti. Zůstává v seznamu označený jako zrušený, takže jeho historie výdajů stále dává smysl.
- Můžete mít až 25 aktivních klíčů, z nichž každý má své vlastní jméno.
Stejný list zobrazuje výdaje každého klíče v tomto období a celkem, kdy byl naposledy použit, jak vaše zůstatky, tak vaše nedávné požadavky na API. Řízení klíčů.
Ověření žádosti
Odeslat klíč do kteréhokoli z těchto nadpisů. Jsou ekvivalentní, takže použijte, co váš klient odesílá ve výchozím nastavení:
| Headerová | Odeslat |
|---|---|
Authorization: Bearer sk-nymbot-… | OpenAI SDK, většina nástrojů, Claude Code s ANTHROPIC_AUTH_TOKEN |
x-api-key: sk-nymbot-… | Antropické SDK |
api-key: sk-nymbot-… | Zákazníci typu Azure |
Chybějící, neznámé, zrušené nebo vypršené klíče 401a s kódem
missing_api_key, invalid_api_key, revoked_api_key nebo
expired_api_keySeznamování modelů, zvukových modelů a hlasů a platebních metod nepotřebuje klíč.
Obrázky, video, řeč, transkripce a vkládání lze také zaplatit za jednu žádost najednou přes Lightning bez klíče vůbec: odeslat žádost bez jednoho a zaplatit fakturu v 402 Odpověď.cz Platba na vyžádání bez klíče.
Správa klíčů, shrnutí účtu a automatické top-upy jsou výjimkou: berou podpis z vašeho nym místo klíče, takže uniklý klíč nemůže vytvořit více klíčů. Podepsání žádosti o účet.
Vaše první žádost
Klíč vložte do proměnné prostředí a pak se zeptejte modelu na něco. NYMBOT_API_KEY.
cURL
export NYMBOT_API_KEY="sk-nymbot-..."
curl https://nymbot.ai/api/v1/chat/completions \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "nymbot/auto",
"messages": [{"role": "user", "content": "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"],
)
reply = client.chat.completions.create(
model="nymbot/auto",
messages=[{"role": "user", "content": "What is a Lightning invoice?"}],
)
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: "nymbot/auto",
messages: [{ role: "user", content: "What is a Lightning invoice?" }],
});
console.log(reply.choices[0].message.content);
nymbot/auto je vlastní směrování Nymbotu, zaplacené ze standardního zůstatku. anthropic/claude-sonnet-5, použít tento model z Pro rovnováhy. Seznam modelů Zobrazit všechny ID.
Kolik stojí žádost
API fakturuje přesně tak, jak aplikace dělá.
- A jaká rovnováha.
nymbot/autoVydělávejte si Standardní zůstatek (10 sázek na úvěr). každý jiný model chatu tráví Pro standardní obrazový generátor a standardní hlas utratí standardní kredity; každý jiný generátor utratí Pro. Embeddings utratí standardní kredity. Transcription utratí standardní kredity, když standardní zůstatek může pokrýt, a Pro kredity jinak. - Jak moc . Žádost o chat je měřena na žetony, které model skutečně četl a napsal, při zveřejněných sazbách poskytovatele. Tato cena má 5% poplatek a je pak vynásobena 1,5, takže platíte 1,575krát cenu seznamu poskytovatele. Je převedena na sázku za živou cenu Bitcoin a účtována v tisícinách úvěru. Pro obrázky, video a řeč jsou ceněny za generaci, za sekundu nebo za znak a transkripci za sekundu zvuku, se stejným poplatkem a marží. Standardní obrázek je plochý 5 standardních kreditů a standardní hlas je plochý 3.
- A to minimálně. Každá měřená žádost, která běží, stojí nejméně 0,05 kreditu: polovina sedí na standardní zůstatek, 5 sázek na Pro.
- Držte a pak se usadit. Před spuštěním požadavku je z vašeho zůstatku drženo co nejvíce nákladů, na základě toho, co jste poslali a co nejvíce tokenů může napsat. Text mimo obyčejný ASCII je veliký z jeho UTF-8 bajtů a ASCII číslice a bodová čísla se počítají jako jeden token, takže text v jakémkoli skriptě, kódu a číslech se drží v plném rozsahu. Držení je v celých kreditech, alespoň jednom, takže každá žádost potřebuje alespoň 10 bezplatných sázek na standardní zůstatek nebo 100 sázek na Pro, aby mohla začít. Pouze skutečná cena je účtována; zbytek je uvolněn, když skončí.
402insufficient_balanceV případě, že je skutečná cena vyšší, než může zůstatek zaplatit, celá zůstatek se vezme, zbytek je dlužen (owed_satsV tomnymbotobjekt, a negativní zůstatek). Co je dlužné je zaplaceno nejdříve z následujících kreditů, které dosáhnou této zůstatky. Dokud není zaplaceno, nic na této zůstatku nemůže být vynaloženo: ne API, odpovídá v aplikaci, převod nebo dárek. - Není dostatek úvěrů. Pokud zůstatek nemůže pokrýt držení, žádost je zamítnuta
402Předtím, než se něco spustí, chybová zpráva říká, která zůstatek je krátká, kolik sázek požadavek potřebuje a kolik je zdarma.max_tokensTo znamená menší držení. - a neúspěchy. Neúspěšná žádost nestojí nic, pokud poskytovatel neúčtuje za práci, kterou provedl před neúspěchem, nebo webové vyhledávání nebo
nymbot/autoKontrola úkolů již byla spuštěna; pak to je to, co platíte, nejméně 0,05 kreditu. Průtok, který odříznete, je účtován za tokeny, které poskytovatel hlásí: Nymbot pokračuje v čtení průtoku poskytovatele po dobu až 25 sekund poté, co opustíte, abyste získali tento počet. - Webové vyhledávání Náklady $ 0,008 vyhledávání, převedené na sats, pokaždé, když vyhledávání proběhlo, ať už model pak odpovídá nebo selže.
Každá odpověď uvádí, kolik stojí. JSON odpovědi nesou nymbot objekt se zůstatkem, ze kterého byl zaplacen, poplatek v kreditech a sázkách a to, co zůstává:
Náklady na objekt
"nymbot": {
"balance": "pro",
"charged_credits": 0.162,
"charged_sats": 16.2,
"balance_credits": 412.425,
"balance_sats": 41242.5
}
Placené odpovědi také nesou tyto záhlaví, což je místo, kde hledat náklady na odpověď, která není JSON, například řeč:
| Headerová | Význam |
|---|---|
X-Nymbot-Cost-Sats | Kolik tato žádost stojí, v SATA. |
X-Nymbot-Balance-Sats | Co zůstává na zůstatku, z něhož bylo zaplaceno, v sázkách. |
X-Request-Id | Identifikátor požadavku, při každé odpovědi. Citujte jej, pokud kontaktujete podporu. |
Sazby na milion tokenů, již včetně poplatku a marže, jsou v
Seznam modelů v dolarech a sázkách, a na
Cenový listPokud cenu Bitcoinu nelze přečíst, vrátí se zaplacené požadavky 503 price_unavailable s
Retry-After: 60 Spíše než hádat.
Chyby
Každá chyba má stejný tvar, který klient OpenAI již chápe. code je stabilní jméno, na které se můžete shodovat; message Je to pro lidi a může se změnit.
Chybné tělo
{
"error": {
"message": "This request needs up to 200 sats (2 credits) on your Pro balance, and 40 sats are free. Catalog models spend the Pro balance. Top up in the Nymbot app or with POST /api/v1/topup/create/btc-lightning.",
"type": "insufficient_quota",
"code": "insufficient_balance",
"param": null,
"balance": "pro",
"required_sats": 200,
"balance_sats": 40
}
}
| statusu | Kdy |
|---|---|
400 invalid_request_error | Tělo není platné JSON (invalid_json, chybí požadované pole (missing_required_parameter), hodnota je nesprávná, nebo požadavek požaduje něco, co model nebo koncový bod nedělá, například nástroje na nymbot/auto (unsupported_tool). param Jmenujte pole. také upstream_rejected pokud poskytovatel žádost zamítl. |
401 authentication_error | Klíč je chybějící, neznámý, zrušený nebo vypršený, nebo podepsaná žádost je neplatná nebo znovu použita. |
402 insufficient_quota | Zůstatek nemůže pokrýt požadavek. kód insufficient_balance, s balance, required_sats a balance_sats. |
403 permission_error | Požadavek se neshoduje s klíčovým číslem (key_limit_reached, s limit_sats, used_sats a reset_at), nebo účet nemusí používat službu (account_denied). |
404 not_found_error | Neznámá cesta (unknown_endpoint), model, který neexistuje (model_not_found), nebo neznámý klíč, faktura nebo video. |
405 | Cesta existuje, ale ne s touto metodou (method_not_allowed) na Allow Header popisuje metody, které používá. |
413 | Tělo nebo soubor je příliš velký (payload_too_large, file_too_large) nebo záznam je příliš dlouhý (audio_too_long) vidět Limity. |
415 invalid_request_error | Tělo není vysíláno jako application/json (nebo v případě, že se jedná o koncové body, multipart/form-data): unsupported_media_type. |
422 | Hlas a jazyk, které nejdou dohromady v textu k řeči (voice_language_mismatch, unsupported_language). |
429 rate_limit_error | Příliš mnoho požadavků na tento klíč, z této adresy nebo s pověřením, které nebylo možné ověřit (rate_limit_exceeded, nebo poskytovatel je sazba-limitovat (upstream_rate_limitedPočkejte na vteřiny v Retry-After. |
500 api_error | Něco se pokazilo na straně Nymbotu (internal_error). |
502 api_error | Poskytovatel neodpovídá (upstream_error(nebo by se nemohl vytvořit žádný bleskový účet)invoice_unavailable). |
503 api_error | Poskytovatel je přetížen (upstream_overloaded, cena Bitcoinu nelze číst (price_unavailable) nebo část služby je dolů (service_unavailable, media_hosting_unavailable). Retry-After Říká, kdy to zkusit znovu, kde je to známo. |
Dvě výjimky :
/api/v1/messagesodpovídá ve formátu chyby společnosti Anthropic, protože to je to, co klienti společnosti Anthropic analyzují:{"type": "error", "error": {"type": "authentication_error", "message": "…"}}Typ následuje podle stavu:invalid_request_error,authentication_error,billing_error(402),permission_error,not_found_error,request_too_large,rate_limit_error,api_errornebooverloaded_error(503).- Požadavek na streamování, který selže před prvním bajtem, dostane obyčejnou chybu JSON se stavem výše, nikoliv s průtokem událostí.
Chybové zprávy nikdy neobsahují vnitřní údaje jiné služby. Chyba poskytovatele je přepracována dříve, než se k vám dostane.
Limity
| Omezení | hodnota |
|---|---|
| Požadavky na klíč | 120 Kč za minutu, a to 429 s Retry-After. |
| Žádosti bez klíče | 120 za minutu na adresu, pro model, audio a platební metody, vrácení tokenových kontrol a placených koncových bodů volání bez klíče nebo platby. 429 s Retry-After. |
| Neúspěšná autentizace | 30 minut na adresu pro klíče, podpisy, platební pověření a tokeny pro vrácení peněz, které neověřují. 429 s Retry-After Potvrzení jsou kontrolovány před tím, než je tělo přečteno. |
| Nové klíče | 60 na hodinu na nym a 120 na hodinu na adresu. |
| Top-up faktury | 60 na hodinu na nym a 120 na hodinu na adresu. |
| Připojení NWC Wallet | 10 za hodinu za nym a 30 za hodinu za adresu. peněženka relé musí používat wss:// na standardním přístavu. |
| Vrácení tokenů | 60 žádostí za minutu. |
| Adresy | IPv6 adresa se počítá jako její celek /64 v každém adresním limitu a IPv4 mapovaná IPv6 adresa jako její IPv4 adresa. |
| JSON žádost tělo | 4 MB; 64 KB pro požadavky podepsané pomocí nym. |
| Multipart žádost tělo (uploads) | 32 MB. Obraz k úpravě může být až 20 MB, zvukový soubor až 25 MB. Na maximálně 64 částech, každá s maximálně 8 KB hlaviček částí a limitem 1 až 70 znaků; jinak 400 invalid_multipart. |
| Obrázky v jedné chat žádosti | 20 Každý z nás je https:// nebo http:// odkaz na veřejný hostitel, nebo data:image/… a URL. |
| Obrázky podle požadavků generace | 1 až 4 (n) |
| Výstupní tokeny | Vlastní rozměry modelů. více max_tokens Znižuje se, ale není odmítnut. |
| Vstupní řeč | 800 znaků pro standardní hlas, 2000 pro Aura 2. |
| transkripce | 30 minut zvuku, 25 MB. delší nahrávání je zakázáno 413 a není obviněna, i když její délka je známa jen tehdy, když ji slyší Šepot. |
| Embeddingové | 100 Kč na žádost. |
| Video práce | Po 24 hodinách od jejich předložení se vzdává renderování po jedné hodině při maximálně 10 renderování najednou na nym. |
| Chci dějiny | Po dobu 90 dnů. |
| Aktivní klíče pro nym | Pouze posledních 50 zrušených klíčů je uchováno. |
Odkaz na obrázek musí poukázat na veřejný hostitel: adresa na soukromé nebo místní síti, nebo na vlastních stránkách Nymbotu, je odmítnuta.
Co vidí oheň
Rozhraní API není soukromé tak, jak jsou aplikace, a stojí za to být přesný o tom, jak.
- Není šifrovaný od konce do konce. V aplikacích je na vašem zařízení zapečetěna zpráva na klíče, které pouze Nymbot drží a cestuje jako Dárkový WrapAPI žádost je obyčejná HTTPS: je šifrována na cestě do Nymbotu a server Nymbotu si ji přečte, aby ji zvládl.
- Přihlášky a odpovědi nejsou ukládány. Co je uchováno je faktura: pro každou žádost čas, model, druh, token počítá, náklady, zůstatek, klíč a zda se to podařilo, po dobu 90 dnů, což je to, co Chci dějiny Záznam o používání stejné žádosti (čas, typ, model, počty tokenů, náklady, trvání a zda použil webové vyhledávání nebo uspěl) je také uchováván po dobu 90 dnů, spolu s vlastní aplikací.
- Vše ostatní drženo pro nym je malé a uvedené zde. Ohnivé klíče jsou uloženy jako hash, nikdy klíč, s jejich jménem, krátkým náznakem, výdajovou kapotou, resetním obdobím, uplynutím doby platnosti a kdy byly vytvořeny a naposledy použity; pouze nejnovější 50 zrušených klíčů jsou uchovávány. Automatický top-up Připojení peněženky je ukládáno zašifrované, s jeho prahem, částkou a výsledkem posledního nahrávání. Video práce jsou uchovávány po dobu 24 hodin. Požadavky zaplacené za hovor zanechávají pouze hash platby Lightning po dobu 7 dnů a hashovaný token vrácení peněz po dobu 30 dnů, spojený s žádným nim. Poplatky, které nemohly být pokryty zůstatkem, jsou zachovávány jako dlužné, dokud je top-up nezaplatí.
- Odstranění aplikace ho odstraňuje. A zařízení WIPE zruší a vymaže každý klíč API a vymaže historii dotazů, záznamy o používání, připojení peněženky a videozáznamy.
- Poskytovatel modelu vidí vaši žádostKatalogové modely běží u svých tvůrců; standardní trasy a vkládání běží na Cloudflare.
- Generovaná média jsou veřejná. Obrázky a videa doručené jako odkazy jsou nahrány do veřejných hostitelů souborů Blossom, kde je adresa souboru jeho hashem.
b64_jsona vytvořený obrázek se vrátí v odpovědi a nikdy se neukládá. - Tak jsou obrázky, které dáváte generátoru. Obrázek, na který nahrajete
Editnebo poslat jako A
data:URL v generátoruimage_url, je nahrána na veřejný Blossom hostiteli nejprve tak, že generátor může vyzvednout, a totéž platí pro to.https://Obrázky v požadavku na chat jdou k poskytovateli modelu, nikoliv k Blossom. - Klíč je připojen k vašemu nym. Vše, co klíč utratí, pochází z rovnováhy vašeho nimu, takže použití API není AnonymníPokud chcete, aby bylo použití API odděleno od vašeho každodenního nym, vytvořte klíče odděleného nym s vlastní rovnováhou.
Pokud potřebujete ochranu aplikací, použijte aplikace. API je k dispozici, když potřebujete modely ve vlastních nástrojích.
Každý koncový bod
| Konečný bod | Co to dělá | Authová |
|---|---|---|
GET /api/v1/models | Seznam modelůs cenami | žádný |
POST /api/v1/chat/completions | Chatové dokončení | klíč |
POST /api/v1/responses | Odpověď oheň | klíč |
POST /api/v1/messages | Antropické poselství | klíč |
POST /api/v1/messages/count_tokens | Odhady vstupních tokenů | klíč |
POST /api/v1/images/generations | Generuje obrazy | klíč nebo blesk |
POST /api/v1/images/edits | Editovat obrázek | klíč nebo blesk |
POST /api/v1/videos, GET /api/v1/videos, GET /api/v1/videos/{id} | Začíná, seznamuje a kontroluje videa | klíč nebo blesk Začněte s jedním |
POST /api/v1/audio/speech | Text k projevu | klíč nebo blesk |
GET /api/v1/audio/models, GET /api/v1/audio/voices | Audio modely a hlasy | žádný |
POST /api/v1/audio/transcriptions, POST /api/v1/audio/translations | Mluvit do textu a anglicky | klíč nebo blesk |
POST /api/v1/embeddings | Embeddingové | klíč nebo blesk |
GET /api/v1/credits/balance (nebo POST) | Obě rovnováhy | klíč |
GET /api/v1/topup/payment-methods | Způsoby placení | žádný |
POST /api/v1/topup/create/btc-lightning | Lightning faktura | klíč |
GET /api/v1/topup/status/{invoice_id} | Zkontrolujte a kreditujte | klíč |
GET /api/v1/queries/history | Kolik stojí každá žádost | Klíč nebo nym |
GET /api/v1/account | Účetní shrnutí | Nym |
/api/v1/keys | Vytváří, mění a zruší klíče | Nym |
/api/v1/nwc-auto-topup | Automatické top-upy | Nym |
GET /api/v1/l402/refunds, POST /api/v1/l402/refunds/redeem | Kontrola nebo výkup tokenu na vrácení peněz | Vrácení tokenu; nym to redeem |
“Nym” znamená žádost podepsanou vaším klíčem Nostr, popsanou v Podepsání žádosti o účetPro nástroje, které již tyto formáty hovoří, viz Nástroje a SDK, a pro kódovací agenty, jako je Claude Code, Codex a Cline, viz Nástroje kódování.