Lista de Códigos de Sucesso
A API usa os seguintes códigos HTTP para indicar retornos de sucesso comuns:
Status HTTP | Descrição | Método HTTP |
---|---|---|
200 | Indica que o processamento foi realizado corretamente e o retorno poderá ser consultado no corpo do HTTP Response | GET |
201 | Indica que o recurso foi criado com sucesso, deverá existir o header Location: indicando a URI do novo recurso | POST |
202 | Indica que o processamento será assíncrono, portanto, além do header Location, deverá retornar o conteúdo com um atributo status | POST, PUT e DELETE |
204 | Indica que o recurso foi alterado ou excluído com sucesso | PUT e DELETE |
Lista de Códigos de Erro
A API usa os seguintes códigos HTTP para indicar erros comuns:
Status HTTP | Descrição |
---|---|
422 | Requisição Mal Formada, Exceções de campos obrigatórios! |
400 | Exceções de negócio! validar RestricoesCONs |
401 | Requisição Requer Autenticação |
403 | Requisição Negada |
404 | Recurso não Encontrado |
405 | Método não Permitido |
408 | Tempo esgotado para a requisição |
413 | Requisição excede o tamanho máximo permitido |
415 | Tipo de mídia inválida (falta de informar o content-type correto, ver JSON) |
429 | Requisição excede a quantidade máxima de chamadas permitidas à API |
500 | Erro de servidor |
Os erros citados acima serão retornados no seguinte padrão:
Info | ||
---|---|---|
| ||
{
"errors": [
{
"code": "401.001",
"type": "SecurityException",
"message": "Você não tem permissão para acessar o recurso desejado",
"skuSellerId": "" -- campo opcional
}
]
} |
Listagem de erros
Abaixo segue a lista completa de erros retornados pela API:
Tipo | Status HTTP | Código | Mensagem |
---|---|---|---|
APIGenericError | * | 999.999 | ** |
APIException | 404 | 404 | Recurso não encontrado |
405 | 405 | Método não permitido | |
415 | 415 | Tipo de média inválida | |
400 | 400.001 | O atributo solicitado não existe: NOME_DO_ATRIBUTO | |
400 | 400.002 | Atributo informado não existe ou inválido: NOME_DO_ATRIBUTO | |
QueryStringException | 400 | 400.003 | Parâmetro de queryString com formato incorreto. Para o atributo NOME_DO_ATRIBUTO o formato correto é PATTERN |
400 | 400.005 | Atributo não informado ou inválido : NOME_DO_ATRIBUTO | |
400 | 400.010 | Parâmetro de queryString _offset é obrigatório | |
400 | 400.011 | Parâmetro de queryString _offset deve ser numérico e positivo | |
400 | 400.020 | Parâmetro de queryString _limit é obrigatório | |
400 | 400.021 | Parâmetro de queryString _limit deve ser numérico e positivo | |
SecurityException | 403 | 403.001 | Você não tem permissão para acessar o recurso desejado |
401 | 401.001 | Acesso Negado - App-token não informado | |
401 | 401.002 | Acesso Negado - Auth-token não informado | |
401 | 401.003 | Acesso Negado - App-token inválido ou inexistente | |
401 | 401.004 | Acesso Negado - Auth-token inválido ou inexistente | |
ProductLoadsException | 400 | 001.001 | Campo skuSellerId é obrigatório |
400 | 001.002 | Campo title é obrigatório | |
400 | 001.003 | Campo description é obrigatório | |
400 | 001.004 | Campo brand é obrigatório | |
400 | 001.005 | Campo categories é obrigatório | |
400 | 001.007 | É obrigatório informar pelo menos uma imagem | |
400 | 001.008 | Imagem deve ser uma url válida | |
400 | 001.009 | Objeto price é obrigatório | |
400 | 001.010 | Campo price.default é obrigatório | |
400 | 001.011 | Campo price.default deve ser numérico | |
400 | 001.012 | Campo price.offer é obrigatório | |
400 | 001.013 | Campo price.offer deve ser numérico | |
400 | 001.014 | Objeto stock é obrigatório | |
400 | 001.015 | Campo stock.quantity é obrigatório | |
400 | 001.016 | Campo stock.quantity deve ser numérico | |
400 | 001.017 | Campo stock.crossDockingTime deve ser numérico | |
400 | 001.018 | Campo dimensions.weight deve ser numérico | |
400 | 001.019 | Campo dimensions.length deve ser numérico | |
400 | 001.020 | Campo dimensions.width deve ser numérico | |
400 | 001.021 | Campo dimensions.height deve ser numérico | |
400 | 001.022 | Campo giftWrap.value deve ser numérico | |
400 | 001.023 | Campo skuSellerId não pode conter mais que 30 caracteres | |
400 | 001.024 | Campo title não pode conter mais que 30 caracteres | |
400 | 001.026 | Campo brand não pode conter mais que XX caracteres | |
400 | 001.027 | É obrigatório informar pelo menos uma categoria | |
400 | 001.028 | Apenas XX níveis de categoria são permitidos | |
400 | 001.029 | Campo categories deve ter no máximo XX categorias | |
400 | 001.030 | Apenas XX imagens são permitidas | |
400 | 001.031 | Imagem deve estar no formato X, Y ou Z | |
400 | 001.032 | Campo price.default não pode ser negativo | |
400 | 001.033 | Campo price.offer não pode ser negativo | |
400 | 001.034 | Campo price.offer não pode ser maior que price.default | |
400 | 001.035 | Campo stock.crossDockingTime não pode ser negativo | |
400 | 001.036 | Campo dimensions.weight não pode ser negativo | |
400 | 001.037 | Campo dimensions.length não pode ser negativo | |
400 | 001.038 | Campo dimensions.width não pode ser negativo | |
400 | 001.039 | Campo dimensions.height não pode ser negativo | |
400 | 001.040 | Campo giftWrap.value não pode ser negativo | |
400 | 001.041 | Campo attributes.name é obrigatório | |
400 | 001.042 | Campo attributes.name não pode conter mais que XX caracteres | |
400 | 001.043 | Campo attributes.value é obrigatório | |
400 | 001.044 | Campo attributes.value não pode conter mais que XX caracteres | |
400 | 001.045 | Campo attributes deve ter no máximo XX atributos | |
400 | 001.046 | Campo description não pode conter tags html: img, iframe, script, object | |
400 | 001.047 | Campo dimensions.weight é obrigatório | |
400 | 001.048 | Campo dimensions.length é obrigatório | |
400 | 001.049 | Campo dimensions.width é obrigatório | |
400 | 001.050 | Campo dimensions.height é obrigatório | |
400 | 001.051 | Campo stock.quantity não pode ser negativo | |
400 | 001.100 | O conteúdo GZIP não foi enviado | |
422 | 001.101 | Já existe uma carga sendo processada, aguarde alguns instantes | |
400 | 001.102 | Json inválido. Verifique o Json enviado | |
400 | 001.105 | Operação não permitida. Operação não permitida. O produto só pode ser cancelado se estiver com status PENDING ou ERROR | |
400 | 001.106 | Operação não permitida. Só é permitida a alteração de produtos que possuam erros de importação | |
400 | 001.999 | ** | |
SellerItemsStatusException | 400 | 005.001 | Campo active é obrigatório |
400 | 005.002 | Campo active deve ser booleano | |
400 | 005.003 | Os valores permitidos para o site são: Conteúdo do serviço GET /sites | |
400 | 005.999 | ** | |
SellerItemsStockException | 400 | 006.001 | Campo quantity é obrigatório |
400 | 006.002 | Campo quantity deve ser numérico | |
400 | 006.003 | Campo crossDockingTime deve ser numérico | |
400 | 006.004 | Campo warehouse deve ser numérico | |
400 | 006.999 | ** | |
SellerItemsPriceException | 400 | 007.001 | Campo default é obrigatório |
400 | 007.002 | Campo default deve ser numérico | |
400 | 007.003 | Campo default não pode ser negativo | |
400 | 007.010 | Campo offer é obrigatório | |
400 | 007.011 | Campo offer deve ser numérico | |
400 | 007.012 | Campo offer não pode ser negativo | |
400 | 007.013 | Campo offer não pode ser maior que default | |
400 | 007.020 | Os valores permitidos para o site são: Conteúdo do serviço GET /sites | |
422 | 007.100 | Alteração não permitida. Valor alterado ultrapassa o limite de variação permitida | |
400 | 007.999 | ** | |
SellerItemsDimensionsException | 400 | 008.001 | Campo weight deve ser numérico (quilos) |
400 | 008.002 | Campo weight é obrigatório | |
400 | 008.011 | Campo length deve ser numérico (metros) | |
400 | 008.012 | Campo length é obrigatório | |
400 | 008.021 | Campo width deve ser numérico (metros) | |
400 | 008.022 | Campo width é obrigatório | |
400 | 008.031 | Campo height deve ser numérico (metros) | |
400 | 008.032 | Campo height é obrigatório | |
400 | 008.999 | ** | |
TrackingException | 400 | 009.001 | Pelo menos um item deve ser informado na operação de tracking |
400 | 009.011 | Campo occurredAt deve ser date-time | |
400 | 009.021 | Objeto carrier é obrigatório | |
400 | 009.022 | Campo carrier.name é obrigatório | |
400 | 009.031 | Objeto invoice é obrigatório | |
400 | 009.032 | Campo invoice.cnpj é obrigatório | |
400 | 009.033 | Campo invoice.number é obrigatório | |
400 | 009.034 | Campo invoice.serie é obrigatório | |
400 | 009.035 | Campo invoice.accessKey é obrigatório | |
400 | 009.036 | Campo invoice.accessKey deve possuir 44 dígitos | |
400 | 009.037 | Campo issueAt deve ser date-time | |
400 | 009.999 | ** | |
OrdersException | 400 | 010.001 | Os valores permitidos para o site são: Conteúdo do serviço GET /sites |
400 | 010.999 | ** | |
WarehouseException | 400 | 017.001 | Os valores permitidos para o site são: Conteúdo do serviço GET /sites |
400 | 017.999 | ** | |
SellerItemsException | 400 | 018.001 | Os valores permitidos para o site são: Conteúdo do serviço GET /sites |
400 | 018.999 | ** |
(*) Status retornado de acordo com o erro não previsto
(**) Mensagem retornada de acordo com o erro não previsto