Limity żądań i rozliczenia
Limity żądań na klucz i sposób naliczania opłat za korzystanie z API.
Limity żądań
Limity obowiązują dla każdego klucza i są liczone osobno dla odczytów i zapisów, więc seria przesłań nie zablokuje Twojej pętli odpytującej.
| Rodzaj żądań | Limit |
|---|---|
Odczyty (GET) | 300 żądań/minutę |
Zapisy (POST, PUT, PATCH, DELETE) | 120 żądań/minutę |
Każda odpowiedź podaje, ile żądań zostało Ci w bieżącej minucie:
X-Rate-Limit-Remaining: 287Po przekroczeniu limitu API zwraca 429 z nagłówkiem Retry-After (w sekundach):
async function withRetry(request, attempts = 5) {
for (let attempt = 0; attempt < attempts; attempt++) {
const res = await request();
if (res.status !== 429) return res;
const wait = Number(res.headers.get('Retry-After') ?? 2 ** attempt);
await new Promise((r) => setTimeout(r, wait * 1000));
}
throw new Error('rate limited');
}Jeśli potrzebujesz wyższego limitu, skontaktuj się z nami — to wartości początkowe, a nie sztywne ograniczenia architektury.
Rozliczenia
Korzystanie z API odbywa się w ramach tego samego planu co aplikacja. Nie ma osobnej ceny za API ani opłaty za żądanie: rozliczany jest czas trwania przetworzonych nagrań — w ramach limitu audio organizacji i ewentualnych dokupionych godzin.
Zużycie jest rejestrowane po zakończeniu przetwarzania rozmowy, więc nieudane przesłanie nie zużywa limitu audio, a
zduplikowane przesłanie odrzucone z kodem 409 nie jest rozliczane.
Gdy limit audio się wyczerpie
Przesłania są odrzucane z kodem 402 Payment Required, zanim plik zostanie zapisany:
{ "message": "Audio allowance exhausted", "status": 402 }Możesz też otrzymać 402 z komunikatem „Trial period ended” lub „No active plan”. Odczyty nadal działają — blokowane są
tylko nowe przesłania. Dokup godziny lub zmień plan w sekcji Rozliczenia w aplikacji, a przesyłanie zostanie
wznowione natychmiast.
Zużycie obciąża organizację, do której należy projekt, niezależnie od tego, który klucz wysłał żądanie — korzystanie z wielu kluczy nie rozbija faktury.