Introdução

Seja bem-vindo(a) a documentação da API v2 da Yampi.Através dessa API REST você conseguirá administrar todos os recursos que uma loja possui dentro do nosso ambiente.

Para dúvidas relacionadas a homologação de integrações, entre em contato com o time de Parcerias pelo parcerias@yampi.com.br.

Problemas ou dúvidas sobre a nossa API, fale com o nosso suporte.

Endpoints

Cada loja possui seu endpoint através de um alias, que é o nome da loja.

Exemplo: https://api.dooki.com.br/v2/{alias}

Lembre-se: você deverá substituir o termo alias pelo nome da loja.

Headers

É obrigatório o envio do header Content-Type: application/json em todas as requisições.

Paginação

Por padrão a API retornará 10 resultados por página, porém, você pode alterar isso através do parâmetro limit=20, por exemplo.

Também há disponível um objeto meta que traz os detalhes da paginação:

"meta": {
    "pagination": {
        "total": 1000,
        "count": 10,
        "per_page": 10,
        "current_page": 1,
        "total_pages": 786,
        "links": {
            "next": "https://api.dooki.com.br/v2/merchant-alias/foo?page=2"
        }
    }
},

Includes

Nem sempre uma chamada simples em algum endpoint terá todo o payload que uma entidade possui. A API disponibiliza um recurso de include que permite carregar outros objetos, de acordo com a sua necessidade.

Cada endpoint possui documentado seus respectivos includes.

Para habilitar este recurso, basta passar uma query string include na URL de consulta. Exemplo:

https://api.dooki.com.br/v2/{alias}/catalog/products?include=skus

Você também pode solicitar vários includes de uma única vez:

https://api.dooki.com.br/v2/{alias}/catalog/products?include=skus,images

Encadeamento de includes:

https://api.dooki.com.br/v2/{alias}/catalog/products?include=skus.prices.installments

Filtros

Trabalhando com datas

Para filtrar os registros por período de data, utilize o seguinte formato:

https://api.dooki.com.br/v2/{alias}/users?date=created_at:2017-05-21|2017-05-30

O filtro acima retornará registros criados entre 21/05/2017 até 30/05/2017.

Ordenação

Você pode alterar a ordenação dos resultados utilizando os parâmetros orderBy e sortedBy. Exemplo:

https://api.dooki.com.br/v2/{alias}/users?orderBy=id&sortedBy=desc

Cache

Por padrão, todas as consultas GET possuem um cache de 30 minutos. Esse cache pode ser evitado utilizando a query string skipCache=true em sua consulta. Exemplo:

https://api.dooki.com.br/v2/{alias}/catalog/products?skipCache=true

Erros

Código

Descrição

400

Bad Request -- Request inválido.

401

Unauthorized -- Acesso não autorizado.

403

Forbidden -- Acesso negado

404

Not Found -- Recurso não encontrado.

405

Method Not Allowed -- Método inválido para o endpoint.

410

Gone -- The kitten requested has been removed from our servers.

422

Unprocessable Entity -- Recurso não processado.

429

Too Many Requests -- Muitos requests. Vá com calma.

500

Internal Server Error -- Problema interno de servidor.

503

Service Unavailable -- API indisponível.

SDKs oficiais

PHP SDK https://github.com/bubbstore/dooki-php-sdk

Atualizado