U gudub nuxurka
Tagoo Nymbot

Saldhig aqoon Haku

Xafiisyada, Audio iyo Embeddings

Generators ee app, iyo buugga buuxda ah ee search: photos, video, speech, transcription iyo embeddings, oo kale oo ka mid ah isticmaalka ka mid ah saldhigga aad.

Haku Images

Ma rabtaa mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah. ?image Ku saabsan app.

POST https://nymbot.ai/api/v1/images/generations — waxaa loo baahan yahay API key, ama Qalabka Lightning on request.

Qalabka Qalabka GET /api/v1/models?type=imageKu saabsan Generator Standard, @cf/black-forest-labs/flux-1-schnellQalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka adeegyada app. n Qalabka Photo n Shuruudaha ugu badan oo ka mid ah. A field a generator does not take is dropped rather than rejected; the standard generator uses the prompt only.

QalabkaHakuQEEBEHaku
modelHakuHaaXirfadada Xirfadada Xirfadada Xirfadada Xirfadada Xirfadada Xirfadada Xirfadada Xirfadada nano-banana.
promptHakuHaaSida loo isticmaali karaa, waxaa loo isticmaali karaa 2000 ka mid ah.
nHakuHaku1 to 4. Default 1. sidoo kale ku salaysan num_images.
sizeHakuHakuSidee waa mid ka mid ah sida "16:9"Markaas oo ka mid ah mid ka mid ah mid ah "1792x1024"Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka "auto" Waayo, waxaa loo yaqaan Generator.
aspect_ratioHakuHakuSida loo yaabaa sizeWaayo, waxa uu ka mid ah ka mid ah mid ka mid ah mid ka mid ah.
qualityHakuHakuGenerator-specific, sida "low", "medium" Marka "high".
negative_promptHakuHakuWaayo in la siiyo.
output_formatHakuHaku"png", "jpeg" Marka "webp".
response_formatHakuHaku"url" (Laga yaabaa) ama "b64_json".
image_urlHakuHakuSida loo yaqaan "A picture to start from: an https:// link oo ka badan 4,096 kala duwan oo ka mid ah user name ama password. data:image/…;base64 URL (PNG, JPEG, WebP ama GIF; ma ahaado SVG). editQalabka waxaa laga yaabaa in ay ka mid ah ka mid ah. requires_image_url.

resolution Waxaa la isticmaali karaa in la isticmaali karaa in la isticmaali karaa in la isticmaali karaa in la isticmaali karaa in la isticmaali karaa. urlSida loo isticmaali karaa in ay ka mid ah wax soo saarka, waxaa loo isticmaali karaa in ay ka mid ah wax soo saarka iyo wax soo saarka. Sida loo yaqaan FireQalabka b64_json The image comes back in the response and is never uploaded. A picture sent as a data: URL-ka image_url Waxaa laga yaabaa in la soo bandhigay sida Haku Markaas ka mid ah wax soo saarka, waxaa laga yaabaa in ay ka mid ah wax soo saarka ah oo ka mid ah wax soo saarka.

Markaad ka mid ah n Xirfadeed oo ka mid ah wax soo saarka ah oo ka mid ah wax soo saarka iyo wax soo saarka. nymbot.failed Waa in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan yahay. 502.

QEEBE

