Erros
Toda falha é um envelope JSON com um código de máquina estável, um motivo opcional que o detalha, uma mensagem para pessoas e o ID da solicitação para o suporte. Os clientes decidem pelo código e pelo motivo, nunca pelo texto da mensagem.
json
{ "code": "conflict", "reason": "version_exists", "message": "…", "requestId": "…" }Códigos
| Código | Status HTTP | Significado |
|---|---|---|
invalid_input | 400 | A solicitação está malformada ou um valor não é permitido; corrija a solicitação antes de enviá-la novamente. |
not_found | 404 | O objeto não existe, ou o chamador não pode vê-lo. |
conflict | 409 | A solicitação entra em conflito com o estado atual; leia o estado novamente e só então decida. |
forbidden | 403 | A credencial é válida, mas não tem a permissão para esta ação. |
unauthorized | 401 | Não há credencial válida: ela está ausente, incorreta, expirada ou revogada. |
capacity_exceeded | 507 | Uma cota, uma capacidade ou um limite seria excedido. |
integrity_mismatch | 422 | Os bytes não correspondem ao tamanho ou ao SHA-256 declarados. |
busy | 503 | O servidor está no seu limite de admissão; repita depois do tempo indicado em Retry-After. |
unavailable | 503 | Uma dependência não está disponível no momento; repita depois do tempo indicado em Retry-After. |
rate_limited | 429 | Tentativas demais; aguarde o tempo indicado em Retry-After. |
read_only | 405 | Este servidor ou gateway não aceita alterações (gateway de leitura ou espelho). |
internal | 500 | Um defeito inesperado do servidor; o ID da solicitação ajuda o suporte a encontrá-lo. Não repita às cegas. |
Motivos
| Código | Motivo | Status HTTP | Significado |
|---|---|---|---|
invalid_input | validation | 400 | Um campo está ausente ou tem um valor fora das regras; os detalhes (details) indicam o campo. |
invalid_input | malformed_json | 400 | O corpo não é um JSON válido. |
invalid_input | body_too_large | 413 | O corpo é maior do que esta operação aceita. |
invalid_input | unsupported_media_type | 415 | O Content-Type não é um dos que esta operação aceita. |
invalid_input | method_not_allowed | 405 | O caminho existe, mas não com este método. |
invalid_input | range_not_satisfiable | 416 | O intervalo de bytes solicitado está fora do conteúdo. |
not_found | route_not_found | 404 | Essa rota não existe. |
conflict | upload_expired | 409 | A sessão de upload expirou antes de ser concluída. |
conflict | upload_state | 409 | O upload não está em um estado que permita esta etapa. |
conflict | revision_mismatch | 409 | A revisão esperada não é a atual (outra alteração veio antes). |
conflict | version_exists | 409 | Esta versão já foi publicada com outro conteúdo. |
conflict | part_mismatch | 409 | Uma parte não corresponde ao tamanho ou ao SHA-256 declarados. |
conflict | parts_incomplete | 409 | Ainda não chegaram todas as partes do upload. |
conflict | idempotency_mismatch | 409 | O Idempotency-Key já foi usado antes com uma solicitação diferente. |
conflict | already_exists | 409 | Já existe um objeto com este nome ou caminho. |
conflict | stage_limit | 409 | O artefato já tem o número máximo de estágios. |
conflict | state_conflict | 409 | O objeto está em um estado que não permite esta alteração. |
conflict | mirror_read_only | 409 | O repositório é um espelho; ele só muda por meio da sincronização. |
forbidden | permission_missing | 403 | A credencial não tem a ação de que esta operação precisa. |
forbidden | read_only_token | 403 | Um token pessoal somente leitura não pode alterar nada. |
forbidden | credential_revoked | 403 | A chave ou o token foi revogado. |
forbidden | session_required | 403 | Somente uma sessão de conta autenticada pode fazer isto, não uma chave. |
forbidden | administrator_required | 403 | Somente um administrador pode fazer isto. |
forbidden | registration_disabled | 403 | O autocadastro está desativado neste servidor. |
forbidden | origin_not_allowed | 403 | A origem do navegador não está em ARKVORY_CORS_ORIGINS. |
unauthorized | invalid_credentials | 401 | O nome da conta ou a senha está incorreto. |
unauthorized | current_password_invalid | 401 | A senha atual está incorreta. |
unauthorized | credential_missing | 401 | A solicitação não traz nenhuma credencial. |
unauthorized | credential_invalid | 401 | A credencial não é uma chave, um token ou uma sessão válida. |
unauthorized | session_expired | 401 | A sessão expirou; faça login novamente. |
unauthorized | token_expired | 401 | O token pessoal expirou. |
capacity_exceeded | storage_quota | 507 | A cota do repositório seria excedida. |
capacity_exceeded | storage_full | 507 | O disco do servidor mantém a sua reserva de espaço livre; não há mais espaço. |
capacity_exceeded | account_limit | 507 | O número de contas atingiu o limite. |
capacity_exceeded | group_limit | 507 | O número de grupos atingiu o limite. |
capacity_exceeded | membership_limit | 507 | O número de membros de grupos atingiu o limite. |
capacity_exceeded | grant_limit | 507 | O número de concessões atingiu o limite. |
capacity_exceeded | key_limit | 507 | O número de chaves atingiu o limite. |
capacity_exceeded | token_limit | 507 | O número de tokens pessoais atingiu o limite. |
capacity_exceeded | delegation_limit | 507 | O número de delegações atingiu o limite. |
capacity_exceeded | catalog_limit | 507 | A capacidade do catálogo da instalação seria excedida. |
capacity_exceeded | queue_full | 507 | A fila de transferências está cheia. |
capacity_exceeded | transfer_limit | 507 | O chamador já tem o número máximo permitido de transferências. |
busy | request_limit | 503 | O servidor já atende o número máximo de solicitações que admite. |
busy | download_queued | 503 | O download aguarda na fila; volte após Retry-After. Arkvory-Queue-Position e Arkvory-Starts-At informam a posição e o início previsto. |
unavailable | feedback_disabled | 503 | O feedback está desativado neste servidor. |
unavailable | hub_unreachable | 503 | Não é possível alcançar o hub de atualização. |
unavailable | replication_degraded | 503 | Um cluster HA tem menos cópias completas do que uma gravação exige, por isso a alteração não foi confirmada; repita após Retry-After. Os downloads continuam funcionando. |
rate_limited | login_attempts | 429 | Tentativas de login demais; aguarde. |
rate_limited | registration_attempts | 429 | Tentativas de registro demais; aguarde. |
rate_limited | password_attempts | 429 | Tentativas de senha demais; aguarde. |
rate_limited | feedback_attempts | 429 | Relatos de feedback demais; aguarde. |