Navigace
ELOWEN · Dokumentace

Poslední aktualizace: 27. října 2026

Procházet dokumentaci · Chyby API agenta
Skilly, MCP a API

Chyby API agenta

Každý odmítnutý požadavek odpovídá stavovým kódem a tělem JSON s polem error, takže se skript může rozhodnout, co udělá dál.

Příklady používají proměnné ELOWEN_URL a ELOWEN_TOKEN z Odešlete první požadavek na API agenta.

Stavové kódy

Stav Kdy nastane Tělo
400 Tělo požadavku není platný JSON, pole má špatný typ nebo nese pole, které požadavek nepřijímá. { "error": "…" } s popisem pole
401 Token chybí, je neznámý, smazaný nebo propadlý, případně byla jeho hodnota nahrazena. { "error": "unauthorized" }
402 Účet dosáhl měsíčního limitu útraty. Samotná chybějící cena modelu toto odmítnutí nezpůsobuje. Jde o limit účtu, ne tokenu. { "error": "spend_limit", "reason": "monthly_limit", "resetsAt": "…" }, kde resetsAt je začátek dalšího měsíce v UTC
403 Požadavek vyžaduje přihlášenou relaci v prohlížeči nebo ho Váš účet nesmí použít. Viz Co token neumí. { "error": "forbidden" }
404 conversationId není jedna z Vašich konverzací. { "error": "unknown conversation" }
409 V konverzaci už běží tah. { "error": "conversation_busy" }
409 Požadovaný model byl odmítnut. { "error": "…" }, stejná zpráva, jakou ukazuje webová aplikace
429 Byl dosažen limit tokenu. { "error": "…", "reason": "…" } a hlavička Retry-After
500 Tah selhal, nemohl začít nebo se nepodařilo přepnout na požadovaný model. S "stream": true odpovídá tah, který nemohl začít, tímto stavem místo streamu. { "error": "…", "conversationId": "…" }
503 Agent není na tomto serveru dostupný. Vrací se i tehdy, když se nepodařilo zaznamenat spotřebu účtu, což blokuje jeho placené požadavky, dokud administrátor spotřebu nesrovná a Chetty nerestartuje. { "error": "brain unavailable" }, nebo zpráva o spotřebě

Rozhodujte se podle error a u 429 podle reason, ne podle textu zprávy.

Odmítnutí kvůli limitu

429 vždy nese Retry-After, počet sekund k čekání, a reason, podle kterého se skript může zachovat:

error reason Význam Retry-After
limit_exhausted requests_per_minute Příliš mnoho požadavků v této minutě. Sekundy do konce minuty.
limit_exhausted monthly_cost Měsíční limit nákladů je dosažen. Sekundy do dalšího měsíce v UTC.
limit_unverifiable monthly_cost_unverifiable Některý tah tento měsíc nehlásil náklady, takže limit nelze ověřit. Sekundy do dalšího měsíce v UTC.
limit_exhausted daily_cost Denní limit nákladů je dosažen. Sekundy do dalšího dne v UTC.
limit_unverifiable daily_cost_unverifiable Některý tah dnes nehlásil náklady, takže limit nelze ověřit. Sekundy do dalšího dne v UTC.
limit_exhausted concurrent_turns Příliš mnoho běhů stále běží. 1

Když je dosaženo více limitů nákladů najednou, odpověď uvádí širší okno, měsíc před dnem, aby Retry-After byl čas, kdy běh skutečně může uspět.

curl -sS -D - "$ELOWEN_URL/api/v1/agent/runs" \
  -H "Authorization: Bearer $ELOWEN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"message":"One more"}'
HTTP/1.1 429 Too Many Requests
Retry-After: 52380
Content-Type: application/json

{"error":"limit_exhausted","reason":"daily_cost"}

Co se započítá z odmítnutého běhu

Běh odmítnutý limitem nic nevytvoří: žádnou konverzaci, žádný tah a nic do počtu tahů tokenu.

Totéž platí pro běh odmítnutý proto, že konverzace byla obsazená, konverzace nebo model byly neznámé, nebo jeho tah nemohl začít. Opakování po čekání proto proběhne, jako by odmítnutý pokus nikdy nenastal.

Jak tyto limity nastavit popisuje Omezte, co může API token spustit; požadavek, který projde, Odešlete první požadavek na API agenta.