Skip to main content

Error responses

Every non-2xx response uses one structured envelope:
The message is written to be actionable — surface it directly. Include request_id in any bug report. Retryable vs not: auto-retry (respect Retry-After) rate_limited · unavailable · video_not_ready; do not retry without changing the request invalid_argument · not_found · conflict.

HTTP status codes

Rate limits

  • X-RateLimit-Limit / -Remaining / -Reset headers on every response.
  • Search: 5 QPS/user.
  • Rolling 2-hour concurrent-indexing cap.
  • Always respect Retry-After on 429 / 503.

Limits & quotas