Erros & paginação
Modelo de erros
Seção intitulada “Modelo de erros”Erros seguem um envelope único (estilo Stripe), sempre um erro por resposta:
{ "error": { "type": "invalid_request_error", "code": "missing_field", "message": "input must have at least one entry", "param": "input", "request_id": "trace-abc123" }}type | HTTP | Quando |
|---|---|---|
invalid_request_error | 400 | corpo/parâmetro inválido (veja param) |
authentication_error | 401 | API key ausente ou inválida |
quota_exceeded | 402 | cota de transcode/duração/views estourada |
permission_error | 403 | sem permissão para a operação |
not_found | 404 | recurso inexistente |
rate_limit_error | 429 | muitas requisições — aplique backoff |
api_error | 500 | erro interno — reporte com o request_id |
O campo request_id identifica a requisição nos logs — inclua-o ao abrir suporte.
Paginação
Seção intitulada “Paginação”GET /v1/videos é paginado por cursor:
curl "https://api.devstreamcore.com/v1/videos?limit=25" \ -H "Authorization: Bearer sc_live_..."A resposta traz has_more e next_cursor. Para a próxima página, repasse o
cursor:
curl "https://api.devstreamcore.com/v1/videos?cursor=<next_cursor>" \ -H "Authorization: Bearer sc_live_..."