Liikuge sisu juurde
Tagasi Nymboti juurde

Teadmistebaas Arendajad

Tulekahju ülevaade

Mudelid, generaatorid ja tasakaal, mida rakenduses kasutate, pärinevad teie enda koodist. API räägib OpenAI ja Anthropic formaatidest, nii et enamik tööriistu ja SDK-sid töötavad aluse URL-i ja võtme muutmisega.

Mis on põletik

HTTP API kasutamine nymbot.ai mis vastab samadele päringutele, mida OpenAI või Anthropic klient juba saadab.

See on makstud sama kahest tasakaalu kui rakendus, samadel hindadel. API-l ei ole tellimust ega tasuta lisatasu: iga taotlus makstakse teie ostetud krediitidest.

Mida API ei tee, on lisada midagi Nymboti omast. Teie sõnumid lähevad mudelile, kui saate need saata: ei ole Nymboti süsteemi juhendit, ei mälu, ei kuupäeva ega keele vihjeid.

Põhilised URL

KasutagePõhiline URL
OpenAI SDK ja OpenAI ühilduvad tööriistadhttps://nymbot.ai/api/v1
Antropilised SDK-d ja Claude koodhttps://nymbot.ai/api (SDK lisab /v1/messages iseenesest)

Iga lõpuosa elab all /api/v1/Tundmatu tee tagasi 404 ja teadaolev tee, mida nimetatakse vale meetodiga, naaseb 405Mõlemad on JSON.

API vastab ükskõik millisest saidist pärinevatele päritolutaotlustele, nii et brauseri leht saab seda helistada.Mida iganes sa saadad brauserisse, saab lugeda igaüks, kes seda avab, nii et tehke seda ainult võtmega, millel on väike peaLõpppunktid, mis on allkirjastatud teie nimmiga (võti, konto kokkuvõte, NWC auto-top-up ja tagasimakse lunastamine) on erand: brauseris vastavad nad ainult Nymboti enda saitidele. Konto allkirjastamise taotlused.

Saada iga JSONi keha koos Content-Type: application/jsonKõik muud tüübid on keeldunud 415, nii et lihtne HTML-vorm või text/plain Teisest saidist pärit taotlus ei jõua API-le. -H "Content-Type: application/json" Koos koos -d.

Tulekahju võtmed

Võtmed on tehtud rakenduses.Avatud Tulekahju veebirakenduse külgriba või menüüs Androidis ja iOS-is ning puudutage Loo võtiAnna talle nimi ja, kui soovite, kaane ja aegumiskuupäev.

Kopeerige see turvalises kohas enne lehe sulgemist: Nymbot säilitab ainult selle sõrmejälje, nii et see ei saa seda teile uuesti näidata.

Võti näeb välja nagu sk-nymbot- Seejärel 43 tähte, numbreid, tabeleid ja allmärke. rakendus loetleb iga võtme oma nime ja lühikese vihje järgi, näiteks: sk-nymbot-Qm7x…c2Lw.

  • Võti kuulub teie nimele. See kulutab teie saldo ja ainult teie nimm saab seda teha, muuta või tühistada.
  • Kapid on käekäigul. Võtmel võib olla kulutuste ülemmäär ja ülemmäär saab iga päev, iga nädal (pühapäev) või iga kuu (esimene), kell 00:00 UTC. See loeb mõlemad tasakaalud, standardkrediit kui 10 sats ja Pro krediit kui 100, nii et see tähendab sama sõltumata tasakaalust, mida taotlus kulutab. 403 key_limit_reached, isegi kui vastus oleks tulnud kapi alla; viga ütleb, kui palju on jäänud ja millal kapi taastatakse. max_tokens Taotlusele nõutakse seda, mida see tegelikult maksab ja mis loeb kapi vastu, nii et kui pakkuja teatab rohkem tokene, kui need on eraldatud, võib viimane taotlus, mis sobib, võtta võtme veidi üle selle kapi; järgmine lükatakse tagasi.
  • Kasutatud kapp lihtsalt peatab kulutused. Võti oma kapis võib ikka kontrollida tasakaalu, lugeda selle ajalugu, loetleda mudeleid, loendada žetoneid, top up ja kontrollida videot, mida ta juba alustas.
  • Expiry on vabatahtlik. Pärast kuupäeva, mille olete seadistanud, peatub võtme töö.
  • Tagasivõtmine on kohene ja lõplik. Tühistatud võtme järgmine taotlus ebaõnnestub. see jääb loendisse, mis on märgistatud tühistatud, nii et selle kulude ajalugu on endiselt mõttekas.
  • Teil võib olla kuni 25 aktiivset võtmet, millest igaühel on oma nimi.

