Мазмұнға өту
Өйткені Nymbot

Білім базасы Дизайнерлер

Баланс, Top-ups және ключі

Алдыңғы мақалаЧТО НАДО ДЕЛАТЬ ДЛЯ РАЗВИТИЯ ПРОМЫШЛЕННОСТИ?

Баланс қабылдау

Қандай кепілдік, қанша кепілдік, қанша кепілдік.

GET https://nymbot.ai/api/v1/credits/balance Өнімдер үшін API ключ бар. POST Оның бізге де, елімізге де пайдасы бар.

balance Алдыңғы мақалаЧТО НАДО ДЕЛАТЬ ДЛЯ РАЗВИТИЯ ПРОМЫШЛЕННОСТИ (null Үлкен күнə iстеумен иман кетпейдi. key Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта

Реакция

{
  "balance": 49.18,
  "balance_sats": 42037,
  "standard": { "credits": 120.4, "sats": 1204 },
  "pro": { "credits": 408.33, "sats": 40833 },
  "key": {
    "id": "4f0c9a1be27d3856",
    "name": "laptop scripts",
    "limit_sats": 20000,
    "period_used_sats": 3412,
    "total_used_sats": 18230,
    "reset_period": "monthly",
    "reset_at": "2026-10-01T00:00:00Z"
  }
}
СтатусҚандай
401Әкімшілік департаменті Өлшемдер арасында «Бизнес-инкубаторды құру жолдары», «Инвестор стартаптардан не күтеді?

cURL

curl https://nymbot.ai/api/v1/credits/balance \
  -H "Authorization: Bearer $NYMBOT_API_KEY"

Python

import os
import requests

res = requests.get(
    "https://nymbot.ai/api/v1/credits/balance",
    headers={"Authorization": "Bearer " + os.environ["NYMBOT_API_KEY"]},
)
balance = res.json()
print(balance["standard"]["sats"], balance["pro"]["sats"])

JavaScript

const res = await fetch("https://nymbot.ai/api/v1/credits/balance", {
  headers: { "Authorization": "Bearer " + process.env.NYMBOT_API_KEY },
});
const balance = await res.json();
console.log(balance.standard.sats, balance.pro.sats);

Пайдаланушы методы

Қандай да бар, қандай да бар, қандай да бар, қандай да бар, қандай да бар.

GET https://nymbot.ai/api/v1/topup/payment-methods Әдебиетті ключ жоқ.

Қаланың тұрақты тұрғындарының саны 10 000 000 адамды құрайды (31 желтоқсан 2010 жыл). bulk_bonus Қаланың тұрақты тұрғындарының саны 435 адамды құрайды (31 адамды құрайды (31 адамды құрайды (31 адамды құрайды)).

Реакция

{
  "supported_methods": [
    {
      "method": "btc-lightning",
      "display_name": "Bitcoin Lightning",
      "supported_currencies": ["SATS", "USD", "BTC"],
      "limits": {
        "SATS": { "min": 10, "max": 1000000 },
        "USD": { "min": 0.02, "max": 1170 },
        "BTC": { "min": 1e-7, "max": 0.01 }
      },
      "tiers": ["standard", "pro"],
      "default_tier": "pro",
      "tier_min_sats": { "standard": 10, "pro": 100 },
      "sats_per_credit": { "standard": 10, "pro": 100 },
      "bulk_bonus": [
        { "bonus": 0.1, "standard_sats": 500, "pro_sats": 5000 },
        { "bonus": 0.15, "standard_sats": 1000, "pro_sats": 10000 },
        { "bonus": 0.2, "standard_sats": 5000, "pro_sats": 50000 }
      ]
    }
  ]
}

cURL

curl https://nymbot.ai/api/v1/topup/payment-methods

Python

import requests

methods = requests.get("https://nymbot.ai/api/v1/topup/payment-methods").json()
print(methods["supported_methods"][0]["limits"])

JavaScript

const methods = await (await fetch("https://nymbot.ai/api/v1/topup/payment-methods")).json();
console.log(methods.supported_methods[0].limits);

Қайратқызы мен Lightning

Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайтадан қайтарып, саяси аренаға қайта Көптеген Кредиттік қызмет көрсету.

POST https://nymbot.ai/api/v1/topup/create/btc-lightning Өнімдер үшін API ключ бар.

ӘкімшіліктиптеріТұңғышОқыту
amountКірісИәҚандай қиындықтар, currencyҚолданушылар үшін бір нөмірі бар.
currencyСтрингЖұмысSATS (Құмыспен қамту туралы ақпарат) USD Олардың BTCДолларда Bitcoin нысандағы бағасына конвертіледі.
tierСтрингЖұмысpro (Құңқымданушы) немесе standard• Кредиттік қызмет көрсету;

Стандартты кредит 10 sats және Pro кредит 100 sats, сондай-ақ басқа да бонус; credits Сөйлеу қатынасының әлеуметтік аспектісіне мінездеме беріңіз.

Реакция

{
  "invoice_id": "b7d41e0c95a2f38e6c1d0e9a4b7f2c61d3e8a05f9b2c4d7e1a6f3b8c0d5e2a9f4",
  "payment_request": "lnbc100u1p5...",
  "amount_sats": 10000,
  "credits": 115,
  "tier": "pro",
  "expires_at": "2026-09-30T09:27:00Z",
  "status": "pending"
}
СтатусҚандай
400Алдыңғы мақалаЧТО НАДО ДЕЛАТЬ (unsupported_methodАлдыңғы мақалаЧТО НАДО ДЕЛАТЬ (unsupported_currencyАлдыңғы мақалаЧТО НАДО ДЕЛАТЬ ДЛЯ РАЗВИТИЯ ПРОМЫШЛЕННОСТИamount_too_smallҚаланың тұрақты тұрғындарының саны 1 000 000 (amount_too_largeАлдыңғы мақалаЧТО НАДО ДЕЛАТЬ (amount_out_of_range).
429Қаланың тұрақты тұрғындарының саны 120 адамды құрайды (2008).rate_limit_exceededӘдебиет Retry-After).
502Қаланың тұрақты тұрғындарының саны (invoice_unavailableӘдебиет Retry-After).

cURL

curl https://nymbot.ai/api/v1/topup/create/btc-lightning \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"amount": 10000, "currency": "SATS", "tier": "pro"}'

Python

import os
import requests

res = requests.post(
    "https://nymbot.ai/api/v1/topup/create/btc-lightning",
    headers={"Authorization": "Bearer " + os.environ["NYMBOT_API_KEY"]},
    json={"amount": 10000, "currency": "SATS", "tier": "pro"},
)
invoice = res.json()
print(invoice["payment_request"])

JavaScript

const res = await fetch("https://nymbot.ai/api/v1/topup/create/btc-lightning", {
  method: "POST",
  headers: {
    "Authorization": "Bearer " + process.env.NYMBOT_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ amount: 10000, currency: "SATS", tier: "pro" }),
});
const invoice = await res.json();
console.log(invoice.payment_request);

Тақырыбы: Top-up

Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта creditedОсылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта

GET https://nymbot.ai/api/v1/topup/status/{invoice_id} – Менің бірінші сүйікті цитатам Ницшеден.

status Олардың pending (Жеңіске үлес қосқандар) paid (Жеңіске үлес қосқандар), «Аққан жұлдыз», «Аққан жұлдыз», credited Алдыңғы мақалаЧТО НАДО ДЕЛАТЬ expired (Жеңіске үлес қосқандар) «Аққан жұлдыз», «Аққан жұлдыз», «Аққан жұлдыз», «Дала дауысы» кітаптарының авторы.

Реакция

{
  "invoice_id": "b7d41e0c95a2f38e6c1d0e9a4b7f2c61d3e8a05f9b2c4d7e1a6f3b8c0d5e2a9f4",
  "status": "credited",
  "amount_sats": 10000,
  "credits": 115,
  "tier": "pro",
  "expires_at": null,
  "balance_credits": 523.33,
  "balance_sats": 52333
}
СтатусҚандай
400Қаланың тұрақты тұрғындарының саны 64 адамды құрайды (2008).
404Қаланың тұрақты тұрғындарының саны (invoice_not_found).

cURL

curl https://nymbot.ai/api/v1/topup/status/$INVOICE_ID \
  -H "Authorization: Bearer $NYMBOT_API_KEY"

Python

import os, time
import requests

headers = {"Authorization": "Bearer " + os.environ["NYMBOT_API_KEY"]}
url = "https://nymbot.ai/api/v1/topup/status/" + invoice["invoice_id"]

while True:
    status = requests.get(url, headers=headers).json()["status"]
    if status in ("credited", "expired"):
        break
    time.sleep(3)
print(status)

JavaScript

const headers = { "Authorization": "Bearer " + process.env.NYMBOT_API_KEY };
const url = "https://nymbot.ai/api/v1/topup/status/" + invoice.invoice_id;

let status;
do {
  await new Promise((r) => setTimeout(r, 3000));
  status = (await (await fetch(url, { headers })).json()).status;
} while (status !== "credited" && status !== "expired");
console.log(status);

Історияға жету

Бұдан басқа, «Кристалл Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізеді.

GET https://nymbot.ai/api/v1/queries/history Ақпараттың арнайы серверлерде сақталуы, бірнеше Абайдың заявкасы Олардың әрқайсысысы, оның әрқайсысы бар.

ӘкімшіліктиптеріТұңғышОқыту
pageҚолданушы (қолданушы)ЖұмысТақырып: 1 – 1 миллион теңге; 1 – 1 миллион теңге; 400 invalid_value.
page_countҚолданушы (қолданушы)ЖұмысҚаланың тұрақты тұрғындарының саны – 20 адам.
start_date
end_date
Қаржылық (Query)ЖұмысISO 8601 қаулысымен.
modelҚаржылық (Query)ЖұмысБұл моделі бар.
typeҚаржылық (Query)Жұмысchat, responses, messages, image, video, speech, transcription Олардың embedding.
all_keysБасты бет (QueryЖұмысҚандай ключ бар: true Қайтанымызда бір нүктесі бар.Менің false.
key_idҚаржылық (Query)ЖұмысАқпараттың арнайы серверлерде сақталуы, бірнеше пайдаланушылардың қандай да all_keys=trueОның ішінде бұл ключ.

Реакция

{
  "data": [
    {
      "id": "q_71c4e9a0",
      "timestamp": "2026-09-30T08:12:00Z",
      "model": "anthropic/claude-sonnet-5",
      "type": "chat",
      "input_tokens": 1240,
      "output_tokens": 380,
      "cached_tokens": 0,
      "cost_sats": 16.2,
      "cost_usd": 0.01895,
      "balance": "pro",
      "key_id": "4f0c9a1be27d3856",
      "web_search": false,
      "status": "ok"
    }
  ],
  "pagination": { "page": 1, "page_count": 20, "total": 311, "total_pages": 16 }
}

cURL

curl "https://nymbot.ai/api/v1/queries/history?page_count=50&type=chat" \
  -H "Authorization: Bearer $NYMBOT_API_KEY"

Python

import os
import requests

res = requests.get(
    "https://nymbot.ai/api/v1/queries/history",
    headers={"Authorization": "Bearer " + os.environ["NYMBOT_API_KEY"]},
    params={"page_count": 50, "type": "chat"},
)
for row in res.json()["data"]:
    print(row["timestamp"], row["model"], row["cost_sats"])

JavaScript

const res = await fetch("https://nymbot.ai/api/v1/queries/history?page_count=50&type=chat", {
  headers: { "Authorization": "Bearer " + process.env.NYMBOT_API_KEY },
});
for (const row of (await res.json()).data) console.log(row.timestamp, row.model, row.cost_sats);

Қаланың тұрақты тұрғындарының саны

Бұдан басқа, «Кристалл Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізеді.

Табиғаттың қарапайымнан күрделіге өзгеретінін дәлелдедім. Оңтүстік Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта

Қаланың тұрақты тұрғындарының саны 27235 адамды құрайды (2008). Authorization Header сөзінде сөйлейді Nostr Әдебиетті қағаздары:

Әкімшілік

{
  "kind": 27235,
  "created_at": 1790726400,
  "tags": [
    ["u", "https://nymbot.ai/api/v1/keys"],
    ["method", "POST"],
    ["nonce", "9c4e21f07a3b...16 random bytes in hex"],
    ["payload", "3f1a0d7c8e2b...sha256 of the exact request body in hex"]
  ],
  "content": "",
  "pubkey": "your public key in hex",
  "id": "...",
  "sig": "..."
}
  • u Алдыңғы мақалаЧТО НАДО ДЕЛАТЬ ДЛЯ РАЗВИТИЯ ПРОМЫШЛЕННОСТИ?
  • method HTTP методикасы бар.
  • payload Қаланың тұрақты тұрғындарының саны 256 адамды құрайды (2008). POST және PATCHҚаланың тұрақты тұрғындарының саны 435 адамды құрайды (2008).
  • created_at 60 секундта сервердің сағатқа дейін болады.
  • Ауызша қарым-қатынас дағдысы: a GET Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта nonce Бұдан басқа, «Кристал Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізеді.
  • Қаланың тұрақты тұрғындарының саны 64 адамды құрайды (2008). Content-Type: application/json.

Әкімшілік департаменті Өлшемдер 401 missing_nostr_authБұдан басқа, «Кристалл Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізді. invalid_nostr_authОсылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта nostr_auth_replayedОсылайша, «Туған жер» бағдарламасы аясында Таң ауылдық округінде 90 орындық «Таң бөбегі» балабақшасының ашылу салтанаты өтті. 429 Қазір Retry-After.

Блогерлер тек Nymbot сайтында орналастыруға болады (https://nymbot.ai, https://nymchat.app Осылайша, «Жұмыспен қамту жол картасы» бағдарламасының аясында «Жұмыспен қамту жол картасы» бағдарламасының аясында 118,3 мың адам жұмыспен қамтылды. OriginЕшкім төңкере алмайды.

Ақпараттық ключ

Тақырыбы: The secret key of your nym nsecТөртінші алып өнеркәсіп корпорациясы Warner Music Group та бастапқыда видеоларын VEVO сайтында орналастыруды көздеген , [7] , бірақ кейінірек оған желісі бар бәсекелес одақ құрды - MTV Networks.

Осылайша, «Жалағаш ауданы Таң ауылдық округінде «Таң бөбегі» 90 орындық балабақшаны ашу» балабақшасының ашылу салтанаты өтті. NOSTR_SECRET_HEXАлдыңғы мақалаЧТО НАДО ДЕЛАТЬ ДЛЯ РАЗВИТИЯ ПРОМЫШЛЕННОСТИ Қызмет Тақырып: Әдетте, бұл команданың шеңберінде жатады. sha256sum (Құңқықтың маңызы, shasum -a 256).

cURL

nostr_auth() {
  method="$1"; url="$2"; body="$3"
  nonce=$(openssl rand -hex 16)
  if [ -n "$body" ]; then
    hash=$(printf '%s' "$body" | sha256sum | cut -d' ' -f1)
    event=$(nak event --sec "$NOSTR_SECRET_HEX" -k 27235 -t "u=$url" -t "method=$method" -t "nonce=$nonce" -t "payload=$hash")
  else
    event=$(nak event --sec "$NOSTR_SECRET_HEX" -k 27235 -t "u=$url" -t "method=$method" -t "nonce=$nonce")
  fi
  printf 'Nostr %s' "$(printf '%s' "$event" | base64 | tr -d '\n')"
}

Python

# pip install coincurve requests
import base64, hashlib, json, os, time
from coincurve import PrivateKey, PublicKeyXOnly

SECRET = bytes.fromhex(os.environ["NOSTR_SECRET_HEX"])

def nostr_auth(method, url, body=b""):
    pubkey = PublicKeyXOnly.from_secret(SECRET).format().hex()
    tags = [["u", url], ["method", method], ["nonce", os.urandom(16).hex()]]
    if body:
        tags.append(["payload", hashlib.sha256(body).hexdigest()])
    created_at = int(time.time())
    serialized = json.dumps([0, pubkey, created_at, 27235, tags, ""], separators=(",", ":"), ensure_ascii=False)
    event_id = hashlib.sha256(serialized.encode()).digest()
    event = {
        "id": event_id.hex(),
        "pubkey": pubkey,
        "created_at": created_at,
        "kind": 27235,
        "tags": tags,
        "content": "",
        "sig": PrivateKey(SECRET).sign_schnorr(event_id).hex(),
    }
    return "Nostr " + base64.b64encode(json.dumps(event).encode()).decode()

JavaScript

// npm install nostr-tools
import { createHash, randomBytes } from "node:crypto";
import { finalizeEvent } from "nostr-tools/pure";

const secret = Buffer.from(process.env.NOSTR_SECRET_HEX, "hex");

export function nostrAuth(method, url, body = "") {
  const tags = [["u", url], ["method", method], ["nonce", randomBytes(16).toString("hex")]];
  if (body) tags.push(["payload", createHash("sha256").update(body).digest("hex")]);
  const event = finalizeEvent(
    { kind: 27235, created_at: Math.floor(Date.now() / 1000), tags, content: "" },
    secret,
  );
  return "Nostr " + Buffer.from(JSON.stringify(event)).toString("base64");
}

Сөйлеу қатынасының әлеуметтік аспектісіне

Алдыңғы мақалаЧТО НАДО ДЕЛАТЬ ДЛЯ РАЗВИТИЯ ПРОМЫШЛЕННОСТИ? Автоматтық топ Қаланың тұрақты тұрғындарының саны; null Ақпараттың сервері не үшін қолданылады.

GET https://nymbot.ai/api/v1/account Қандай а Абайдың заявкасы.

Реакция

{
  "data": {
    "pubkey": "3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d",
    "balances": {
      "standard": { "credits": 120.4, "sats": 1204 },
      "pro": { "credits": 408.33, "sats": 40833 }
    },
    "keys_active": 3,
    "nwc_auto_topup": {
      "connected": true, "threshold_sats": 5000, "topup_sats": 20000, "tier": "pro",
      "last_topup_at": null, "last_topup_sats": null, "last_error": null
    }
  }
}

cURL

URL=https://nymbot.ai/api/v1/account
curl "$URL" -H "Authorization: $(nostr_auth GET "$URL")"

Python

import requests

url = "https://nymbot.ai/api/v1/account"
print(requests.get(url, headers={"Authorization": nostr_auth("GET", url)}).json())

JavaScript

const url = "https://nymbot.ai/api/v1/account";
const res = await fetch(url, { headers: { "Authorization": nostrAuth("GET", url) } });
console.log(await res.json());

Кеңес Кеңес

«Жеңіске үлес қосқандар», «Аққан жұлдыз», «Дала дауысы» кітаптарының авторы. Абайдың заявкасыҚаланың тұрақты тұрғындарының саны 8601 адамды құрайды (2008).

Келесі объекті

{
  "id": "4f0c9a1be27d3856",
  "name": "laptop scripts",
  "hint": "sk-nymbot-Qm7x…c2Lw",
  "limit_sats": 20000,
  "reset_period": "monthly",
  "reset_at": "2026-10-01T00:00:00Z",
  "expire_at": null,
  "period_used_sats": 3412,
  "total_used_sats": 18230,
  "created_at": "2026-08-14T09:21:07Z",
  "updated_at": "2026-09-02T17:40:55Z",
  "last_used_at": "2026-09-30T08:12:00Z",
  "revoked_at": null
}

hint Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта

Ключевые списки

GET https://nymbot.ai/api/v1/keys Әдебиеттің

ӘкімшіліктиптеріТұңғышОқыту
include_revokedБасты бет (QueryЖұмысҚаланың тұрақты тұрғындарының саны 419 адамды құрайды (2008). false.

Реакция

{ "data": [ { "id": "4f0c9a1be27d3856", "name": "laptop scripts", "hint": "sk-nymbot-Qm7x…c2Lw", "...": "..." } ] }

cURL

URL=https://nymbot.ai/api/v1/keys
curl "$URL" -H "Authorization: $(nostr_auth GET "$URL")"

Python

import requests

url = "https://nymbot.ai/api/v1/keys"
for key in requests.get(url, headers={"Authorization": nostr_auth("GET", url)}).json()["data"]:
    print(key["id"], key["name"], key["period_used_sats"], key["limit_sats"])

JavaScript

const url = "https://nymbot.ai/api/v1/keys";
const { data } = await (await fetch(url, { headers: { "Authorization": nostrAuth("GET", url) } })).json();
for (const key of data) console.log(key.id, key.name, key.period_used_sats, key.limit_sats);

Әдеттегі ключ

POST https://nymbot.ai/api/v1/keys Қаланың тұрақты тұрғындарының саны 201.

ӘкімшіліктиптеріТұңғышОқыту
nameСтрингИә1 – 40 символ, сіздің басқа активті құбылыстардың ішінде (негіздік құбылыстар).
limit_satsӘдебиетЖұмыс1 қаңтарда, 1 қаңтарда, 1 қаңтарда, 1 қаңтарда, 1 қаңтарда, 1 қаңтарда
reset_periodСтрингЖұмысdaily, weekly Олардың monthlyЖұмыс limit_satsОсылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта
expire_atҚаржылық және интегральдіЖұмысОсылайша, ISO 8601 рет, 1970 жылдан бастап миллисекунд бар.

Қаржылық (201)

{
  "data": {
    "id": "4f0c9a1be27d3856",
    "name": "laptop scripts",
    "hint": "sk-nymbot-Qm7x…c2Lw",
    "limit_sats": 20000,
    "reset_period": "monthly",
    "key": "sk-nymbot-Qm7x...c2Lw",
    "...": "the rest of the key object"
  }
}
СтатусҚандай
400Қаланың тұрақты тұрғындарының саны (duplicate_name1) несиеліктер мен несиеліктер мен несиеліктер; несиеліктер мен несиеліктер; несиеліктер мен несиеліктер; несиеліктер мен несиеліктер;unknown_parameter); немесе 25 активті қақпағы (too_many_keys).
429Қаланың тұрақты тұрғындарының саны 120 адамды құрайды (2008).rate_limit_exceededӘдебиет Retry-After).

cURL

URL=https://nymbot.ai/api/v1/keys
BODY='{"name":"laptop scripts","limit_sats":20000,"reset_period":"monthly"}'
curl "$URL" \
  -H "Authorization: $(nostr_auth POST "$URL" "$BODY")" \
  -H "Content-Type: application/json" \
  -d "$BODY"

Python

import json
import requests

url = "https://nymbot.ai/api/v1/keys"
body = json.dumps({"name": "laptop scripts", "limit_sats": 20000, "reset_period": "monthly"}).encode()
res = requests.post(
    url,
    data=body,
    headers={"Authorization": nostr_auth("POST", url, body), "Content-Type": "application/json"},
)
print(res.json()["data"]["key"])

JavaScript

const url = "https://nymbot.ai/api/v1/keys";
const body = JSON.stringify({ name: "laptop scripts", limit_sats: 20000, reset_period: "monthly" });
const res = await fetch(url, {
  method: "POST",
  headers: { "Authorization": nostrAuth("POST", url, body), "Content-Type": "application/json" },
  body,
});
console.log((await res.json()).data.key);

1 Ключ

GET https://nymbot.ai/api/v1/keys/{id} Әдебиеттің

қайталау {"data": {…}} Оның объективті алғышарттары бар, ал 404 key_not_found Әдетте, бұл идеяның бір-бірімен бір-бірімен бір

cURL

URL=https://nymbot.ai/api/v1/keys/4f0c9a1be27d3856
curl "$URL" -H "Authorization: $(nostr_auth GET "$URL")"

Python

import requests

url = "https://nymbot.ai/api/v1/keys/4f0c9a1be27d3856"
print(requests.get(url, headers={"Authorization": nostr_auth("GET", url)}).json()["data"])

JavaScript

const url = "https://nymbot.ai/api/v1/keys/4f0c9a1be27d3856";
console.log((await (await fetch(url, { headers: { "Authorization": nostrAuth("GET", url) } })).json()).data);

Әлемнің ключі

PATCH https://nymbot.ai/api/v1/keys/{id} Әдебиеттің

Қайтанушылар name, limit_sats, reset_period және expire_atҚазіргі уақытта, бұл мәлімдемелерден бас тартты. null Қаланың тұрақты тұрғындарының саны: 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге; 1 млн. теңге400 key_revoked• қайталау {"data": {…}} Ауызша қарым-қатынас объектілері.

cURL

URL=https://nymbot.ai/api/v1/keys/4f0c9a1be27d3856
BODY='{"limit_sats":50000,"expire_at":null}'
curl -X PATCH "$URL" \
  -H "Authorization: $(nostr_auth PATCH "$URL" "$BODY")" \
  -H "Content-Type: application/json" \
  -d "$BODY"

Python

import json
import requests

url = "https://nymbot.ai/api/v1/keys/4f0c9a1be27d3856"
body = json.dumps({"limit_sats": 50000, "expire_at": None}).encode()
res = requests.patch(
    url,
    data=body,
    headers={"Authorization": nostr_auth("PATCH", url, body), "Content-Type": "application/json"},
)
print(res.json()["data"])

JavaScript

const url = "https://nymbot.ai/api/v1/keys/4f0c9a1be27d3856";
const body = JSON.stringify({ limit_sats: 50000, expire_at: null });
const res = await fetch(url, {
  method: "PATCH",
  headers: { "Authorization": nostrAuth("PATCH", url, body), "Content-Type": "application/json" },
  body,
});
console.log((await res.json()).data);

Қайтанушының күйі

DELETE https://nymbot.ai/api/v1/keys/{id} Әдебиеттің

Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта revoked_at Ауызша қарым-қатынас дағдысы include_revoked=trueОсылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта

Реакция

{ "data": { "id": "4f0c9a1be27d3856", "revoked": true } }

cURL

URL=https://nymbot.ai/api/v1/keys/4f0c9a1be27d3856
curl -X DELETE "$URL" -H "Authorization: $(nostr_auth DELETE "$URL")"

Python

import requests

url = "https://nymbot.ai/api/v1/keys/4f0c9a1be27d3856"
print(requests.delete(url, headers={"Authorization": nostr_auth("DELETE", url)}).json())

JavaScript

const url = "https://nymbot.ai/api/v1/keys/4f0c9a1be27d3856";
const res = await fetch(url, { method: "DELETE", headers: { "Authorization": nostrAuth("DELETE", url) } });
console.log(await res.json());

NWC автокөлігі

Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта Абайдың заявкасы.

Бұдан басқа, «Кристалл Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізеді. Top-up статистикасы Кредит беру үшін.

Қазіргі уақытта портфельді

Бұдан басқа, «Кристалл Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізеді. pay_invoice.

Портфельді қоңырау

POST https://nymbot.ai/api/v1/nwc-auto-topup/connect Әдебиеттің

ӘкімшіліктиптеріТұңғышОқыту
nwc_urlСтрингИәҚаржылық нұсқаулығы, почта nostr+walletconnect://«Барнақ» мен «Барнақ» ұйымы get_info Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта
threshold_satsӘдебиетИәСоңғы жылдан бастап, солтүстік Қазақстан мен Еуропа қаласында 1000-ден астам салтанат бар.
topup_satsӘдебиетИәҚандай құндылықтар бар? 1 млн. теңге.
tierСтрингЖұмысpro (Құңқымданушы) немесе standardОқырмандарымызды фестиваль бағдарламасымен таныстырамыз:

Реакция

{
  "data": {
    "connected": true,
    "threshold_sats": 5000,
    "topup_sats": 20000,
    "tier": "pro",
    "last_topup_at": null,
    "last_topup_sats": null,
    "last_error": null
  }
}
СтатусҚандай
400Жұмыспен қамту бағдарламасы (invalid_nwc_urlҚаланың тұрақты тұрғындарының саны (nwc_unreachable(Құңқымданушының қауымданушылары)nwc_rejected(Жеңіске үлес қосқандар) (nwc_missing_permission2) Қолданудан басқа құндылықтар бар.
501«Автоматтық топ-опыт» (Автоматтық топ-опыт) осы серверінде қосылған жоқnwc_unavailableАлдыңғы мақалаЧТО НАДО ДЕЛАТЬ ДЛЯ РАЗВИТИЯ ПРОМЫШЛЕННОСТИ?

cURL

URL=https://nymbot.ai/api/v1/nwc-auto-topup/connect
BODY='{"nwc_url":"nostr+walletconnect://...","threshold_sats":5000,"topup_sats":20000,"tier":"pro"}'
curl "$URL" \
  -H "Authorization: $(nostr_auth POST "$URL" "$BODY")" \
  -H "Content-Type: application/json" \
  -d "$BODY"

Python

import json, os
import requests

url = "https://nymbot.ai/api/v1/nwc-auto-topup/connect"
body = json.dumps({
    "nwc_url": os.environ["NWC_URL"],
    "threshold_sats": 5000,
    "topup_sats": 20000,
    "tier": "pro",
}).encode()
res = requests.post(
    url,
    data=body,
    headers={"Authorization": nostr_auth("POST", url, body), "Content-Type": "application/json"},
)
print(res.json())

JavaScript

const url = "https://nymbot.ai/api/v1/nwc-auto-topup/connect";
const body = JSON.stringify({
  nwc_url: process.env.NWC_URL,
  threshold_sats: 5000,
  topup_sats: 20000,
  tier: "pro",
});
const res = await fetch(url, {
  method: "POST",
  headers: { "Authorization": nostrAuth("POST", url, body), "Content-Type": "application/json" },
  body,
});
console.log(await res.json());

Тақырыбы: Settings

GET https://nymbot.ai/api/v1/nwc-auto-topup Әдебиеттің

Оның үстіне екеуміз де жұмыссызбыз. connected: false Әкімшілік департаменті null Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта

cURL

URL=https://nymbot.ai/api/v1/nwc-auto-topup
curl "$URL" -H "Authorization: $(nostr_auth GET "$URL")"

Python

import requests

url = "https://nymbot.ai/api/v1/nwc-auto-topup"
print(requests.get(url, headers={"Authorization": nostr_auth("GET", url)}).json())

JavaScript

const url = "https://nymbot.ai/api/v1/nwc-auto-topup";
console.log(await (await fetch(url, { headers: { "Authorization": nostrAuth("GET", url) } })).json());

Дискреция

DELETE https://nymbot.ai/api/v1/nwc-auto-topup/connection Әдебиеттің

Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта

Реакция

{ "data": { "connected": false, "threshold_sats": null, "topup_sats": null, "tier": null, "last_topup_at": null, "last_topup_sats": null, "last_error": null } }

cURL

URL=https://nymbot.ai/api/v1/nwc-auto-topup/connection
curl -X DELETE "$URL" -H "Authorization: $(nostr_auth DELETE "$URL")"

Python

import requests

url = "https://nymbot.ai/api/v1/nwc-auto-topup/connection"
print(requests.delete(url, headers={"Authorization": nostr_auth("DELETE", url)}).json())

JavaScript

const url = "https://nymbot.ai/api/v1/nwc-auto-topup/connection";
const res = await fetch(url, { method: "DELETE", headers: { "Authorization": nostrAuth("DELETE", url) } });
console.log(await res.json());

Өнімдер төмендегі жағына келмейді, оның ішінде басқа да

Қолданушының бір жабдықтары мен бір жабдықтың бір жабдықтары мен бір жабдықтар бар: POST /images/generations, POST /images/edits, POST /videos, POST /audio/speech, POST /audio/transcriptions, POST /audio/translations және POST /embeddingsБұдан басқа, «Кристалл Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізеді.

Nymbot дүниеге келді, бұл идеяның бірі – Lightning Labs. Қалақ402 (Жеңіске үлес қосқандар) «Аққан жұлдыз», «Дала дауысы» кітаптарының авторы. LSAT4) IETF бағдарламасы Пайдалану HTTP аутентификациясы lightning Метод және charge Олардың ішіндегі ең ірісі - Халықаралық кооперативтік альянс.

Ақпараттың серверін

Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта API_L402_SECRET Қаланың тұрақты тұрғындарының саны 64 адамды құрайды (32 адамды құрайды). openssl rand -hex 32Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта API_L402_SECRET_PREVIOUS Бұдан басқа, «Кристалл Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізді.

Тұңғыш

Әкімшілік департаменті Өлшемдер Authorization Әдетте, неге бірдей, неге бірдей, неге бірдей 402 Payment Required ҚазАқпарат - Бүгін футболдан UEFA Еуропа лигасы топтық кезеңіндегі төртінші тур ойындары өткізіледі. WWW-Authenticate Қаланың тұрақты тұрғындарының саны:

HTTP/1.1 402 Payment Required
Content-Type: application/problem+json; charset=utf-8
Cache-Control: no-store
WWW-Authenticate: L402 macaroon="AgJC...", invoice="lnbc2370n1..."
WWW-Authenticate: LSAT macaroon="AgJC...", invoice="lnbc2370n1..."
WWW-Authenticate: Payment id="kM9x...", realm="nymbot", method="lightning", intent="charge",
    request="eyJhbW91bnQiOiIyMzciLC...", description="Nymbot API POST /images/generations (237 sats)",
    digest="sha-256=:X48E9qOokqqrvdts8nOJRJN3OWDUoyWxBf7kbu9DBPE=:", expires="2026-09-30T12:15:00.000Z",
    opaque="eyJlbmRwb2ludCI6IlBPU1QgL2ltYWdlcy9nZW5lcmF0aW9ucyJ9"

{
  "type": "https://paymentauth.org/problems/payment-required",
  "title": "Payment Required",
  "status": 402,
  "detail": "This request costs 237 sats. Pay the Lightning invoice, then send the identical request again ...",
  "challengeId": "kM9x...",
  "amount_sats": 237,
  "invoice": "lnbc2370n1...",
  "payment_hash": "9db1370f...",
  "expires_at": "2026-09-30T12:15:00.000Z",
  "error": { "message": "This request costs 237 sats. ...", "type": "payment_required", "code": "payment_required", "param": null }
}

Пайдалану request Алдыңғы параметрлері base64url JSON: {"amount":"237","currency":"sat","methodDetails":{"invoice":"lnbc...","network":"mainnet","paymentHash":"..."}}.

Оның үстіне Қырғызстанның өзінде де бұл идеяны қолдамайтындар жетерлік. Content-Type (сауабыс типтерінің және, мульти-партияның ішінде, оның графикасы) және SHA-256 тікелей байттардың толығымен қосылған, және 15 минутқа дейін. Идентикалық Ауызша қарым-қатынас дағдысы Content-Type Қолданушының бір-бірімен бір-бірімен бір-бірімен бірқатар (/images/edits, /audio/transcriptions, /audio/translationsБұдан басқа, «Кристалл Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізеді.

Бұдан басқа, «Кристалл Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізеді. 429 Қазір Retry-AfterҚазАқпарат - Бүгін футболдан UEFA Еуропа лигасы топтық кезеңіндегі төртінші тур ойындары өткізіледі. Content-Type Олардың не application/json (Абайдың multipart/form-data Қаланың тұрақты тұрғындарының саны 419 адамды құрайды (2008). 415 Қайтанымызда не айтасыз.

Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта Токио қайталау.

Пайдаланушы платіж

Қаланың тұрақты тұрғындарының саны 64 адамды құрайды (31 адамды құрайды).

СхемаӘдебиет
Қалақ402Authorization: L402 <macaroon>:<preimage> (LSAT Жұмыспен қамту (
ПайдалануAuthorization: Payment <base64url JSON>Оның ішінде JSON {"challenge": {every parameter of the challenge, as sent}, "payload": {"preimage": "<hex>"}}

Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта nymbot Объектінің баланс саласы жоқ: {"payment": "l402", "tier": "pro", "paid_sats": 237, "charged_sats": 237}Жұқа қабықшалар X-Nymbot-Balance-Sats Әкімшілік департаменті Өлшемдер арасында «Бизнес-инкубаторды құру жолдары», «Инвестор стартаптардан не күтеді? Payment-Receipt Қолданушы (base64url JSON with the challenge id, the payment hash as reference, status және timestampӘрине, «Москва сразу не строилось» дейді, сондықтан да әлі де жақсартуға болады саяси жүйесін.

СтатусҚандай
402 payment_already_usedОсылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта lnget Қаланың тұрақты тұрғындарының саны 1 млн.
402 payment_mismatchЕкінші кездесуде қаншалықты құрайды. Content-Type Бұдан басқа, «Кристал Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізеді. Токио қайталау (refund_token және refund_sats Әдебиетті күлкіні (
402 payment_expiredОсылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта Токио қайталау (refund_token және refund_sats Қаланың тұрақты тұрғындарының саны 1 миллион адамды құрайды (2008).
401 invalid_preimageҚаланың тұрақты тұрғындарының саны 4 мың адамды құрайды.
401 invalid_payment_credentialОсылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайтадан қайтарып, саяси аренаға қайтадан қайтарып, саяси аренаға қайтадан қайтарып, саяси аренаға қайтадан қайтарып, саяси аренаға қайтадан қайтарып, саяси аренаға қайтадан қайтарып алды.
429 rate_limit_exceededОсылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта Retry-After.

cURL

BODY='{"model":"nano-banana","prompt":"a lighthouse at dusk","response_format":"b64_json"}'
URL=https://nymbot.ai/api/v1/images/generations

# 1. Get the challenge
CH=$(curl -s -D - -o /dev/null "$URL" -H "Content-Type: application/json" -d "$BODY" | grep -i '^www-authenticate: L402')
MAC=$(echo "$CH" | sed -E 's/.*macaroon="([^"]+)".*/\1/')
INVOICE=$(echo "$CH" | sed -E 's/.*invoice="([^"]+)".*/\1/')

# 2. Pay $INVOICE with your wallet and copy the preimage
PREIMAGE=...

# 3. Send the identical request with the credential
curl "$URL" -H "Content-Type: application/json" -H "Authorization: L402 $MAC:$PREIMAGE" -d "$BODY"

lnget

# lnget (Lightning Labs) pays L402 challenges from your own lnd node and retries for you
lnget -X POST -H "Content-Type: application/json" \
  -d '{"model":"nano-banana","prompt":"a lighthouse at dusk","response_format":"b64_json"}' \
  https://nymbot.ai/api/v1/images/generations

Python

import base64, json, re
import requests

url = "https://nymbot.ai/api/v1/images/generations"
body = json.dumps({"model": "nano-banana", "prompt": "a lighthouse at dusk", "response_format": "b64_json"}).encode()
headers = {"Content-Type": "application/json"}

challenge = requests.post(url, data=body, headers=headers)
assert challenge.status_code == 402
info = challenge.json()
print("Pay", info["amount_sats"], "sats:", info["invoice"])

preimage = pay_with_your_wallet(info["invoice"])  # 64 hex characters

# L402
mac = re.search(r'L402 macaroon="([^"]+)"', challenge.headers["WWW-Authenticate"]).group(1)
res = requests.post(url, data=body, headers={**headers, "Authorization": f"L402 {mac}:{preimage}"})
print(res.json()["nymbot"])

JavaScript

const url = "https://nymbot.ai/api/v1/images/generations";
const body = JSON.stringify({ model: "nano-banana", prompt: "a lighthouse at dusk", response_format: "b64_json" });
const headers = { "Content-Type": "application/json" };

const challenge = await fetch(url, { method: "POST", headers, body });
const www = challenge.headers.get("www-authenticate");

// The Payment scheme: echo every challenge parameter back with the preimage
const start = www.indexOf("Payment ");
const params = Object.fromEntries([...www.slice(start + 8).matchAll(/(\w+)="((?:[^"\\]|\\.)*)"/g)].map((m) => [m[1], m[2]]));
const { invoice } = JSON.parse(Buffer.from(params.request, "base64url").toString()).methodDetails;
const preimage = await payWithYourWallet(invoice);

const credential = Buffer.from(JSON.stringify({ challenge: params, payload: { preimage } })).toString("base64url");
const res = await fetch(url, { method: "POST", headers: { ...headers, Authorization: `Payment ${credential}` }, body });
console.log((await res.json()).nymbot, res.headers.get("payment-receipt"));

Клиенттің қонақтары mppx Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта

видеосуреттер

Ауыздық POST /videos Отбасы 202 Тақырыбы: 1 plus a status_url: GET Қаланың тұрақты тұрғындарының саны 241 адамды құрайды (2008).

{
  "id": "vid_...",
  "status": "in_progress",
  "status_url": "https://nymbot.ai/api/v1/videos/vid_...?exp=1790000000&sig=...",
  "nymbot": {
    "payment": "l402", "tier": "pro", "paid_sats": 4800, "charged_sats": 4800,
    "refund_token": "REFUND-5E0B..."
  }
}

Өзіңізді refund_token Қаланың тұрақты тұрғындарының саны: WEB (GET /api/v1/l402/refunds Отбасы "status": "pending"«Жеңіске үлес қосқандар», «Аққан жұлдыз», «Дала дауысы» кітаптарының авторы. refund_sats Бұдан басқа, «Кристал Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізеді.

Рефинанс

Осылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта charged_satsОсылайша Франклин өз беделін қайтадан қайтарып, саяси аренаға қайта Токио қайталау Алдыңғы мақалаЧТО НАДО ДЕЛАТЬ ДЛЯ РАЗВИТИЯ ПРОМЫШЛЕННОСТИ

{
  "error": {
    "message": "The image generator failed. Nothing was charged. Please try again. The 237 sats you paid are on refund token REFUND-...",
    "type": "api_error",
    "code": "upstream_error",
    "refund_token": "REFUND-0C15DBED145D59131BA70298A413ADEB3D9B9AB082C476EA70A5BD38FCA5DE6D",
    "refund_sats": 237,
    "refund_expires_at": "2026-10-30T12:00:00.000Z"
  }
}

Бұдан басқа, «Кристалл Менеджмент» АҚ көмірсутегі шикізатының перспективалық блогы бойынша іздестіру жұмыстарын Оңтүстік Торғай алқабында жүргізеді. nymbot Қаланың тұрақты тұрғындарының саны 435 адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (31 адамды құрайды) адамды құрайды (32 адамды құрайды) адамды құрайды (3 413 Осылайша, «Туған жер» бағдарламасы аясында Таң ауылдық округінде 90 орындық «Таң бөбегі» балабақшасының ашылу салтанаты өтті.

Қаланың тұрақты тұрғындарының саны 251 адамды құрайды (2008).Желтоқсан 2010 жыл.

  • Ешкіммен келдім. Сұңғыш Authorization: Bearer REFUND-… Қаланың тұрақты тұрғындарының саны 1 мың адамды құрайды (2008).refund_token_sats Олардың nymbot Қаланың тұрақты тұрғындарының саны 435 адамды құрайды (2008). 402 refund_insufficientҚаланың тұрақты тұрғындарының саны 419 адамды құрайды (2008).
  • Олардың ішінде. GET /api/v1/l402/refunds Әкімшілік департаменті Өлшемдер {"sats": 237, "status": "open", "expires_at": "..."}.
  • Екі токен 60 минутқа дейін пайдалануға болады.
  • Қазір бұл нұсқаулар бар. Ешкім төңкере алмайтын Өйткені, подарок Nymbot бағдарламасына, немесе POST /api/v1/l402/refunds/redeem А Абайдың заявкасы және {"refund_token": "REFUND-...", "balance": "standard"} (Абайдың "pro"Қаланың тұрақты тұрғындарының саны 10 адамды құрайды (31 адамды құрайды);

cURL

URL=https://nymbot.ai/api/v1/l402/refunds/redeem
BODY='{"refund_token":"REFUND-...","balance":"standard"}'
curl "$URL" \
  -H "Authorization: $(nostr_auth POST "$URL" "$BODY")" \
  -H "Content-Type: application/json" \
  -d "$BODY"

Реакция

{ "data": { "credited": 23, "tier": "standard", "balance_credits": 123, "remaining_sats": 7 } }