NoteBugsDocs

Integração

Códigos de status

Todos os códigos que a API emite, e quando.

CódigoQuando
200leitura, edição, remoção e as respostas de contagem ({ updated: 2 })
201criação: card, comentário, anexo, vínculo, projeto, epic, etiqueta, modelo, coluna, espaço, conta e a primeira conta da instalação
400corpo não é JSON válido; ou multipart com file e remote juntos
401sem credencial, credencial vencida, senha atual errada, e-mail ou senha inválidos
403papel insuficiente; espaço fora do alcance; feature desligada (epics, colunas, upload, criação de espaços); modo demonstração
404o recurso não existe ou já foi apagado
409nome duplicado; a instalação já tem conta (setup); backup em curso; .zip fora de READY; bucket que não guarda backups; vínculo que já existe; configuração de armazenamento bloqueada
413arquivo maior que o limite por anexo
415formato não aceito, julgado pelos magic bytes e não pela extensão
422corpo fora do schema (com details) ou regra de negócio recusada (sem details)
429limite de requisições excedido; a resposta traz Retry-After em segundos
500falha não tratada. EACCES/EPERM no volume vêm com o caminho na mensagem, e não como 500 genérico
502o bucket recusou ou não respondeu; a mensagem traz o que o S3 devolveu

Nunca 200 com erro dentro

A única rota que responde 200 para um estado que parece falha é /api/auth/session: “não há ninguém” é uma resposta, e não um erro. Todo o resto usa o código HTTP.