Todas as requisições tem que ser originadas do parceiro, cada requisição e uma requisição HTTP direcionada para um endpoint. As chamada envolve apenas parâmetros de URL HTTP como por exemplo:
https://api.integracommerce.com.br/api/Order?page=1&perPage=99&status=PROCESSING&startDate=2023-07-17T10:21:50&endDate=2023-07-18T23:21:50
Ao olhar para o pedido acima, vemos que todos os parâmetros necessários já estão incluídos na URL . A API retorna as informações que procuram, em formato JSON.
Todos os métodos retornam um documento de resposta, que indica o status da operação (tanto sucesso ou erro).
Consultando endpoint abaixo é possível saber o limite de requisições por Hora e Minuto de cada verbo.
GET https://api.integracommerce.com.br/api/EndPointLimit
Caso exceda o limite você receberá um erro 429: Requisição excede a quantidade máxima de chamadas permitidas à API.
Quantidade de Itens por Request
Get All | 100 |
Update | 100 |
Para obter resultados paginados a serem retornados pela API, o parceiro deverá informar os seguintes parâmetros:
page: pagina buscada
perPage: Quantidade de Produtos por página. (ATENÇÃO: Número máximo de itens retornados é 100)
Exemplo de busca utilizando page e perPage:
GET https://api.integracommerce.com.br/api/Order?page=1&perPage=10
No exemplo acima, a API Magalu Marketplace retornará a primeira pagina com 10 Pedidos.
O recurso de filas não possuem paginação. É necessário confirmar o recebimento do registro para dar lugar a novos registros.
Marketplace | Name | Store |
MAGAZINE LUIZA | magazineluiza | magazineluiza |
As imagens que acompanham cada SKU, devem obedecer os seguintes critérios de formato e resolução.
Formato: somente JPEG
Tamanho mínimo: 1000 x 1000 px
Tamanho máximo: 1500 x 1500 px
Resolução:
Mínima | Máxima |
200 dpi | 300 dpi |
Você pode utilizar o serviço de frete do Magalu Marketplace ou utilizar seu próprio serviço de frete. O Cálculo de frete é realizado via uma requisição POST enviada pelo Magazine Luiza para a API do vendedor com objetivo de recuperar informações referente entrega de um produto para uma determinada região.
A tabela abaixo contém os erros que podem ser retornados pela API de frete do vendedor e que serão interpretados pelo Magazine Luiza.
HTTP status code | Código | Métodos | Descrição |
---|---|---|---|
400 | delivery_not_available | POST | Não entrega na região informada |
400 | invalid_zipcode | POST | CEP inválido |
409 | out_of_stock | POST | Produto fora de estoque |
O Magazine Luiza irá enviar uma requisição a API do vendedor solicitando o Cálculo de frete conforme exemplo abaixo:
{
"session_id": "eb7cd60c-13c7-4247-a2f8-3d7faa4693b5",
"zipcode": "05036123",
"items": [
{
"sku": "123123123",
"quantity": 2,
"price": "10.00",
"dimensions": {
"width": "0.570",
"depth": "0.400",
"weight": "0.400",
"height": "0.200"
}
}
]
}
session_id
: ID único da sessão do usuário
dimensions.width
, dimensions.depth
, dimensions.height
: Valores expressos em metros
dimensions.weight
: Valor em Quilograma.
A API de frete do vendedor deverá retornar a requisição de Cálculo de frete enviada pelo Magazine Luiza conforme os exemplos abaixo.
Atenção: O tipo de entrega, campo type
, deve ser definido pelo vendedor para cada transportadora. Também deve ser definida uma única transportadora
com tipo convencional conventional
, esta transportadora que será utilizada para resposta pelo site Magalu.
type | Descrição |
---|---|
conventional | Entrega Convencional |
Sucesso - Status code 200 (application/json)
{
"packages": [
{
"items": [
{
"sku": "123123123",
"quantity": 2
}
],
"delivery_options": [
{
"id": "delivery_option_id",
"type": "conventional",
"name": "Entrega normal",
"price": "7.00",
"delivery_days": 14
}
]
}
]
}
Entrega restrita - Status code 200 (application/json)
{
"packages": [
{
"items": [
{
"sku": "123123123",
"quantity": 2
}
],
"delivery_options": [
{
"id": "delivery_option_id",
"type": "conventional",
"name": "Entrega normal",
"price": "7.00",
"delivery_days": 14,
"tags": ["restricted"]
}
]
}
]
}
CEP inválido - Status code 400 (application/json)
{
"message": "Invalid zipcode",
"code": "invalid_zipcode"
}
Não entrega na região - Status code 400 (application/json)
{
"message": "Delivery not available",
"code": "delivery_not_available",
"items": [
{
"sku": "2342346",
"available_quantity": 3,
},
{
"sku": "6568345",
"available_quantity": 1,
}
]
}
Item fora de estoque - Status code 409 (application/json)
{
"message": "Items sem estoque",
"code": "out_of_stock",
"items": [
{
"sku": "2342346",
"available_quantity": 3,
},
{
"sku": "6568345",
"available_quantity": 1,
}
]
}
Para as respostas Não entrega na região e Item fora de estoque o parâmetro available_quantity
em items
é opcional.
O API Explorer é uma ferramenta para consumo e visualização de serviços RESTful. E seu grande objetivo é permitir que a documentação possa evoluir no mesmo ritmo da implementação, já que pode ser gerada automaticamente com base em anotações do código. Ela permite aos developers interagirem com as APIs em sandbox de forma muito intuitiva, sem exigir conhecimento da implementação.