Sama leht näitab iga võtme kulusid sel perioodil ja kokku, kui seda viimati kasutati, nii teie saldode kui ka teie hiljutiste API taotluste kohta. Võtmete haldamine.

Taotluse autentimine

Saada võti ükskõik millises pealkirjas.Nad on samaväärsed, nii et kasutage seda, mida teie klient vaikimisi saadab:

Headeridsaadetud
Authorization: Bearer sk-nymbot-…OpenAI SDK, enamik tööriistu, Claude Code koos ANTHROPIC_AUTH_TOKEN
x-api-key: sk-nymbot-…Antropilised SDK-d
api-key: sk-nymbot-…Azure'i stiilis kliendid

Puudunud, tundmatu, tühistatud või aegunud võtme tagastamine 401Koos koodiga missing_api_key, invalid_api_key, revoked_api_key või expired_api_keyMudelite, helimudelite ja häälte ning makseviiside loetelu ei vaja võtmeid.

Pildid, videod, kõned, transkriptsioonid ja sisseehitused saab maksta ka ühe taotluse eest korraga üle Lightning ilma võtmeta üldse: saatke taotlus ilma üheta ja tasuge arve 402 Vastuseks vaata Tasumine taotluse korral ilma võtmeta.

Võtme haldamine, konto kokkuvõte ja automaatne top-up on erand: nad võtavad allkirja oma nimmi asemel võtme asemel, nii et lekkinud võti ei saa teha rohkem võtmeid. Konto allkirjastamise taotlused.

Teie esimene taotlus

Pange võti keskkonna muutujasse, seejärel küsige mudelilt midagi.Nende lehekülgede näited loevad seda 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 on Nymboti enda marsruutimine, mida makstakse tavalisest tasakaalust. anthropic/claude-sonnet-5, et kasutada seda mudelit Pro tasakaalust. Nimekiri mudelitest Saada iga ID.

Kui palju maksab taotlus

