Esta página trata sobre as respostas das requisições (sucessos e erros)

Estrutura

Ao enviar uma requisição, a API retornará uma resposta com informações pertinentes, como erros, etc.

A estrutura segue o padrão abaixo:

{
    "http_code": 200,
    "result": {},
    "errors": {}
}
  • http_code - o status HTTP da resposta;

  • result - Object contendo os resultados da requisição. Cada método HTTP retornará estruturas diferentes nesta seção (confira a seção de cada método para visualizar seus padrões). Em casos de erro, esta seção será retornada como null;

  • errors - Object contendo os erros (caso hajam) da requisição. Caso a requisição seja bem sucedida, este campo será retornado como null. Veja a seção Erros para saber mais.


POST , PUT, DELETE

Em caso de uma requisição bem sucedida, a seção result da resposta conterá o identificador da entidade criada/atualizada/deletada. Exemplo:

{
    "http_code": 200,
    "result": {
        "entity_id": "123"
    },
    "errors": null
}

GET

Uma requisição do tipo GET conterá, na seção result de sua resposta, os itens que condizem com os filtros especificados mais as informações para paginação dos resultados (total_pages e page). Por exemplo, ao Listar Produtos, a resposta seria semelhante ao exemplo abaixo:

{
    "http_code": 200,
    "result": {
        "total_pages": 1,
        "page": 1,
        "products": [
            {
                "entity_id": 123,
                "name": "API Simple Product",
                "sku": "api-simple-proddst",
                "url": "https://your-domain.com/api-simple-product-13728.html",
                "..."
            }
        ]
    },
    "errors": null
}

Status HTTP

As respostas são divididas entre 3 status principais. Abaixo, é possível ver em detalhes os casos de uso e formatação das mesmas.

Status HTTPMensagemExplicação
200OKRetornado em caso de a requisição ter sido completada com sucesso
400Bad RequestRetornado em caso de a requisição ter sido formulada de forma errada
401UnauthorizedRetornado em caso de falha na autorização (token inválido)

Erros

Abaixo, segue a tabela de erros possíveis no retorno das requisições.

CodeMessageMotivo
001This request body isn't valid!O body da requisição ter sido enviado como um JSON inválido.
002This request HTTP method isn't supported!A endpoint atual não suporta o método HTTP enviado.
003This item already exists!Ao tentar cadastrar um item que já existe na loja. Ex. Tentar importar um produto com SKU duplicado.
004No item found!Quando nada é encontrado para um identificador de item.
005Page out of bounds!Ao exceder o limite de paginação. Ex.: Tentar acessar a página 2 de um resultado que possui apenas 1 página.
006One or more field's values are invalid!Quando o valor de um campo ou mais campos enviados na requisição é inválido. Exemplo: Tentar importar um produto com o campo price igual a 0 (o preço dos produtos deve ser maior que zero).
007An error occured while finishing this action!Quando um erro impede a ação atual (importação, atualização, etc) de ser finalizada.

📘

O campo message informa uma descrição geral do erro. Para ter uma visão mais detalhada da ocorrência do erro, verifique o campo details.

{
    "http_code": 400,
    "result": null,
    "errors": [
        {
            "code": "005",
            "message": "Page out of bounds!",
            "details": "There's no items for page: 100"
        }
    ]
}
{
    "http_code": 400,
    "result": null,
    "errors": [
        {
            "code": "006",
            "message": "One or more field's values are invalid!",
            "details": "Product's price must be greater than the special_price!"
        }
    ]
}