Erros
O formato único dos erros, os códigos de status e o que fazer em cada caso.
Um formato para todos os erros
Toda resposta de erro tem os mesmos campos: o status HTTP em statusCode, um code estável para testar no seu programa e uma message escrita para pessoas. As mensagens podem mudar; os códigos, não.
{
"statusCode": 404,
"code": "not_found",
"message": "work not found"
}Códigos de status
Estes são os códigos que você encontrará ao ler a API pública:
- 400
invalid_requestUm parâmetro está ausente, tem o tipo errado ou está fora do intervalo. - 403
forbiddenO recurso existe, mas o dono o mantém privado. - 404
not_foundNão há nada neste endereço. - 429
rate_limitedRequisições demais a partir do seu endereço; aguarde e tente novamente. - 500
internal_errorAlgo deu errado do nosso lado; tente novamente mais tarde. - 503
unavailableUm serviço de que a operação precisa, como a busca, está fora do ar por um momento.
Parâmetros inválidos
Quando um parâmetro está ausente ou fora do intervalo, a resposta é 400 invalid_request, e issues lista cada problema com o nome do parâmetro.
{
"statusCode": 400,
"code": "invalid_request",
"message": "The request parameters are not valid.",
"issues": ["limit: Too big: expected number to be <=50"]
}Obras movidas
Quando duas entradas do catálogo se revelam a mesma obra, uma é mesclada à outra. Pedir a antiga responde 301 com o novo ID, ou a nova mídia e o novo slug, em movedTo. Solicite o novo endereço e atualize o que você armazena.
HTTP/1.1 301 Moved Permanently
{ "movedTo": "01a0cb02-0a14-7877-911d-5b4dde76df72" }Seções privadas do perfil
Os membros decidem quais partes do perfil são públicas. Uma seção oculta responde 403 com um código que a identifica, como favorites_private, library_private, activity_private ou communities_private. Um membro que mudou o nome de usuário responde 404 member_renamed com o novo nome em username.
{
"statusCode": 403,
"code": "favorites_private",
"message": "You are not allowed to do this."
}