{
  "created": 1790726400,
  "model": "nano-banana",
  "cost": 0.2126,
  "data": [
    {
      "url": "https://blossom.example/5c0e4b7d3a91f2e8...c4.png",
      "content_type": "image/png"
    }
  ],
  "nymbot": { "balance": "pro", "charged_credits": 1.817, "charged_sats": 181.7, "balance_credits": 410.608, "balance_sats": 41060.8 }
}
QEEBEMarka
400Haku waaweyn. n 1 x 4 (invalid_value(Waa'iid ka mid ah)invalid_size(Waax yar)invalid_image, invalid_image_url); model waxaa laga yaabaa, laakiin waxaa laga yaabaa in ay image generator (invalid_model); image for a generator that can’t edit (edit_unsupported); no picture for one who needs it (image_required).
402Qalabka waa in la soo xiriir in la soo xiriir in la soo xiriir.
404Ma rabtaa in aad Cudarada (model_not_found).
502Qalabka Qalabka (upstream_errorWaxaa laga yaabaa in ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah. charged_sats.
503Ma rabtaa in aad Cudarada Cudarada (media_hosting_unavailable). b64_json Haku waaweyn.

cURL

curl https://nymbot.ai/api/v1/images/generations \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "nano-banana",
    "prompt": "A lighthouse at dusk, oil painting",
    "size": "16:9"
  }'

Python

import os
import requests

res = requests.post(
    "https://nymbot.ai/api/v1/images/generations",
    headers={"Authorization": "Bearer " + os.environ["NYMBOT_API_KEY"]},
    json={"model": "nano-banana", "prompt": "A lighthouse at dusk, oil painting", "size": "16:9"},
)
res.raise_for_status()
print(res.json()["data"][0]["url"])

JavaScript

const res = await fetch("https://nymbot.ai/api/v1/images/generations", {
  method: "POST",
  headers: {
    "Authorization": "Bearer " + process.env.NYMBOT_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ model: "nano-banana", prompt: "A lighthouse at dusk, oil painting", size: "16:9" }),
});
const body = await res.json();
console.log(body.data[0].url);

Qalabka Images

Ma ahaatee, waxaa laga yaabaa in ay ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah. images.edit Xirfadeed oo ka mid ah loo isticmaali karaa edit Sida loo isticmaali karaa model.

POST https://nymbot.ai/api/v1/images/edits — waxaa loo baahan yahay API key, ama Qalabka Lightning on requestQalabka waa multipart/form-dataKa badan 32 MB.

QalabkaHakuQEEBEHaku
imageHakuHaaShuruudaha loo isticmaalo: PNG, JPEG, WebP ama GIF, ka badan 20 MB. image[]First waxaa loo isticmaali karaa.
promptHakuHaaSida loo isticmaali karaa
modelHakuHaaGenerator ka mid ah edit.
nHakuHaku1 iyo 4.
size
aspect_ratio
quality
negative_prompt
output_format
HakuHakuKu saabsan Generation.
response_formatHakuHaku"b64_json" (wax ka mid ah) ama "url".

Shuruudaha ugu horeysay ee loo yaqaan 'PNG', 'JPEG', 'WebP' ama 'GIF', waxaa loo yaqaan 'PNG' iyo 'GIF' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom' iyo 'Blossom'.

QEEBE

{
  "created": 1790726460,
  "model": "nano-banana",
  "cost": 0.2126,
  "data": [{ "b64_json": "iVBORw0KGgoAAAANSUhEUgAA..." }],
  "nymbot": { "balance": "pro", "charged_credits": 1.817, "charged_sats": 181.7, "balance_credits": 408.791, "balance_sats": 40879.1 }
}
QEEBEMarka
400No image or prompt, a file that is not an image (invalid_image) ama loo isticmaalaa in ay u isticmaalaa in ay u isticmaalaa (edit_unsupported).
413Xafiiska ugu badan 20 MB (file_too_large), ama xawaaraha oo dhan oo ka badan 32 MB.
503Waxaa laga yaabaa in la soo xiriir (media_hosting_unavailable).

cURL

curl https://nymbot.ai/api/v1/images/edits \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -F model=nano-banana \
  -F [email protected] \
  -F prompt="Make it a snowy evening"

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("photo.png", "rb") as f:
    result = client.images.edit(model="nano-banana", image=f, prompt="Make it a snowy evening")

with open("edited.png", "wb") as out:
    out.write(base64.b64decode(result.data[0].b64_json))

JavaScript

import fs from "node:fs";
import { writeFile } 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 result = await client.images.edit({
  model: "nano-banana",
  image: fs.createReadStream("photo.png"),
  prompt: "Make it a snowy evening",
});
await writeFile("edited.png", Buffer.from(result.data[0].b64_json, "base64"));

Haku

Video waxaa loo yaabaa mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah.

POST https://nymbot.ai/api/v1/videos — waxaa loo baahan yahay API key, ama Qalabka Lightning on requestTagoo 202.

QalabkaHakuQEEBEHaku
modelHakuHaaVideo Generator ID ka mid ah GET /api/v1/models?type=videoSidaa sida veo.
promptHakuHaaWaxa uu ku yaalaa.
durationQalabka iyo stringHakuWaqtiga in sekunda, oo ka badan 0 iyo ka badan 60. Waxaa loo isticmaali karaa kaliya by macluumaad ah oo aad ka heli karaa xawaaraha; kale waa in ay ka mid ah xawaaraha ah, oo waa seconds Sida loo soo xiriir iyo qiimeeyaasha.
aspect_ratioHakuHakuHaku "16:9" Marka "9:16"Qalabka ugu badan oo ku saabsan "1280x720" Waxaa la soo bandhigiisa ugu caawin.
resolution
quality
HakuHakuSida loo yaqaan Generator resolutions Sida loo isticmaali karaa model, sida "720p" Marka "1080p"Qalabka waxaa laga yaabaa in ay ka mid ah wax soo saarka ah. unsupported_resolution.
image_urlHakuHakuSida loo yaqaan "A picture to start from: an https:// link iyo a data:image/… URL-ka, oo ay u soo dejisan in la soo bandhigiisa Blossom. requires_image_url.

Qalabka waxaa laga yaabaa in ay ku dhigi karaa, ka mid ah loo yaabaa, wax soo saarka iyo xawaaraha, sidaas waxaa laga yaabaa in aad Pro saldhiga ka dib markii loo yaabaa in ay ku dhigi karaa, iyo waxaa loo yaabaa sida: cost, estimated_cost iyo nymbotIf the provider refuses the job, nothing is charged. If the rendering later faals, or the finished clip cannot be stored and the provider did not bill for it, the charge is refunded once, automatically. A rendering which is still going after an hour is given up, and keeps its charge, because the provider bills a render once it accepts it. A refund returns the credits but does not lower the key's spending count.

Haku (202)

{
  "id": "vid_3e9a51c07b2f4d86e0a1c4f2",
  "object": "video",
  "model": "veo",
  "status": "in_progress",
  "created": 1790726400,
  "seconds": 8,
  "resolution": "1080p",
  "estimated_cost": 3.18,
  "expires_at": 1790812800,
  "cost": 3.18,
  "nymbot": { "balance": "pro", "charged_credits": 31.8, "charged_sats": 3180, "balance_credits": 378.808, "balance_sats": 37880.8 }
}

status Xafiiska in_progressiyo completed Video waxaa laga yaabaa in data Xirfadeed oo ku yaalaa in uu ku yaalaa.

Qalabka video

GET https://nymbot.ai/api/v1/videos/{id} - waxaa laga yaabaa in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan yahay.

Haku 202 Sida loo isticmaali karaa video iyo 200 Sida loo isticmaali karaa in ay ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah. GET /api/v1/videos Qalabka ugu horeysay ee 50 oo ka mid ah {"object": "list", "data": […]}.

Haku (200)

{
  "id": "vid_3e9a51c07b2f4d86e0a1c4f2",
  "object": "video",
  "model": "veo",
  "status": "completed",
  "created": 1790726400,
  "seconds": 8,
  "resolution": "1080p",
  "estimated_cost": 3.18,
  "expires_at": 1790812800,
  "completed_at": 1790726590,
  "data": { "url": "https://blossom.example/9b41d0c2e7a3f658...1e.mp4", "content_type": "video/mp4" },
  "cost": 3.18,
  "nymbot": { "balance": "pro", "charged_credits": 31.8, "charged_sats": 3180 }
}

status Haku in_progress, completed Marka failedQalabka Qalabka Qalabka Qalabka error ({"code": "generation_failed", "message": …}Haddii aad u baahan yahay in ay ku yaalaa, cost 0 iyo nymbot Haku refunded_credits iyo refunded_satsVideo ugu horeysay waa on host Blossom kharashka, sida loo soo saarka image.

QEEBEMarka
400Marka aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay.invalid_value); wax soo saarka loo soo saarka nooc ah (unsupported_resolution); no image for a generator that needs one (image_required); model oo ay ka mid ah video jilicsan (invalid_model).
402Pro saldhigga waxay ka mid ah video.
404Waxaa laga yaabaa in la soo bandhigay (model_not_foundMa rabtaa in aad Cudarada, ama in aad Cudarada in aad Cudarada in aad Cudarada in aad Cudarada in aad Cudarada in aad Cudarada in aad Cudarada (video_not_found).
429Nala soo xiriir in la soo xiriir 10 videos (video_jobs_limitWaayo, waxaan ka soo xiriir in la soo xiriir oo ka mid ah mid ka mid ah.
502Shuruudaha waxaa laga yaabaa in la soo xiriir in ay ku saabsan shuruudaha iyo shuruudaha.
503Ma rabtaa in la soo bandhigay ama in la soo bandhigay (media_hosting_unavailable, service_unavailable).

cURL

curl https://nymbot.ai/api/v1/videos \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "veo", "prompt": "Waves rolling onto a beach at sunrise", "duration": 8, "aspect_ratio": "16:9"}'

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

Python

import os, time
import requests

headers = {"Authorization": "Bearer " + os.environ["NYMBOT_API_KEY"]}

job = requests.post(
    "https://nymbot.ai/api/v1/videos",
    headers=headers,
    json={"model": "veo", "prompt": "Waves rolling onto a beach at sunrise", "duration": 8, "aspect_ratio": "16:9"},
).json()

while True:
    time.sleep(8)
    status = requests.get("https://nymbot.ai/api/v1/videos/" + job["id"], headers=headers).json()
    if status["status"] in ("completed", "failed"):
        break

print(status["data"]["url"] if status["status"] == "completed" else status["error"])

JavaScript

const headers = {
  "Authorization": "Bearer " + process.env.NYMBOT_API_KEY,
  "Content-Type": "application/json",
};

const job = await (await fetch("https://nymbot.ai/api/v1/videos", {
  method: "POST",
  headers,
  body: JSON.stringify({ model: "veo", prompt: "Waves rolling onto a beach at sunrise", duration: 8, aspect_ratio: "16:9" }),
})).json();

let status;
do {
  await new Promise((r) => setTimeout(r, 8000));
  status = await (await fetch("https://nymbot.ai/api/v1/videos/" + job.id, { headers })).json();
} while (status.status !== "completed" && status.status !== "failed");

console.log(status.status === "completed" ? status.data.url : status.error);

Textiisa waxaa laga yaabaa

Ma rabtaa xusuusada iyo xusuusada xusuusada iyo xusuusada iyo xusuusada. audio.speech.create Sida loo isticmaali karaa OpenAI SDK.

POST https://nymbot.ai/api/v1/audio/speech — waxaa loo baahan yahay API key, ama Qalabka Lightning on request.

QalabkaHakuQEEBEHaku
modelHakuHakuXirfadeed oo ka mid ah Qalabka AudioXafiisyada: xafiisyada Standard @cf/myshell-ai/melotts. aura-2 Deepgram Aura 2 oo ka mid ah.
inputHakuHaaTaageerada ugu horeysay ee loo yaqaan 'Aura 2' waa in ka badan 800 aqoonsiga, oo ka badan 2000 aqoonsiga.
voiceHakuHakuA Voice ID ka mid ah Qalabka Voice: Aura speaker sida luna (Eee aura-2-luna-enMa rabtaa in aad Cudarada Cudarada (en, es, fr, zh) OpenAI soo xiriir sida alloy Waxaa la heli karaa in la heli karo model ah.
languageHakuHakuSida loo isticmaali karaa codka esHaddii aad u baahan tahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay in ay u baahan yahay. 422 voice_language_mismatchSidaa waxaa laga yaabaa in ay ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah. 422 unsupported_language.
response_formatHakuHakuKu saabsan Standard Voice mp3 Aura 2 waxaa laga yaabaa mp3 (Diiwaanka waxaa laga yaabaa) opus, aac, flac, wav Marka pcm.
speedHakuHakuWaayo, waxa uu ka heli karaa.

Shuruudaha ugu horeysay ee loo yaqaan 'Aura 2' waa 'Pro', oo ku yaqaan 'Aura 2' waa 'Aura 2' iyo 'Aura 2' waa 'Aura 2' iyo 'Aura 2' waa 'Aura'. Content-TypeQalabka waa in la X-Nymbot-Cost-Sats Qalabka: If the speech model faallays, no is charged.

QEEBE

HTTP/1.1 200 OK
Content-Type: audio/mpeg
X-Nymbot-Cost-Sats: 4.2
X-Nymbot-Balance-Sats: 41055.6

(audio bytes)
QEEBEMarka
400Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka (input_too_long); a format model in ay ka soo saarka (unsupported_response_format(Diiwaanka ugu horeysay ee loo yaabaa in la soo bandhigay)invalid_voice); model waa mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ah mid ka mid ah mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ah mid ka mid ah mid ah (invalid_model).
422Markaas ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah.
502Qalabka dhismaha waxaa laga yaabaa.

cURL

curl https://nymbot.ai/api/v1/audio/speech \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "aura-2", "voice": "luna", "input": "Your invoice has been paid."}' \
  --output speech.mp3

Python

import os
from openai import OpenAI

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

audio = client.audio.speech.create(
    model="aura-2",
    voice="luna",
    input="Your invoice has been paid.",
)
audio.write_to_file("speech.mp3")

JavaScript

import { writeFile } 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 audio = await client.audio.speech.create({
  model: "aura-2",
  voice: "luna",
  input: "Your invoice has been paid.",
});
await writeFile("speech.mp3", Buffer.from(await audio.arrayBuffer()));

Qalabka Audio iyo Voice

Tusaale ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah.

GET https://nymbot.ai/api/v1/audio/models Waayo, waxaan u baahan tahay key.

GET https://nymbot.ai/api/v1/audio/voices?language=en Waayo, waxaan u baahan tahay key.

QalabkaHakuQEEBEHaku
languageQalabka (Query)HakuWaayo, sidoo kale waxaa laga yaabaa in la heli karaa.
modelQalabka (Query)HakuMarkaad ka mid ah model.

Reactions (wax yar)

{
  "object": "list",
  "data": [
    { "id": "luna", "name": "Luna", "provider": "deepgram", "model_id": "aura-2", "models": ["aura-2"], "language": "en", "description": "Aura 2 English voice", "gender": "female", "preview_url": null },
    { "id": "en", "name": "MeloTTS English", "provider": "myshell", "model_id": "@cf/myshell-ai/melotts", "models": ["@cf/myshell-ai/melotts", "melotts"], "language": "en", "description": "English (MeloTTS)", "gender": null, "preview_url": null }
  ]
}

Qalabka Qalabka Qalabka {"object": "list", "data": {"tts": […], "stt": […]}}Qalabka dhismaha waaweyn ee dhismaha dhismaha iyo dhismaha. max_input_chars, response_formats, languages iyo default_voiceQalabka dhismaha waxaa loo isticmaali karaa, max_file_bytes, max_secondsQalabka iyo price per minute.

cURL

curl https://nymbot.ai/api/v1/audio/models
curl "https://nymbot.ai/api/v1/audio/voices?language=en"

Python

import requests

print(requests.get("https://nymbot.ai/api/v1/audio/models").json())
for voice in requests.get("https://nymbot.ai/api/v1/audio/voices", params={"language": "en"}).json()["data"]:
    print(voice["id"], voice["model_id"])

JavaScript

console.log(await (await fetch("https://nymbot.ai/api/v1/audio/models")).json());
const voices = await (await fetch("https://nymbot.ai/api/v1/audio/voices?language=en")).json();
for (const v of voices.data) console.log(v.id, v.model_id);

Talooyin Text

Ma ahaatee, waxaa laga yaabaa in ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah. audio.transcriptions.create Qalabka

POST https://nymbot.ai/api/v1/audio/transcriptions — waxaa loo baahan yahay API key, ama Qalabka Lightning on requestQalabka waa multipart/form-data.

QalabkaHakuQEEBEHaku
fileHakuHaaShuruudaha, ka 25 MB ilaa 25 MB iyo ka badan 30 min: WAV, WebM, MP4 ama M4A, Ogg ama Opus, MP3 iyo muuqaalka fursadaha Whisper.
modelHakuHakuHaku whisperShuruudaha ugu fiican ee whisper v3 turbo. whisper-1, whisper-large-v3-turbo iyo @cf/openai/whisper-large-v3-turbo Waxaa la mid ah.
languageHakuHakuSida loo yaabaa, sida enMarkaad ka mid ah ka mid ah ka mid ah ka mid ah.
promptHakuHakuWaayo, waxaa loo isticmaali karaa mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah.
response_formatHakuHakujson (Diiwaanka waxaa laga yaabaa) text, srt, vtt Marka verbose_json.

Waayo, WAV, WebM, MP4 iyo file Ogg, xawaaraha waa la heli karaa by file ka hor, sidaas oo ka mid ah 30 daabacaad oo ka badan oo ka mid ah 30 daabacaad oo ka mid ah 30 daabacaad oo ka mid ah 3 daabacaad oo ka mid ah 3 daabacaad oo ka mid ah 8 kbps oo ka mid ah 30 daabacaad oo ka mid ah 1.8 MB. 413 audio_too_long Waayo, waxaa loo isticmaali karaa in ay ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ka mid ah. 413 audio_too_long, iyo ka dib markii Whisper ayaa la xira, 30 daawada waa la xira.

Waxaad ku salaysan xawaaraha audio, ka mid ah ka mid ah sekunda: xawaaraha ugu badan oo ku saabsan file, xawaaraha Whisper raaxada, iyo xawaaraha file ka mid ah in ay ku salaysan, at price per minute of Whisper with the usual fee and margin, and at least 0.05 credit a request. It is paid from the standard balance when that can cover the hold, and from Pro otherwise; 402 Waxaad ka soo xiriir in aad u baahan tahay in aad u hesho. In app, transcribing a voice message may be free; on the API it is always charged. If Whisper faallan, nothing is charged.

QEEBE

{
  "text": "Your invoice has been paid.",
  "usage": { "type": "duration", "seconds": 3 },
  "nymbot": { "balance": "standard", "charged_credits": 0.05, "charged_sats": 0.5, "balance_credits": 120.35, "balance_sats": 1203.5 }
}

text Ku saabsan text, srt iyo vtt subtitles, iyo verbose_json Waxaa la soo bandhigiisa in la soo bandhigiisa, waqtiga iyo waqtiga.

QEEBEMarka
400No file, file without usable audio (invalid_audioMa rabtaa in aad Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudaradaada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudarada Cudaradainvalid_model).
402Waxaa kale oo ka mid ah wax soo saarka.
413Files waa badan 25 MB (file_too_largeMarka aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan yahay.audio_too_long).
502Shuruudaha ha ahaado audio.

cURL

curl https://nymbot.ai/api/v1/audio/transcriptions \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -F [email protected] \
  -F model=whisper \
  -F response_format=json

Python

import os
from openai import OpenAI

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

with open("memo.m4a", "rb") as f:
    transcript = client.audio.transcriptions.create(model="whisper", file=f)
print(transcript.text)

JavaScript

import fs from "node:fs";
import OpenAI from "openai";

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

const transcript = await client.audio.transcriptions.create({
  model: "whisper",
  file: fs.createReadStream("memo.m4a"),
});
console.log(transcript.text);

Taageerada Talooyin Ingiriis

POST https://nymbot.ai/api/v1/audio/translations — waxaa loo baahan yahay API key, ama Qalabka Lightning on requestQalabka waa multipart/form-data.

Sida loo isticmaali karaa, waxaa loo isticmaali karaa in ka mid ah macluumaadka. languageShuruudaha iyo qiimaha, laakiin qoraalka waxay ku yaalaa Ingiriis oo aan la yaabaa. The OpenAI SDKs ku saabsan audio.translations.create.

cURL

curl https://nymbot.ai/api/v1/audio/translations \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -F [email protected] \
  -F model=whisper

Python

import os
from openai import OpenAI

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

with open("nota.m4a", "rb") as f:
    translation = client.audio.translations.create(model="whisper", file=f)
print(translation.text)

JavaScript

import fs from "node:fs";
import OpenAI from "openai";

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

const translation = await client.audio.translations.create({
  model: "whisper",
  file: fs.createReadStream("nota.m4a"),
});
console.log(translation.text);

Haku

Markaad ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah.

POST https://nymbot.ai/api/v1/embeddings — waxaa loo baahan yahay API key, ama Qalabka Lightning on request.

QalabkaHakuQEEBEHaku
modelHakuHaaQalabka dhismaha ah ee GET /api/v1/models?type=embedding.
inputQalabka iyo Array of StringsHaaQalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka Qalabka (token_input_unsupportedQalabka dhismaha iyo dhismaha iyo dhismaha iyo dhismaha. context_lengthQalabka ugu badan oo ku saabsan 4 byte ee token.
encoding_formatHakuHakufloat (Laga yaabaa) ama base64 (Little-endian 32-bit floats waaweyn)
dimensionsHakuHakuQalabka ugu badan ee model, ama for a model with supported_dimensions Sida loo yaabaa, waxaa loo yaabaa in ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah mid ka mid ah.
modelkaQalabkaQalabka
@cf/baai/bge-m31024 oo badan oo ku saabsan8192 Qalabka
@cf/qwen/qwen3-embedding-0.6b1024 oo badan oo ku saabsan8192 Qalabka
@cf/baai/bge-large-en-v1.51024 - Ingiriis512 QEEBE
@cf/baai/bge-base-en-v1.5768 - Ingiriis512 QEEBE
@cf/baai/bge-small-en-v1.5384 Ingiriis512 QEEBE

Dhismaha dhismaha waa mid ka mid ah mid ka mid ah mid ka mid ah in ay ku yaalaa; Google's EmbeddingGemma, oo ay ka mid ah vectators ka mid ah on request, waxaa laga yaabaa in ka mid ka mid ka mid ka mid ka mid ka mid ka mid ka mid ka mid ah.

QEEBE

{
  "object": "list",
  "data": [
    { "object": "embedding", "index": 0, "embedding": [0.0213, -0.0487, 0.0112] }
  ],
  "model": "@cf/baai/bge-m3",
  "usage": { "prompt_tokens": 9, "total_tokens": 9 },
  "nymbot": { "balance": "standard", "charged_credits": 0.05, "charged_sats": 0.5, "balance_credits": 1204.35, "balance_sats": 12043.5 }
}
QEEBEMarka
400Marka aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay in aad u baahan tahay (token_input_unsupported); oo ka badan 100 inducts (too_many_inputs); wax soo saarka ugu horumariyo badan oo model waa (input_too_long); mid ka mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ah mid ka mid ah mid ah mid ka mid ah mid ah mid ah mid ka mid ah (unsupported_dimensions).
402Qalabka dhismaha ugu badan oo dhan. Qalabka dhismaha ah waxaa loo isticmaali karaa.
404Markaad ka mid ah mid ka mid ah.
502Qalabka waxaa laga yaabaa.

cURL

curl https://nymbot.ai/api/v1/embeddings \
  -H "Authorization: Bearer $NYMBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "@cf/baai/bge-m3", "input": ["Lightning invoices expire.", "Invoices on Lightning have a time limit."]}'

Python

import os
from openai import OpenAI

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

result = client.embeddings.create(
    model="@cf/baai/bge-m3",
    input=["Lightning invoices expire.", "Invoices on Lightning have a time limit."],
)
print(len(result.data), len(result.data[0].embedding))

JavaScript

import OpenAI from "openai";

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

const result = await client.embeddings.create({
  model: "@cf/baai/bge-m3",
  input: ["Lightning invoices expire.", "Invoices on Lightning have a time limit."],
});
console.log(result.data.length, result.data[0].embedding.length);