API arveldab täpselt nii, nagu rakendus seda teeb.

  • Mis tasakaal nymbot/auto Kasutage seda standardi tasakaal (10 sats a credit). iga teine vestlusmudel kulutab Pro poolt tasakaal (100 sats krediiti). Standard pildi generaator ja standard hääl kulutavad standard krediiti; iga teine generaator kulutab Pro. Sisseehitus kulutab standard krediiti. Transkriptsioon kulutab standard krediiti, kui standard tasakaal võib seda katta, ja Pro krediiti muidu. mudelite nimekiri ütleb, millist tasakaalu iga mudel kulutab.
  • Kui palju Vestlusnõue mõõdetakse mudeli tegelikult lugenud ja kirjutatud žetonitele, teenuseosutaja avaldatud tariifidele. Sellel hinnal on 5% lisatasu ja seejärel korrutatakse 1,5-ga, nii et maksate 1575 korda teenuseosutaja nimekirja hinda. See muundatakse live Bitcoin-hinna hinnaks ja tasutakse tuhandeid krediiti. Pro pildid, video ja kõne hinnatakse põlvkonna, sekundi või tähemärgi kohta ja audio transkriptsiooni sekundis, sama tasu ja marginaaliga. Standardpilt on tasane 5 standardkrediiti ja standardhääl on tasane 3.
  • See on minimaalne. Iga mõõdetud taotlus, mis jookseb, maksab vähemalt 0,05 krediiti: pool on standardsaldo, 5 on Pro.
  • Hoidke ja seejärel asetage. Enne taotluse käivitamist hoitakse maksimaalselt teie saldo, sõltuvalt sellest, mida saite ja mitu tokenit see võib kirjutada. Teksti väljaspool tavalist ASCII-d suurendatakse UTF-8-baiti ja ASCII numbreid ja punkte loetakse iga tokenina, nii et teksti mis tahes skripti, koodi ja numbreid hoitakse täies ulatuses. Hold on tervetes krediitides, vähemalt üks, nii et mis tahes taotlus vajab vähemalt 10 tasuta sats standardse saldo või 100 sats Pro-sse, et alustada. Üksnes tegelik kulu laaditakse; ülejäänud vabastatakse, kui see lõpeb. Pikk taotlus säilitab oma hold nii kaua, kui see töötab; kui hoitavad krediidid peatuvad igal juhul kättesaadavaks, 402 insufficient_balance Kui tegelik kulu on suurem kui tasakaal on võimalik tasuda, võetakse kogu tasakaal, ülejäänud on võlgu (owed_sats Selles nymbot objekti ja negatiivse tasakaalu). Mis on võlgu, makstakse kõigepealt välja järgmistest krediitidest, mis selle tasakaalu saavutavad.Kuni see on makstud, ei saa selle tasakaalu kohta midagi kulutada: ei API, ei vasta rakenduses, ülekandmine või kingitus.
  • Ei ole piisavalt krediiti. Kui saldo ei suuda kinni pidada, lükatakse taotlus tagasi 402 viga ütleb, milline saldo on lühike, mitu satsit taotlus vajab ja mitu on tasuta. max_tokens See tähendab väiksemat kinnipidamist.
  • ja ebaõnnestumisi. Ebaõnnestunud taotlus ei maksa midagi, välja arvatud juhul, kui teenusepakkuja on tasunud töö eest, mida ta tegi enne ebaõnnestumist, või veebipõhise otsingu või nymbot/auto ülesande kontrollimine oli juba läbi; siis see on see, mida sa maksad, vähemalt 0,05 krediiti. voog, mille sa lõikad, laaditakse teenusepakkuja aruannete tokenide eest: Nymbot lugeb teenusepakkuja voogu kuni 25 sekundit pärast lahkumist, et saada see arv.
  • WEB otsing Üks otsing maksab 0,008 dollarit, mis muudetakse satsiks, iga kord, kui otsing toimus, kas mudel siis vastab või ebaõnnestub.

Iga vastus ütleb, kui palju see maksab. JSON vastused kannavad nymbot objekti tasakaalust, millest see maksti, tasu krediitide ja sissemaksetena ning mis jääb:

Objekti maksumus

"nymbot": {
  "balance": "pro",
  "charged_credits": 0.162,
  "charged_sats": 16.2,
  "balance_credits": 412.425,
  "balance_sats": 41242.5
}

Tasulised vastused kannavad ka neid pealkirju, mis on koht, kus otsida vastuse maksumust, mis ei ole JSON, näiteks kõne:

Headeridtähendus
X-Nymbot-Cost-SatsKui palju see taotlus maksab, sats.
X-Nymbot-Balance-SatsSee, mis on jäänud tasakaalule, millest see maksti, on sats.
X-Request-IdIga vastuse puhul taotluse ID. tsiteerige see, kui võtate ühendust tugiteenusega.

Hinnad miljoni tokeni kohta, sealhulgas tasu ja marginaal, on Mudelite nimekiri dollarites ja pankades ning HinnakiriKui Bitcoini hinda ei saa lugeda, tagastatakse makstud taotlused 503 price_unavailable koos Retry-After: 60 Selle asemel, et arvata

vigu

