A API do Likin.do utiliza o padrão de autenticação OAuth2, conforme descrito na RFC 6750 e detalhado em https://oauth.net/2.
O acesso à API é fornecido mediante a inclusão prévia da matriz (franqueadora) e de suas lojas (franqueados), cada um destes possuindo seu próprio conjunto de chaves de acesso, denominados Client ID e Client Secret, os quais funcionam como usuário e senha da matriz ou loja.
Estas chaves são a base para a geração dos tokens de acesso (access tokens), e sem elas não é possível utilizar a API.
Em caso de dúvidas contatar o suporte da Likin.do.
Para acessar a API do Likin.do, todos os endpoints exigem um token de acesso (access token) do tipo Bearer
no cabeçalho Authorization
da requisição, conforme padrão OAuth2.
Authorization: "Bearer access_token"
O access token deve ser obtido através de uma requisição ao Authorization Server do Likin.do, enviando um Client ID e um Client Secret válidos, conforme descrito no endpoint Create Access Token do OAuth2.
O Authorization Server retornará um destes dois tipos de access token:
A API possui endpoints separados em 3 níveis distintos de permissão:
Além de definir quais endpoints são permitidos, o access token também define de qual matriz/loja os dados serão retornados, criados, atualizados ou excluídos.
200
GET
. Para requisições POST
, PUT
e DELETE
retorna um Objeto vazio: {}
.{
data: {}|[]
}
400, 401, 403, 404 ou 500
invalid_property
. Contém as propriedades JSON inválidas e as descrições dos motivos de invalidação.invalid_parameter
. Contém os parâmetros de URL inválidos e as descrições dos motivos de invalidação.{
"error": {
"code": 1401,
"type": "invalid_property",
"message": "Propriedade(s) inválida(s).",
"properties|parameters": [
{
"name": "variation",
"message": "Tipo 'boolean' obrigatório."
}
]
}
}
CREATE
retornam um Objeto contendo a própria entidade criada.UPDATE
são opcionais, portanto devem ser informadas somente as propriedades que serão alteradas.UPDATE
retornam um Objeto contendo a própria entidade modificada.DELETE
não retornam a entidade excluída, devendo portanto ser verificado o HTTP Status Code da resposta para validar o sucesso da exclusão.GET
retornam um Objeto ou uma Lista de Objetos contendo a(s) entidade(s) requisitadas conforme padrão de retorno de sucesso.Os atributos descrevem características de um produto que podem variar. Estes podem ser coisas como cor, tamanho, estilo, peso, dimensões, entre outros. No contexto de variações de produtos, esses atributos servem para criar diferentes variantes de um produto base.
Vamos considerar um exemplo simples: uma camiseta. Uma camiseta pode ter atributos como cor, tamanho, material e estilo. Assim, um único produto (a camiseta) pode ter várias variações (por exemplo, uma camiseta de algodão preta de tamanho grande com um estilo de gola V).
Nos endpoints, temos:
/attribute/group
: Este endpoint lista os grupos de atributos.
Cada grupo pode conter um ou mais atributos, e seu objetivo é diferenciar
atributos de mesmo nome porém com aplicações diferentes. Como por exemplo
um atributo "Cor" utilizado para Móveis de um atributo "Cor" utilizado para
eletrodomésticos. Ambos possuem o mesmo nome porém a sua lista de cores
será diferente.
/attribute
: Este endpoint lista os atributos.
/attribute/{id_attribute}/option
: Este endpoint retorna as opções
de um atributo específico.
/attribute/value/product/{id_product}
: Este endpoint lista os
atributos de um produto, bem como o valor (opção selecionada) para cada um destes
atributos.
/attribute/value/product/variation/{id_product_variation}
: Este endpoint
lista os atributos de uma variação de produto, bem como o valor (opção selecionada)
para cada um destes atributos.
Produtos configurados como variáveis (campo "variable" igual a "true") podem possuir atributos sem valor, neste caso o valor destes atributos é definido nas variações do produto. Por exemplo:
Produto: Camiseta
Atributo: Tecido / Valor: Algodão
Atributo: Cor / Valor: -
Variação 1:
Atributo: Cor / Valor: Branca
Variação 2:
Atributo: Cor / Valor: Preta
Quando o consumidor efetuar a compra, ele definirá qual valor deseja para cada atributo variável, definindo assim qual variação do produto (sku) será efetivamente comprada.
Os atributos são essenciais para a criação de variações de produtos, pois permitem aos clientes selecionar o produto exato que desejam, com base em suas preferências ou necessidades.
Acesso:
Matriz
|Loja
Este endpoint é utilizado para gerar um novo access token a partir do conjunto de Client ID e Client Secret, os quais devem ser informados na autenticação básica deste endpoint (como username e password).
scope | string Escopo de acesso, neste caso o valor será sempre |
grant_type | string Tipo de concessão da autorização, neste caso o valor será sempre |
{- "data": {
- "access_token": "c6d95282df6d282f7b7b62a5cd384bcd1d39758ed72cd6ef0b90dc7dbdba4da98c366dc2c1763da9500a2f47b13da77d103701c3d7da45deb4c44c4bdf453b94",
- "scope": "integration",
- "token_type": "Bearer"
}
}
Atributos utilizados em Produtos, como por exemplo "Cor", "Tamanho", "Voltagem", etc. Cada atributo tem um ID único, um nome e está vinculado a um ID de grupo de atributos específico.
id_attribute required | integer <= 9999999999 ID do atributo |
id_attribute_group required | integer <= 9999999999 ID do grupo de atributos |
name required | string <= 255 Nome do atributo. Deve ser único dentro de um mesmo grupo de atributos. |
created_at | string <date-time> Data de criação |
updated_at | string <date-time> Data de atualização |
{- "id_attribute": 25,
- "id_attribute_group": 16,
- "name": [
- "Tamanho",
- "Cor"
], - "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
{- "data": [
- {
- "id_attribute": 25,
- "id_attribute_group": 16,
- "name": "Tamanho",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute": 26,
- "id_attribute_group": 16,
- "name": "Cor",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute": 27,
- "id_attribute_group": 17,
- "name": "Tamanho",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute": 28,
- "id_attribute_group": 17,
- "name": "Cor",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
]
}
Acesso:
Matriz
Cria um novo atributo dentro de um grupo de atributos existente.
No exemplo fornecido, está sendo criado um atributo chamado "Tamanho" que pertence ao grupo de atributos com o ID 27. Este atributo será usado para definir o tamanho de um produto ou de uma variação de produto.
id_attribute_group required | integer <= 9999999999 ID do grupo de atributos |
name required | string <= 255 Nome do atributo. Deve ser único dentro de um mesmo grupo de atributos. |
{- "id_attribute_group": 16,
- "name": [
- "Tamanho",
- "Cor"
]
}
{- "data": {
- "id_attribute": 49,
- "id_attribute_group": 27,
- "name": "Tamanho"
}
}
Acesso:
Matriz
Cria ou modifica um atributo baseando-se no seu nome. Caso não existir um atributo no grupo de atributos com o nome fornecido, cria um novo atributo, porém caso já existir um atributo no grupo de atributos com o nome fornecido, apenas atualiza o atributo.
Retorna o atributo criado ou modificado.
id_attribute_group required | integer <= 9999999999 ID do grupo de atributos |
name required | string <= 255 Nome do atributo. Deve ser único dentro de um mesmo grupo de atributos. |
{- "id_attribute_group": 16,
- "name": [
- "Tamanho",
- "Cor"
]
}
{- "data": {
- "id_attribute": 49,
- "id_attribute_group": 27,
- "name": "Tamanho"
}
}
Acesso:
Matriz
|Loja
id_attribute required | integer Example: 25 |
{- "data": {
- "id_attribute": 25,
- "id_attribute_group": 16,
- "name": "Tamanho",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Acesso:
Matriz
id_attribute required | integer Example: 49 ID do atributo |
id_attribute_group required | integer <= 9999999999 ID do grupo de atributos |
name required | string <= 255 Nome do atributo. Deve ser único dentro de um mesmo grupo de atributos. |
{- "id_attribute_group": 16,
- "name": [
- "Tamanho",
- "Cor"
]
}
{- "data": {
- "id_attribute": 49,
- "id_attribute_group": 27,
- "name": "Tamanhos"
}
}
Grupos para os atributos que normalmente são utilizados em um mesmo tipo de produto, contudo a sua organização pode ser de livre escolha pelas marcas. Cada grupo de atributos possui um ID único e um nome associado, que podem ser usados para referenciar e identificar o grupo.
id_attribute_group required | integer <= 9999999999 ID do grupo de atributos |
name required | string <= 255 Nome do grupo de atributos |
created_at | string <date-time> Data de criação |
updated_at | string <date-time> Data de atualização |
{- "id_attribute_group": 16,
- "name": "Bonés",
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
Acesso:
Matriz
Este endpoint é utilizado para criar um novo grupo de atributos. No exemplo fornecido, está sendo criado um grupo de atributos chamado "Camisas". Grupos de atributos podem ser usados para organizar atributos que são comumente usados juntos, como os atributos que descrevem características de uma camisa.
name required | string <= 255 Nome do grupo de atributos |
{- "name": "Bonés"
}
{- "data": {
- "id_attribute_group": 16,
- "name": "Bonés",
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
}
Acesso:
Matriz
|Loja
Retorna todos os Grupos de Atributo.
{- "data": [
- {
- "id_attribute_group": 16,
- "name": "Bonés",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_group": 17,
- "name": "Carteiras",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_group": 18,
- "name": "Camisetas",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_group": 19,
- "name": "Vestidos",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_group": 20,
- "name": "Colecionáveis",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
]
}
Acesso:
Matriz
|Loja
Retorna um Grupo de Atributo conforme id.
id_attribute_group required | integer Example: 19 ID do grupo de atributo |
{- "data": {
- "id_attribute_group": 16,
- "name": "Bonés",
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
}
Acesso:
Matriz
id_attribute_group required | integer Example: 27 ID do grupo de atributo |
name required | string <= 255 Nome do grupo de atributos |
{- "name": "Bonés"
}
{- "data": {
- "id_attribute_group": 27,
- "name": "Camisas",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Opções de um atributo, como por exemplo as opções "Azul", "Branco" e "Preto" para o attributo "Cor". Cada opção de atributo tem um ID único, um ID de atributo associado e um valor.
id_attribute_option required | integer <= 9999999999 ID da opção do atributo |
id_attribute required | integer <= 9999999999 ID do atributo |
value required | string <= 40 Valor da opção do atributo. Deve ser único dentro de um mesmo atributo. |
created_at | string <date-time> Data de criação |
updated_at | string <date-time> Data de atualização |
{- "id_attribute_option": 118,
- "id_attribute": 30,
- "value": "Azul Marinho",
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
id_attribute_option required | integer <= 9999999999 ID da opção do atributo |
value required | string <= 40 Valor da opção do atributo. Deve ser único dentro de um mesmo atributo. |
{- "id_attribute_option": 118,
- "value": "Azul Marinho"
}
Acesso:
Matriz
|Loja
id_attribute required | integer Example: 30 ID do atributo |
{- "data": [
- {
- "id_attribute_option": 117,
- "id_attribute": 30,
- "value": "Preta",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_option": 118,
- "id_attribute": 30,
- "value": "Azul Marinho",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_option": 119,
- "id_attribute": 30,
- "value": "Vermelho Minnie",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_option": 120,
- "id_attribute": 30,
- "value": "Branco",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_option": 121,
- "id_attribute": 30,
- "value": "Verde",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
]
}
Acesso:
Matriz
|Loja
id_attribute_option required | integer Example: 118 ID da opção de atributo |
{- "data": {
- "id_attribute_option": 118,
- "id_attribute": 30,
- "value": "Azul Marinho",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Acesso:
Matriz
id_attribute_option required | integer Example: 158 ID da opção de atributo |
value required | string <= 40 Valor da opção do atributo. Deve ser único dentro de um mesmo atributo. |
{- "value": "Azul Marinho"
}
{- "data": {
- "id_attribute_option": 158,
- "id_attribute": 30,
- "value": "Magenta"
}
}
Acesso:
Matriz
Cria uma nova opção para um atributo existente. No exemplo fornecido, está sendo criada uma opção "Rosa" para o atributo com o ID 30. Esta opção pode ser usada para especificar que um produto ou variação de produto possui a cor rosa.
id_attribute required | integer <= 9999999999 ID do atributo |
value required | string <= 40 Valor da opção do atributo. Deve ser único dentro de um mesmo atributo. |
{- "id_attribute": 30,
- "value": "Azul Marinho"
}
{- "data": {
- "id_attribute_option": 158,
- "id_attribute": 30,
- "value": "Rosa",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Acesso:
Matriz
Cria ou modifica uma opção de atributo baseando-se no seu valor. Caso não existir uma opção no atributo com o valor fornecido, cria uma nova opção, porém caso já existir uma opção no atributo com o valor fornecido, apenas atualiza a opção.
Retorna a opção de atributo criada ou modificada.
id_attribute required | integer <= 9999999999 ID do atributo |
value required | string <= 40 Valor da opção do atributo. Deve ser único dentro de um mesmo atributo. |
{- "id_attribute": 30,
- "value": "Azul Marinho"
}
{- "data": {
- "id_attribute_option": 158,
- "id_attribute": 30,
- "value": "Rosa",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Representa o vínculo de um Produto ou de uma Variação de Produto (SKU) com um determinado atributo e o seu valor (opção).
O valor (opção) do atributo é opcional para produtos e obrigatório para variações de produto (SKU). Quando o valor do atributo não for informado para um produto, então ficará a cargo do consumidor escolher o seu valor no momento da compra.
Exemplo
Produto: "Aspirador de pó".
Valores de atributos:
Variações (SKUs) deste Produto:
No caso acima o produto "Aspirador de pó" será sempre vendido na cor "Preto", porém ficará a cargo do consumidor decidir a voltagem (e consequentemente o SKU). Por este motivo o atributo "Voltagem" não possui valor específico no Produto, mas possui valor em cada uma de suas variações (SKUs).
Cada valor de atributo tem um ID único, um ID de atributo associado, um ID de opção de atributo (quando aplicável), um ID de produto e um ID de variação de produto (quando aplicável).
id_attribute_value required | integer <= 9999999999 ID do valor do atributo |
id_attribute required | integer <= 9999999999 ID do atributo |
id_attribute_option | integer or null <= 9999999999 ID da opção do atributo |
id_product required | integer <= 9999999999 ID do produto |
id_product_variation required | integer <= 9999999999 ID da variação do produto |
created_at | string <date-time> Data de criação |
updated_at | string <date-time> Data de atualização |
{- "id_attribute_value": 495,
- "id_attribute": 25,
- "id_attribute_option": null,
- "id_product": 61,
- "id_product_variation": null,
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
{- "data": [
- {
- "id_attribute_value": 495,
- "id_attribute": 25,
- "id_attribute_option": null,
- "id_product": 61,
- "id_product_variation": null,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_value": 496,
- "id_attribute": 25,
- "id_attribute_option": null,
- "id_product": 62,
- "id_product_variation": null,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_value": 497,
- "id_attribute": 25,
- "id_attribute_option": 110,
- "id_product": null,
- "id_product_variation": 243,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
]
}
Acesso:
Matriz
Associa um valor de atributo a uma variação de produto específica. No exemplo fornecido, o valor do atributo com o ID 32 e a opção de atributo com o ID 49 estão sendo associados à variação de produto com o ID 41. Isso indica, por exemplo, que esta variação de produto tem o valor "Rosa" para o atributo "Cor".
id_attribute required | integer <= 9999999999 ID do atributo |
id_attribute_option | integer or null <= 9999999999 ID da opção do atributo |
id_product required | integer <= 9999999999 ID do produto |
id_product_variation required | integer <= 9999999999 ID da variação do produto |
{- "id_attribute": 25,
- "id_attribute_option": null,
- "id_product": 61,
- "id_product_variation": null
}
{- "data": {
- "id_attribute_value": 528,
- "id_attribute": 30,
- "id_attribute_option": 121,
- "id_product": null,
- "id_product_variation": 255,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Acesso:
Matriz
|Loja
id_product required | integer Example: 69 ID do produto |
{- "data": [
- {
- "id_attribute_value": 525,
- "id_attribute": 29,
- "id_attribute_option": null,
- "id_product": 69,
- "id_product_variation": null,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_value": 526,
- "id_attribute": 30,
- "id_attribute_option": null,
- "id_product": 69,
- "id_product_variation": null,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
]
}
Acesso:
Matriz
|Loja
id_product_variation required | integer Example: 248 ID da variação de produto |
{- "data": [
- {
- "id_attribute_value": 507,
- "id_attribute": 27,
- "id_attribute_option": 112,
- "id_product": null,
- "id_product_variation": 248,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_attribute_value": 508,
- "id_attribute": 28,
- "id_attribute_option": 111,
- "id_product": null,
- "id_product_variation": 248,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
]
}
Acesso:
Matriz
|Loja
id_attribute_value required | integer Example: 528 ID do valor de atributo |
{- "data": {
- "id_attribute_value": 528,
- "id_attribute": 30,
- "id_attribute_option": 121,
- "id_product": null,
- "id_product_variation": 255,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Acesso:
Matriz
id_attribute_value required | integer Example: 21 ID do valor de atributo |
id_attribute required | integer <= 9999999999 ID do atributo |
id_attribute_option | integer or null <= 9999999999 ID da opção do atributo |
id_product required | integer <= 9999999999 ID do produto |
id_product_variation required | integer <= 9999999999 ID da variação do produto |
{- "id_attribute": 25,
- "id_attribute_option": null,
- "id_product": 61,
- "id_product_variation": null
}
{- "data": {
- "id_attribute_value": 495,
- "id_attribute": 25,
- "id_attribute_option": null,
- "id_product": 61,
- "id_product_variation": null,
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
}
id_category required | integer <= 9999999999 ID da categoria |
id_parent | integer <= 9999999999 ID da matriz |
id_category_parent | integer or null <= 9999999999 ID da categoria pai |
category required | string [ 1 .. 90 ] Nome da categoria |
id_external required | string or null <= 255 ID externo da categoria |
parents_enabled | boolean Permite sub categoria |
enabled required | boolean Categoria habilitada |
created_at | string <date-time> Data de criação |
updated_at | string <date-time> Data de atualização |
{- "id_category": 1,
- "id_parent": 1,
- "id_category_parent": null,
- "category": "Roupas",
- "id_external": null,
- "parents_enabled": true,
- "enabled": true,
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
Acesso:
Matriz
|Loja
page | integer Example: page=1 |
limit | integer Example: limit=20 |
{- "data": [
- {
- "id_category": 72,
- "id_parent": 7,
- "id_category_parent": null,
- "category": "Acessórios",
- "enabled": true,
- "parents_enabled": true,
- "id_external": null,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_category": 73,
- "id_parent": 7,
- "id_category_parent": 72,
- "category": "Bonés",
- "enabled": true,
- "parents_enabled": true,
- "id_external": null,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_category": 74,
- "id_parent": 7,
- "id_category_parent": 72,
- "category": "Carteiras",
- "enabled": true,
- "parents_enabled": true,
- "id_external": null,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_category": 75,
- "id_parent": 7,
- "id_category_parent": null,
- "category": "Vestuário",
- "enabled": true,
- "parents_enabled": true,
- "id_external": null,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_category": 76,
- "id_parent": 7,
- "id_category_parent": 75,
- "category": "Camiseta",
- "enabled": true,
- "parents_enabled": true,
- "id_external": null,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_category": 77,
- "id_parent": 7,
- "id_category_parent": 75,
- "category": "Vestidos",
- "enabled": true,
- "parents_enabled": true,
- "id_external": null,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
]
}
Acesso:
Matriz
id_category_parent | integer or null <= 9999999999 ID da categoria pai |
category required | string [ 1 .. 90 ] Nome da categoria |
id_external required | string or null <= 255 ID externo da categoria |
parents_enabled | boolean Permite sub categoria |
enabled required | boolean Categoria habilitada |
{- "id_category_parent": null,
- "category": "Roupas",
- "id_external": null,
- "parents_enabled": true,
- "enabled": true
}
{- "data": {
- "id_category": 92,
- "id_parent": 7,
- "category": "Camisas",
- "enabled": true,
- "id_external": "1"
}
}
Acesso:
Matriz
|Loja
id_category required | integer Example: 72 ID da categoria |
{- "data": {
- "id_category": 72,
- "id_parent": 7,
- "id_category_parent": null,
- "category": "Acessórios",
- "enabled": true,
- "parents_enabled": true,
- "id_external": null
}
}
Acesso:
Matriz
id_category required | integer Example: 92 ID da categoria |
id_category_parent | integer or null <= 9999999999 ID da categoria pai |
category required | string [ 1 .. 90 ] Nome da categoria |
id_external required | string or null <= 255 ID externo da categoria |
parents_enabled | boolean Permite sub categoria |
enabled required | boolean Categoria habilitada |
{- "id_category_parent": null,
- "category": "Roupas",
- "id_external": null,
- "parents_enabled": true,
- "enabled": true
}
{- "data": {
- "id_category": 92,
- "id_parent": 7,
- "id_category_parent": null,
- "category": "Bermudas",
- "enabled": false,
- "parents_enabled": true,
- "id_external": "2",
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Acesso:
Matriz
|Loja
Retorna a categoria conforme o id externo.
id_external required | string Example: 1 Id externo da categoria |
{- "data": {
- "id_category": 72,
- "id_parent": 7,
- "id_category_parent": null,
- "category": "Acessórios",
- "enabled": true,
- "parents_enabled": true,
- "id_external": 1
}
}
id_product required | integer <= 9999999999 ID do produto |
product required | string <= 150 Nome do produto |
id_category required | integer ID da categoria.
Opcional caso informado o campo |
complement | string <= 150 Complemento |
description required | string <= 65000 Descrição, permite tags HTML simples |
price required | number decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço |
promotional_price | number decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço promocional |
sku required | string [ 1 .. 150 ] SKU |
ean | string <= 14 Código de barras |
width | integer Largura (cm) |
height | integer Altura (cm) |
length | integer Comprimento (cm) |
weight | integer Peso (gramas) |
display_order | integer Ordem de exibição |
variable required | boolean Produto variável |
enabled | boolean Produto ativo |
created_at | string <date-time> Data de criação |
updated_at | string <date-time> Data de atualização |
{- "id_product": 1,
- "product": "Camisa Adidas 10",
- "id_category": 76,
- "complement": "Complemento",
- "description": "Descrição",
- "price": 10.95,
- "promotional_price": 9.95,
- "sku": "SK3394",
- "ean": "13313789913513",
- "width": 100,
- "height": 100,
- "length": 100,
- "weight": 20,
- "display_order": 1,
- "variable": true,
- "enabled": true,
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
Acesso:
Matriz
|Loja
page | integer Example: page=1 |
limit | integer Example: limit=10 |
{- "data": [
- {
- "id_product": 61,
- "id_category": 73,
- "product": "Boné Aba Curva Harley Quinn",
- "complement": null,
- "description": "<p><span>O Boné Alerguina aba curva é um produto original, licenciado e exclusivo Piticas. Para colecionar e usar, feita pelos nossos nerdsigners para vestir seu lado fã!</span><br /><br /><span>Na Piticas, prezamos por qualidade, diversidade e conforto com estilo autêntico! Vista com orgulho, vista seu lado fã.</span></p>",
- "price": 79.9,
- "promotional_price": null,
- "sku": "243235",
- "ean": null,
- "height": 100,
- "width": 100,
- "length": 100,
- "weight": 100,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_product": 62,
- "id_category": 73,
- "product": "Boné Aba Reta Dc Comics",
- "complement": null,
- "description": "<p><span>O Boné Dc Comics aba reta é um produto original, licenciado e exclusivo Piticas. Para colecionar e usar, feita pelos nossos nerdsigners para vestir seu lado fã! Na Piticas, prezamos por qualidade, diversidade e conforto com estilo autêntico! Vista com orgulho, vista seu lado fã.</span></p>",
- "price": 79.9,
- "promotional_price": 60,
- "sku": "24423",
- "ean": null,
- "height": 100,
- "width": 100,
- "length": 100,
- "weight": 100,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_product": 63,
- "id_category": 73,
- "product": "Boné Bordado Marvel Excelsior",
- "complement": null,
- "description": null,
- "price": 79.9,
- "promotional_price": null,
- "sku": "2344324",
- "ean": null,
- "height": 100,
- "width": 100,
- "length": 100,
- "weight": 100,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_product": 64,
- "id_category": 73,
- "product": "Boné Bordado Marvel Endgame",
- "complement": null,
- "description": null,
- "price": 79.9,
- "promotional_price": null,
- "sku": "21342",
- "ean": null,
- "height": 100,
- "width": 100,
- "length": 100,
- "weight": 100,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_product": 65,
- "id_category": 73,
- "product": "Boné Bordado Superman Aba Curva",
- "complement": null,
- "description": null,
- "price": 79.9,
- "promotional_price": 70,
- "sku": "3245",
- "ean": null,
- "height": 100,
- "width": 100,
- "length": 100,
- "weight": 100,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_product": 66,
- "id_category": 74,
- "product": "Porta Moedas Harley Quinn Daddy Lil Monster",
- "complement": null,
- "description": "<p><span>Porta Moedas Harley Quinn Dady Lil Monster inspirado no Filme Suicide Squad. Selecionado para você fã combinar seus acessórios com estilo único que só um verdadeiro fã tem pelo o seu ídolo, ideal para presentear e supreender aquela pessoa especial. Material: PU - Medidas: Largura 10cm | Altura: 11cm | Profundidade 2,2cm</span></p>",
- "price": 24.9,
- "promotional_price": null,
- "sku": "2345",
- "ean": null,
- "height": null,
- "width": null,
- "length": null,
- "weight": null,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_product": 67,
- "id_category": 76,
- "product": "Camiseta Antisocial Piticas",
- "complement": null,
- "description": "<div>A camiseta Antisocial é um produto original e exclusivo, estampa da linha Autoral. Sempre prezamos por qualidade, diversidade e conforto. A T-Shirt clássica confeccionada em 100% algodão, conta com estilo autêntico, feita pelos nossos nerdsigners para vestir seu lado fã! Vista com orgulho, vista seu lado fã. Molode veste tamanho 14.</div>\n<div>\n<p> </p>\n</div>",
- "price": 49.9,
- "promotional_price": null,
- "sku": "12345",
- "ean": null,
- "height": null,
- "width": null,
- "length": null,
- "weight": null,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_product": 68,
- "id_category": 76,
- "product": "Camiseta Bordada Mickey Oh Boy",
- "complement": null,
- "description": "<p><span>A camiseta Mickey Oh Boy é um produto original, licenciado e exclusivo Piticas. Estampa inspirada no personagem da Walt Disney Company. O querido camundongo tornou-se um dos desenhos mais amados por todas as gerações.</span><br /><br /><span>Na Piticas, prezamos por qualidade, diversidade e conforto. A T-Shirt clássica foi confeccionada em 100% algodão, conta com estilo autêntico, feita pelos nossos nerdsigners para vestir seu lado fã! Vista com orgulho, vista seu lado fã. - Modelo feminino veste tamanho 14 / Modelo masculino veste tamanho M.</span></p>",
- "price": 69.9,
- "promotional_price": null,
- "sku": "78678",
- "ean": null,
- "height": null,
- "width": null,
- "length": null,
- "weight": null,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_product": 69,
- "id_category": 76,
- "product": "Camiseta Captain Marvel Danvers",
- "complement": null,
- "description": null,
- "price": 69.9,
- "promotional_price": null,
- "sku": "56547544",
- "ean": null,
- "height": null,
- "width": null,
- "length": null,
- "weight": null,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}, - {
- "id_product": 70,
- "id_category": 76,
- "product": "Camiseta Batman Peitoral Filme",
- "complement": null,
- "description": null,
- "price": 59.9,
- "promotional_price": null,
- "sku": "233534",
- "ean": null,
- "height": null,
- "width": null,
- "length": null,
- "weight": null,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
]
}
Acesso:
Matriz
product required | string <= 150 Nome do produto |
id_category required | integer ID da categoria.
Opcional caso informado o campo |
complement | string <= 150 Complemento |
description required | string <= 65000 Descrição, permite tags HTML simples |
price required | number decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço |
promotional_price | number decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço promocional |
sku required | string [ 1 .. 150 ] SKU |
ean | string <= 14 Código de barras |
width | integer Largura (cm) |
height | integer Altura (cm) |
length | integer Comprimento (cm) |
weight | integer Peso (gramas) |
display_order | integer Ordem de exibição |
variable required | boolean Produto variável |
enabled | boolean Produto ativo |
category | string [ 1 .. 900 ] Categoria do produto na notação Se este campo for informado, o id da categoria (campo Esta informação é utilizada para realizar toda a manutenção na árvore de categorias, criando as que forem necessárias. O produto será vinculado com a última categoria presente na notação. |
{- "product": "Camisa Adidas 10",
- "complement": "Complemento",
- "description": "Descrição",
- "category": "Vestuário > Masculino > Camisa",
- "ean": "1331378991351",
- "price": 10.95,
- "width": 100,
- "height": 100,
- "length": 100,
- "weight": 20,
- "display_order": 1,
- "variable": true,
- "updated_at": "2021-09-15T10:37:49-03:00",
- "created_at": "2021-09-15T10:37:49-03:00"
}
{- "data": {
- "id_product": 102,
- "id_category": 76,
- "product": "Camisa Adidas 10",
- "complement": "Complemento",
- "description": "Descrição",
- "price": 10.95,
- "promotional_price": null,
- "sku": "CAMISET.10",
- "ean": "1331378991351",
- "height": 100,
- "width": 100,
- "length": 100,
- "weight": 20,
- "variable": true,
- "enabled": false,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Acesso:
Matriz
|Loja
id_product required | integer Example: 61 ID do produto |
{- "data": {
- "id_product": 61,
- "id_category": 73,
- "product": "Boné Aba Curva Harley Quinn",
- "complement": null,
- "description": "<p><span>O Boné Alerguina aba curva é um produto original, licenciado e exclusivo Piticas. Para colecionar e usar, feita pelos nossos nerdsigners para vestir seu lado fã!</span><br /><br /><span>Na Piticas, prezamos por qualidade, diversidade e conforto com estilo autêntico! Vista com orgulho, vista seu lado fã.</span></p>",
- "price": 79.9,
- "promotional_price": null,
- "sku": "243235",
- "ean": null,
- "height": 100,
- "width": 100,
- "length": 100,
- "weight": 100,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Acesso:
Matriz
id_product required | integer Example: 61 ID do produto |
object (Product) |
{- "data": {
- "product": "Camisa Adidas 10",
- "id_category": 76,
- "complement": "Complemento",
- "description": "Descrição",
- "price": 10.95,
- "promotional_price": 9.95,
- "sku": "SK3394",
- "ean": "13313789913513",
- "width": 100,
- "height": 100,
- "length": 100,
- "weight": 20,
- "display_order": 1,
- "variable": true,
- "enabled": true
}
}
{- "data": {
- "id_product": 61,
- "id_category": 73,
- "product": "Boné Aba Curva Harley Quinn",
- "complement": null,
- "description": "<p><span>O Boné Alerguina aba curva é um produto original, licenciado e exclusivo Piticas. Para colecionar e usar, feita pelos nossos nerdsigners para vestir seu lado fã!</span><br /><br /><span>Na Piticas, prezamos por qualidade, diversidade e conforto com estilo autêntico! Vista com orgulho, vista seu lado fã.</span></p>",
- "price": 79.9,
- "promotional_price": null,
- "sku": "243235",
- "ean": null,
- "height": 100,
- "width": 100,
- "length": 100,
- "weight": 100,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Acesso:
Matriz
|Loja
sku required | string [ 1 .. 150 ] Example: LKN.3112 SKU do produto |
{- "data": {
- "id_product": 61,
- "id_category": 73,
- "product": "Boné Aba Curva Harley Quinn",
- "complement": null,
- "description": "<p><span>O Boné Alerguina aba curva é um produto original, licenciado e exclusivo Piticas. Para colecionar e usar, feita pelos nossos nerdsigners para vestir seu lado fã!</span><br /><br /><span>Na Piticas, prezamos por qualidade, diversidade e conforto com estilo autêntico! Vista com orgulho, vista seu lado fã.</span></p>",
- "price": 79.9,
- "promotional_price": null,
- "sku": "243235",
- "ean": null,
- "height": 100,
- "width": 100,
- "length": 100,
- "weight": 100,
- "variable": true,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
Acesso:
Matriz
|Loja
id_product required | integer Example: 61 |
{- "data": [
- {
- "id_product_image": 225,
- "id_product": 61,
- "files": {
}, - "display_order": 0
}, - {
- "id_product_image": 226,
- "id_product": 61,
- "files": {
}, - "display_order": 1
}, - {
- "id_product_image": 227,
- "id_product": 61,
- "files": {
}, - "display_order": 0
}
]
}
id_product required | integer Example: 580 |
data | string <binary> |
"\"{\\n \\t\\\"data\\\": \\\"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\\\"\\n}\""
id_product required | integer Example: 69 ID do produto |
{- "data": [
- {
- "id_product_variation": 255,
- "id_product": 69,
- "sku": "23543645",
- "ean": null,
- "price": null,
- "promotional_price": null,
- "width": null,
- "height": null,
- "length": null,
- "weight": null,
- "enabled": true
}, - {
- "id_product_variation": 256,
- "id_product": 69,
- "sku": "5534435",
- "ean": null,
- "price": null,
- "promotional_price": null,
- "width": null,
- "height": null,
- "length": null,
- "weight": null,
- "enabled": true
}
]
}
id_product required | integer Example: 102 ID do produto |
sku | string or null [ 1 .. 150 ] SKU |
ean | string or null <= 14 Código de barras |
price | number or null decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço |
promotional_price | number or null decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço promocional |
width | integer or null Largura (cm) |
height | integer or null Altura (cm) |
length | integer or null Comprimento (cm) |
weight | integer or null Peso (Gramas) |
enabled | boolean Produto ativo |
{- "sku": "Camisa Adidas 10",
- "ean": "13313789913514",
- "price": 10.95,
- "promotional_price": 9.95,
- "width": 100,
- "height": 100,
- "length": 100,
- "weight": 20,
- "enabled": true
}
{- "data": {
- "id_product_variation": 328,
- "id_product": 102,
- "sku": "SK3394",
- "ean": "1331378991351",
- "price": 15.95,
- "promotional_price": null,
- "width": 10,
- "height": 10,
- "length": 15,
- "weight": 100,
- "enabled": false,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
id_product_variation required | integer Example: 255 ID da variação de produto |
{- "data": {
- "id_product_variation": 255,
- "id_product": 69,
- "sku": "23543645",
- "price": 69.9,
- "promotional_price": null,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
id_product_variation required | integer Example: 328 ID da variação de produto |
sku | string or null [ 1 .. 150 ] SKU |
ean | string or null <= 14 Código de barras |
price | number or null decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço |
promotional_price | number or null decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço promocional |
width | integer or null Largura (cm) |
height | integer or null Altura (cm) |
length | integer or null Comprimento (cm) |
weight | integer or null Peso (Gramas) |
enabled | boolean Produto ativo |
{- "sku": "Camisa Adidas 10",
- "ean": "13313789913514",
- "price": 10.95,
- "promotional_price": 9.95,
- "width": 100,
- "height": 100,
- "length": 100,
- "weight": 20,
- "enabled": true
}
{- "data": {
- "id_product_variation": 328,
- "id_product": 102,
- "sku": "SK3394",
- "ean": "1331378991351",
- "price": 15.95,
- "promotional_price": null,
- "width": 10,
- "height": 10,
- "length": 15,
- "weight": 100,
- "enabled": true,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
}
id_product | integer or null <= 9999999999 ID do produto |
id_product_variation | integer or null <= 9999999999 ID da variação do produto |
complement | string or null <= 150 Complemento |
description | string or null <= 65000 Descrição, permite tags HTML simples |
price | number or null decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço |
promotional_price | number or null decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço promocional |
quantity | integer Quantidade do produto em estoque |
display_order | integer <= 255 Ordem de exibição |
enabled | boolean Produto ativo |
created_at | string <date-time> Data de criação |
updated_at | string <date-time> Data de atualização |
{- "id_product": 1,
- "id_product_variation": 1,
- "complement": "Complemento",
- "description": "Descrição",
- "price": 10.95,
- "promotional_price": 9.95,
- "quantity": 100,
- "display_order": 1,
- "enabled": true,
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
Acesso:
Loja
page | integer Example: page=1 |
limit | integer Example: limit=10 |
{- "data": [
- {
- "id_product": 1,
- "id_product_variation": 1,
- "complement": "Complemento",
- "description": "Descrição",
- "price": 10.95,
- "promotional_price": 9.95,
- "quantity": 100,
- "display_order": 1,
- "enabled": true,
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
]
}
Acesso:
Loja
id_product | integer or null <= 9999999999 ID do produto |
id_product_variation | integer or null <= 9999999999 ID da variação do produto |
complement | string or null <= 150 Complemento |
description | string or null <= 65000 Descrição, permite tags HTML simples |
price | number or null decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço |
promotional_price | number or null decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço promocional |
quantity required | integer Quantidade do produto em estoque |
display_order | integer <= 255 Ordem de exibição |
{- "id_product_variation": 41,
- "description": "teste",
- "complement": "complemento",
- "price": 10.95,
- "quantity": 10,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
{- "data": {
- "id_product": 1,
- "id_product_variation": 1,
- "complement": "Complemento",
- "description": "Descrição",
- "price": 10.95,
- "promotional_price": 9.95,
- "quantity": 100,
- "display_order": 1,
- "enabled": true,
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
}
Acesso:
Loja
id_store_product required | integer Example: 620 ID do produto da loja |
complement | string or null <= 150 Complemento |
description | string or null <= 65000 Descrição, permite tags HTML simples |
price | number or null decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço |
promotional_price | number or null decimal places <= 2 [ 0.01 .. 999999999.99 ] Preço promocional |
quantity | integer Quantidade do produto em estoque |
display_order | integer <= 255 Ordem de exibição |
enabled | boolean Produto ativo |
{- "description": "teste",
- "complement": "complemento5",
- "price": 10.95,
- "quantity": 10,
- "enabled": true,
- "display_order": 1,
- "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
{- "data": {
- "id_product": 1,
- "id_product_variation": 1,
- "complement": "Complemento",
- "description": "Descrição",
- "price": 10.95,
- "promotional_price": 9.95,
- "quantity": 100,
- "display_order": 1,
- "enabled": true,
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
}
Acesso:
Loja
id_store_product required | integer Example: 620 ID do produto da loja |
{- "data": [
- {
- "id_product": 1,
- "id_product_variation": 1,
- "complement": "Complemento",
- "description": "Descrição",
- "price": 10.95,
- "promotional_price": 9.95,
- "quantity": 100,
- "display_order": 1,
- "enabled": true,
- "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
]
}
id_order | integer <= 9999999999 ID do pedido |
id_store | integer <= 9999999999 ID da loja |
price | integer Preço total do pedido inteiro. Ex: 10000 = R$ 100,00 |
status | integer Enum: 210 211 212 213 214 410 411 412 610 611 612 810 811 812 Status do pedido |
delivery_price | integer Preço total do frete do pedido inteiro. Ex: 10000 = R$ 100,00 |
installments | integer Número de parcelas do pedido |
order_date | string Data do pedido. Ex: 2021-09-15 10:37:49 BRT |
customer_address | object Endereço do cliente |
object Endereço de cobrança do cliente | |
object | |
created_at | string <date-time> Data de criação |
updated_at | string <date-time> Data de atualização |
{- "id_order": 1,
- "id_store": 1,
- "price": 100,
- "status": 210,
- "delivery_price": 10000,
- "installments": 1,
- "order_date": "2021-09-15T10:37:49-03:00",
- "customer_address": null,
- "customer_billing_address": {
- "cep": "74820-370",
- "street": "Areião",
- "number": "112",
- "district": "Setor Pedro Ludovico",
- "city": "Goiânia",
- "state": "GO"
}, - "delivery_type": {
- "id_delivery_type": 1
}, - "created_at": "2021-09-15T10:37:49-03:00",
- "updated_at": "2021-09-15T10:37:49-03:00"
}
Acesso:
Matriz
|Loja
status | string Example: status=410,420 Status dos pedidos. Podem ser informados um ou mais status separados por "," (vírgula). |
from | string Example: from=2021-04-21T10:22:43Z Data inicial dos pedidos, no formato ISO. |
until | string Example: until=2021-04-21T10:22:43Z Data final dos pedidos, no formato ISO. |
page | integer Default: 1 Example: page=1 Página dos resultados. |
limit | integer <= 50 Default: 50 Example: limit=10 Limite de resultados por página. |
{- "data": [
- {
- "id_order": 558,
- "id_store": 19,
- "price": 60,
- "likins_price": 1200,
- "delivery_price": 0,
- "installments": 1,
- "status": 212,
- "order_date": "2021-09-15T10:37:49-03:00",
- "products": [
- {
- "id_store_product": 494,
- "name": "Boné Aba Reta Dc Comics",
- "sku": "24423",
- "quantity": 1,
- "price": 60,
- "likins_price": 1200
}
], - "customer": {
- "name": "Tiago Ferreira Gil",
- "cpf": "01218509007",
- "email": "tiago@likin.do",
- "cell": "99999999999",
- "birthdate": "1998-04-06"
}, - "customer_address": null,
- "customer_billing_address": {
- "cep": "74820-370",
- "street": "Areião",
- "number": "112",
- "district": "Setor Pedro Ludovico",
- "city": "Goiânia",
- "state": "GO"
}, - "delivery_type": {
- "id_delivery_type": 1,
- "type": "retirada_local",
- "description": "Retirada no Local"
}, - "payment_type": {
- "id_payment_type": 2,
- "type": "credit_card",
- "description": "Cartão de Crédito"
}, - "created_at": "2021-08-31T14:00:00.000Z",
- "updated_at": "2021-08-31T14:00:00.000Z"
}
]
}
Acesso:
Loja
Realiza o aceite/confirmação do pedido pela loja.
Esta confirmação pode ser realizada para pedidos com o pagamento aprovado, ou seja, que estão no status 212 (CUSTOMER_PAYMENT_SUCCESS).
Ao ser confirmado, o pedido é enviado para o status 410 (STORE_DELIVERY_WAIT).
id_order required | integer Example: 68 ID do pedido |
Acesso:
Loja
Inicia a entrega do pedido pela loja.
A entrega pode ser iniciada para pedidos que estão no status 410 (STORE_DELIVERY_WAIT).
Ao ser iniciada, o pedido é enviado para algum dos status abaixo, dependendo da sua forma de entrega.
Resumidamente se a entrega for gerenciada por terceiro, o pedido passará pelo status 411 (coleta) e após 412 (entrega). Enquanto que se a entrega for gerenciada pela loja, o pedido irá diretamente para o status 412 (entrega).
id_order required | integer Example: 68 ID do pedido |
Acesso:
Loja
Finaliza a entrega do pedido pela loja.
A entrega pode ser finalizada para pedidos que estão no status 412 (STORE_DELIVERY_START) e que possuem uma forma de entrega gerenciada pela loja (Tele Entrega ou Retirada no Local). Pedidos com entrega gerenciada por terceiro (Uber, Loggi, Lalamove, etc) são finalizados automaticamente.
Ao ser finalizada, o pedido é enviado para o status 413 (STORE_DELIVERY_SUCCESS).
id_order required | integer Example: 68 ID do pedido |
Acesso:
Loja
Realiza o cancelamento do pedido pela loja.
O cancelamento pode ser realizado para pedidos com o pagamento aprovado e que ainda não foram entregues, ou seja, que estão em algum dos status abaixo:
Ao ser cancelado, o pedido é enviado para o status 612 (CANCELATION_SUCCESS).
id_order required | integer Example: 68 ID do pedido |
reason required | string Enum: "out_of_stock" "delivery_failure" "other" Razão do cancelamento |
description | string Descrição do cancelamento. Obrigatório somente quando |
{- "reason": "other",
- "description": "Último item do estoque estava com defeito."
}