Pereiti prie turinio
Darbo pradžia

Greitoji pradžia

Peržiūrėti kaip Markdown Atnaujinta

Pirmąjį generavimą atlikite per kelias minutė. Visi 1 496 modeliai naudoja tokio paties tipo užklausą ir grąžina tą patį užklausos objektą vaizdams, vaizdo įrašams ir garsui: išmokite tai čia vieną kartą.

1. Gaukite API raktą

Sukurkite raktą adresu https://doitong.com/developers/dashboard#keys ir išsaugokite jį aplinkos kintamajame: jis rodomas tik vieną kartą. Kiekvienas raktas gali turėti savo biudžetą, todėl galite perduoti jį agentui nerizikuodami visa paskyra. GET /account grąžina jūsų API likutį.

export DOITONG_API_KEY="doitong_..."

curl "https://api.doitong.com/v1/account" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Už generavimus mokama iš jūsų paskyros API likučio API kreditais: 1 000 API kreditų = 1 $, o kiekvienas modelis kainuoja tiksliai tiek, kiek nustatė jo kūrėjas. Papildykite likutį adresu https://doitong.com/developers/dashboard#balance.

2. Gaukite kainą, tada vykdykite

POST /quote/{model_id} priima įvesties JSON ir grąžina tikslią kainą. Rakto nereikia ir nieko nekainuoja. Vykdant tą pačią įvestį kaina bus būtent tokia: kainos pasiūlymas yra mokestis. (Išimtis – modelis, kurio kaina priklauso nuo naudojimo: jo kainos pasiūlymas yra didžiausia galima vykdymo kaina, o nepanaudota dalis grąžinama po vykdymo.)

curl -X POST "https://api.doitong.com/v1/quote/kling-video/v3/pro/image-to-video" \
  -H "Content-Type: application/json" \
  -d '{"image": "https://example.com/fox.jpg", "duration": 5, "generate_audio": true}'
200 OK · kainos pasiūlymas
{
  "object": "quote",
  "model": "kling-video/v3/pro/image-to-video",
  "credits": 840,
  "usd": "0.84",
  "unit": "second",
  "quantity": 5,
  "unit_credits": 168,
  "mode": "exact",
  "breakdown": "5 s × 168 API credits"
}

Tada siųskite tą patį turinį į POST /run/{model_id}. Pridėkite ?wait=20, kad ryšys būtų palaikomas iki 20 sekundžių: greitas modelis grąžins užbaigtą rezultatą per vieną užklausą ir atsakymą. Siųskite Idempotency-Key antraštę, kad pakartotinė užklausa niekada nebūtų įvykdyta (arba apmokestinta) du kartus.

curl -X POST "https://api.doitong.com/v1/run/flux/schnell?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: lighthouse-001" \
  -d '{"prompt": "A lighthouse on a rocky coast at dusk, warm light in the window"}'

Atsakymas yra užklausos objektas:

200 OK · užklausa
{
  "id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
  "object": "request",
  "model": "flux/schnell",
  "status": "succeeded",
  "cost": { "credits": 3, "usd": "0.003", "charged": 3, "refunded": 0 },
  "outputs": [
    { "type": "image", "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
      "content_type": "image/jpeg", "width": 1024, "height": 768, "stored": true }
  ],
  "error": null
}

3. Sekite būseną

Jei pasibaigus laukimo laikui modelis vis dar veikia, gausite 202 Accepted su užklausos id ir dabartine jos status reikšme. Kiekviena užklausa pereina tą patį gyvavimo ciklą:

Užklausos gyvavimo ciklas
  1. queued Priimta ir apmokestinta, laukiama vykdytojo
  2. running Modelis generuoja
  3. Galutinės būsenos:
    • succeededNuskaičiuota nurodyta suma; outputs[] yra URL mūsų saugykloje
    • failedLėšos automatiškai grąžintos; klaida nurodo priežastį
    • canceledSustabdyta prieš gaunant rezultatą; lėšos grąžintos

Dar kartą perskaitykite užklausą naudodami jos id. Čia taip pat veikia ?wait=20, todėl pakanka paprasto ciklo:

curl "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Kai status yra succeeded, outputs[].url nurodo nuorodas į failus mūsų saugykloje. Jei užklausa failed arba buvo canceled, jos API kreditai grąžinami automatiškai, o error nurodo priežastį. Atšaukite viską, kas vis dar yra queued arba running:

terminalas
curl -X POST "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Vykdydami ilgai trunkančius vaizdo įrašų darbus galite nenaudoti būsenos tikrinimo ir vietoj to perduoti webhook_url (žr. Webhook).

4. Failai

Kaip įvestį perduokite bet kurį viešą URL arba paprašykite įkėlimo URL naudodami POST /files, įkelkite failą ten naudodami PUT ir naudokite grąžintą file_url (žr. Failai). Užbaigta užklausa pateikia rezultatus faile outputs[], nurodydama tipą, turinio tipą ir, jei žinoma, matmenis bei trukmę.

terminalas
curl -X POST "https://api.doitong.com/v1/files" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"filename": "fox.jpg", "content_type": "image/jpeg", "size": 482113}'

Klaidos

Kiekvienas modelis sugenda vienodai: viename apvalkale pateikiamas type, tikslus code, problemą sukėlęs param ir kiekviena problema lauke details, todėl agentas gali pataisyti užklausą neskaitydamas aprašomojo teksto. Už negaliojančią užklausą niekas neapmokestinama.

422 Unprocessable Entity
{
  "error": {
    "type": "invalid_request",
    "code": "invalid_input",
    "message": "duration must be one of 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15.",
    "param": "duration",
    "details": [ { "param": "duration", "message": "duration must be one of 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15." } ],
    "request_id": null,
    "doc_url": "https://doitong.com/developers/docs/errors#invalid_input"
  }
}

Visi tipai ir kodai išvardyti skiltyje Klaidos.

Kainodara

Kainos nurodomos USD ir API kreditais bei pateikiamos kiekviename modelio puslapyje prieš vykdant. Kiekvienoje užklausoje yra cost su laukais credits, usd, charged ir refunded. Už vykdymą mokestis taikomas jį priėmus; failed ir canceled užklausų mokesčiai grąžinami automatiškai. Kai kurių modelių kaina tiksliai apskaičiuojama pagal įvestį, kai kurių – pagal siunčiamų failų trukmę arba dydį, o kiti taiko numatomą vykdymo kainą: bet kuriuo atveju mokate kainos pasiūlyme nurodytą sumą. Keli modeliai kalbos ir vaizdo modeliai, balso bei apdorojimo laiko įrankiai) yra apmokestinami pagal naudojimą: kainos pasiūlymas yra didžiausia galima vykdymo kaina, o nepanaudota vykdymo dalis grąžinama automatiškai. Žr. Kainodara.

MCP ir DI agentai

Prijunkite bet kurį MCP klientą prie https://api.doitong.com/v1/mcp naudodami tą patį Bearer raktą. Jūsų agentas gali ieškoti kataloge, gauti modelių kainas ir juos vykdyti, taip pat skaityti kiekvieną dokumentacijos puslapį kaip Markdown.

Claude Code
claude mcp add --transport http doitong-models https://api.doitong.com/v1/mcp \
  --header "Authorization: Bearer YOUR_API_KEY"

Tolesni veiksmai