Iga viga on sama kuju, mida OpenAI kliendid juba mõistavad. code on stabiilne nimi, mida saate sobitada; message See on inimeste jaoks ja võib muutuda.

Keha viga

{
  "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
  }
}
staatuseMillal
400 invalid_request_errorKeha ei ole kehtiv JSON (invalid_jsonVajalikud väljad on puudu (missing_required_parameterväärtus on vale või taotlus küsib midagi, mida mudel või lõpp-punkt ei tee, näiteks tööriistad nymbot/auto (unsupported_tool). param Nimetage väljad. ka upstream_rejected kui teenusepakkuja on taotluse tagasi lükanud.
401 authentication_errorVõti on kadunud, tundmatu, tühistatud või aegunud või allkirjastatud taotlus on kehtetu või uuesti kasutatud.
402 insufficient_quotaTasakaal ei kata taotlust. kood insufficient_balanceja koos balance, required_sats ja balance_sats.
403 permission_errorNõue ei sobi võtme kappi (key_limit_reachedja koos limit_sats, used_sats ja reset_at) või konto ei pruugi teenust kasutada (account_denied).
404 not_found_errorTundmatu tee (unknown_endpoint(See on süsteem, mida ei ole olemas)model_not_found) või tundmatu võtme, arve või video.
405See meetod on olemas, kuid mitte selle meetodiga (method_not_allowed) ja Allow Header loetleb meetodid, mida ta kasutab.
413Keha või fail on liiga suur (payload_too_large, file_too_large) või salvestus on liiga pikk (audio_too_longSee on piirid.
415 invalid_request_errorKeha ei ole saadetud kui application/json (või ülejäänud lõikepunktide puhul, multipart/form-data): unsupported_media_type.
422Sõna ja keel, mis ei lähe tekstis koos kõne (voice_language_mismatch, unsupported_language).
429 rate_limit_errorLiiga palju taotlusi sellel võtmel, sellest aadressist või volitustega, mis ei suutnud kontrollida (rate_limit_exceeded(või kui teenuse osutaja on piiranguline)upstream_rate_limitedOodake, kuni sekundid Retry-After.
500 api_errorMidagi läks valesti Nymbosi poolel (internal_error).
502 api_errorTeenusepakkuja ei vastanud vastusele (upstream_error) või välk arve ei saa teha (invoice_unavailable).
503 api_errorTeenusepakkuja on ülekoormatud (upstream_overloadedBitcoini hinda ei saa lugeda (price_unavailable) või osa teenusest on allapoole (service_unavailable, media_hosting_unavailable). Retry-After ütleb, millal uuesti proovida, kus see on teada.

Kaks erandit:

  • /api/v1/messages antakse vastused Anthropic'i vea vormingus, kuna see on see, mida Anthropic kliendid analüüsivad: {"type": "error", "error": {"type": "authentication_error", "message": "…"}}Tüüp järgib staatust: invalid_request_error, authentication_error, billing_error (402), permission_error, not_found_error, request_too_large, rate_limit_error, api_error või overloaded_error (503).
  • Streami taotlus, mis ebaõnnestub enne oma esimest baiti, saab tavalise JSONi vea, millel on ülaltoodud seisund, mitte sündmuste voog.

Veateade ei sisalda kunagi teise teenuse sisemisi üksikasju.

piirid

piirangudVäärtus
Nõuded võtme kohta120 minutit ja veelgi enam. 429 koos Retry-After.
Nõuded ilma võtmeta120 minutit aadressi kohta, mudeli, heli ja makseviisi nimekirjade jaoks, tagasimaksetokenite kontrollimiseks ja tasuliste lõpp-punktide helistamiseks ilma võtme või maksmata. 429 koos Retry-After.
Ebaõnnestunud autentimine30 minutit aadressi kohta võtmete, allkirjade, makseandmete ja tagasimaksetokiinide puhul, mis ei kinnita. 429 koos Retry-After Kuni minut on möödas.Krediitkaardid kontrollitakse enne keha lugemist.
Uued võtmed60 tundi nimme kohta ja 120 tundi aadressile.
Top-up arveid60 tundi nimme kohta ja 120 tundi aadressile.
NWC rahakotid10 tundi nimme kohta ja 30 tundi aadressi kohta. rahakoti reljeef peab kasutama wss:// Standardse sadama puhul.
Tagastatud tokenid60 taotlust minutis.
AadressidIPv6 aadress loetakse kogu /64 igas aadressipiirkonnas ja IPv4 kaardistatud IPv6 aadress IPv4 aadressina.
JSON taotluse keha4 MB; 64 KB teie nimmiga allkirjastatud taotluste puhul.
Mitmeosaline taotluse keha (uploads)32 MB. Muudetav pilt võib olla kuni 20 MB, helifail kuni 25 MB. Kõige rohkem kui 64 osast, millest igaühel on maksimaalselt 8 KB osade pealkirju ja piir 1 kuni 70 tähemärki; vastasel juhul 400 invalid_multipart.
Fotod ühes chat taotlusesIgaüks on üks https:// või http:// link avalikule võõrustajale või a data:image/… Või URL.
Pildid põlvkondade kaupa1 kuni 4 (n)
Tootmise tokenidKõrgeimad mudelid on maksimaalsed. max_tokens See on alandatud, mitte keeldunud.
Rääkimise sissejuhatus800 tähemärki standardhäälele, 2000 tähemärki Aura 2 jaoks.
Transkriptsioon30 minutit heli, 25 MB. pikem salvestamine on keelatud 413 Ja mitte süüdistada, isegi kui selle pikkus on teada ainult siis, kui Whisper on seda kuulnud.
Sisseehitatud100 sissemakseid taotluse kohta.
Video töökohadHoidke 24 tundi pärast nende esitamist; renditakse pärast tunni möödumist.
Tahad ajaluguOodatud 90 päeva.
Aktiivsed võtmed per nymAinult viimased 50 tühistatud võtmet säilitatakse.

Link pildile peab näitama avalikku võõrustajat: aadress era- või kohalikus võrgus või Nymboti enda saitidel lükatakse tagasi. rakenduses kohaldatav pakkuja tempo kehtib ka siin, nii et ühe pakkuja taotluste puhkemist saab aeglustada, mitte ebaõnnestuda.

Mida tulekahju näeb

API ei ole privaatne viisil, kuidas rakendused on, ja tasub olla täpselt, kuidas.

  • See ei ole lõpuni krüpteeritud. Rakendustes suletakse teie seadmes sõnum ainult võtmetele, mida Nymbot hoiab ja sõidab Kingitused WrapAPI taotlus on tavaline HTTPS: see krüpteeritakse Nymboti teel ja Nymboti server loeb selle selle käsitlemiseks.
  • Küsimusi ja vastuseid ei salvestata. Mida hoitakse on arve: iga taotluse jaoks aeg, mudel, tüüp, token loeb, kulu, saldo, võti ja kas see õnnestus, 90 päeva, mis on see, mida Küsimus ajaloost Sama taotluse kasutusjuhend (aeg, tüüp, mudel, tokenide arv, maksumus, kestus ja kas see kasutas veebiotsingut või õnnestus) säilitatakse ka 90 päeva koos rakenduse enda taotlusega.
  • Kõik muu, mida nimme jaoks hoitakse, on väike ja siin loetletud. Tulekahju võtmed salvestatakse hashina, mitte kunagi võtmega, koos nende nimega, lühikese vihje, kulukapiga, resetiperioodiga, aegumisega ja kui need tehti ja viimati kasutatud; ainult viimased 50 tühistatud võtmed säilitatakse. Automaatne top-up rahakoti ühendus salvestatakse krüpteeritud, selle künnis, summa ja viimase ülevaate tulemus. Video töökohti hoitakse 24 tundi. Ühe kõne eest makstud taotlused jätavad ainult Lightning makse hash 7 päeva jooksul ja 30 päeva jooksul hashitud tagasimaksetokeniga, mis on seotud ilma nimmita.
  • Rakenduse kustutamine eemaldab selle. A Wipe seadmed tühistab ja kustutab iga API võtme ning kustutab päringute ajaloo, kasutusjuhendite, rahakotiühenduse ja videotööde.
  • Mudeli pakkuja näeb teie taotlustKataloogimudelid töötavad nende tootjatel; standardsed marsruudid ja sisseehitused töötavad Cloudflare'is.
  • Loodud meedia on avalik. Pildid ja videod, mis on edastatud linkidena, laaditakse üles avalikele Blossom-faili võõrustajatele, kus faili aadress on selle hash. b64_json ja genereeritud pilt naaseb vastuses ja seda ei laadita kunagi üles.
  • Nii on ka pildid, mida annate generaatorile. Pilt, mille üles laadite Editavõi saatke see a data: URL-i kasutamine generaatoris image_url, laaditakse üles avalikule Blossom hostile kõigepealt, et generaator saaks selle üles võtta, ja sama kehtib ka selle kohta. https:// Pildid vestlusnõudes lähevad mudeli pakkujale, mitte Blossomile.
  • Võti on seotud teie nimega. Kõik, mida võti kulutab, pärineb teie nimmi tasakaalust, nii et API kasutamine ei ole AnonüümneKui soovite API kasutamist hoida eraldi oma igapäevasest nymist, tehke võtmed eraldi nymist oma tasakaaluga.

Kui vajate rakenduste kaitset, kasutage rakendusi. API on mõeldud selleks, kui vajate mudeleid oma tööriistades.

Iga lõpptulemus

LõpppunktMida see teebAutod
GET /api/v1/modelsNimekiri mudelitestHinnaga koosÜkski
POST /api/v1/chat/completionsChat täiendusedvõti
POST /api/v1/responsesVastused APIvõti
POST /api/v1/messagesAntroopsed sõnumidvõti
POST /api/v1/messages/count_tokensSissetuleku tokenite hinnangvõti
POST /api/v1/images/generationsLoovad pildidVõti või välk
POST /api/v1/images/editsEdita piltVõti või välk
POST /api/v1/videos, GET /api/v1/videos, GET /api/v1/videos/{id}Algab, loetleb ja kontrollib videoidvõti või välk Algab üks
POST /api/v1/audio/speechTeksti kõneVõti või välk
GET /api/v1/audio/models, GET /api/v1/audio/voicesAudio mudelid ja hääledÜkski
POST /api/v1/audio/transcriptions, POST /api/v1/audio/translationsKõne teksti ja inglise keelesVõti või välk
POST /api/v1/embeddingsSisseehitatudVõti või välk
GET /api/v1/credits/balance (või POST)Mõlemad tasakaaludvõti
GET /api/v1/topup/payment-methodsKuidas makstaÜkski
POST /api/v1/topup/create/btc-lightningÜks välk arvevõti
GET /api/v1/topup/status/{invoice_id}Kontrolli ja krediiti seevõti
GET /api/v1/queries/historyKui palju iga taotlus maksabKey või nym
GET /api/v1/accountKonto kokkuvõteNümn
/api/v1/keysTeeb, muudab ja tühistab võtmedNümn
/api/v1/nwc-auto-topupAutomaatne top-upNümn
GET /api/v1/l402/refunds, POST /api/v1/l402/refunds/redeemKontrollib või lunastab tagasimaksetokiiniTagastamine token; nym to redeem

“Nym” tähendab taotlust, mille on allkirjastanud teie Nostr võtmega, mis on kirjeldatud Konto allkirjastamise taotlusedTööriistad, mis juba kõnelevad neid formaate, vaadake Tööriistad ja SDK, ja kodeerimisagentide jaoks nagu Claude Code, Codex ja Cline, vt Kodifitseerimisvahendid.