Referência da API · Pedidos · Gestão Marketplace
Enviar Acompanhamento dos Itens - Marketplace
- Método
- POST
- Rota
-
/partnerOrders/store/:id/complementaryInfo - URL base
https://ws.autorei.net- Parâmetros de rota
:id- Token
- Exige token Bearer
Abre esta requisição na documentação pública da API, a fonte oficial da referência.
Descrição
Permite que a loja de origem informe, item a item, em que situação está cada produto de um pedido que nasceu nela.
O corpo e a resposta são idênticos aos da rota da loja; muda o escopo de quem envia.
Parâmetros de Rota
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id |
integer | Sim | Id do pedido do parceiro (partnerOrderId). |
Corpo da Requisição (JSON)
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
skus |
array | Sim | Os itens do acompanhamento. De 1 a 250 por requisição. |
skus[].partnerPartCode |
string | Sim | O seu código de peça do produto, o mesmo que você cadastrou no estoque. |
skus[].situation |
string | Sim | Situação do item. Texto livre, a plataforma não valida contra uma lista. |
skus[].quantity |
integer | Sim | Quantidade nessa situação. Número inteiro maior que zero. |
Regras de negócio
O envio alcança só as peças que ele contém
O escopo do envio é o item, não o pedido: cada requisição substitui o acompanhamento das peças que ela cita e deixa as demais intactas. Você pode enviar um produto de cada vez, sem reenviar o pedido inteiro.
Reenviar um item exatamente igual ao que já está gravado não recria o registro: ele é preservado como está.
O mesmo produto em mais de uma situação
partnerPartCode pode repetir no mesmo envio, uma vez por situação, é assim que você informa três unidades enviadas e duas em preparação do mesmo produto. As quantidades somam; os registros não competem entre si.
A soma não passa a quantidade do item no pedido
Para um mesmo produto, a soma das quantidades informadas não pode ultrapassar a quantidade daquele item no pedido. Passando, a requisição é recusada e nada é gravado.
O produto precisa estar no pedido
O partnerPartCode é resolvido contra as linhas daquele pedido. Código que não corresponde a nenhuma linha, ou que corresponde a mais de uma, recusa a requisição, e a resposta diz qual código causou a recusa.
Resposta · 200
O eco do que você enviou, com o veredito de cada item. Para o conjunto que está gravado no pedido, use Consultar Acompanhamento dos Itens.
| Campo | Descrição |
|---|---|
orderId |
Id do pedido do cliente, derivado do pedido da rota. |
partnerOrderId |
Id do pedido do parceiro, o mesmo da rota. |
skus[].partnerPartCode |
O código que você enviou. |
skus[].quantity · skus[].situation |
Quantidade e situação informadas. |
skus[].status |
valid no item aceito · invalid no item que causou a recusa. |
Quando a recusa é item a item
A recusa por regra de negócio responde 422 com a mesma estrutura do sucesso, mais status e message no topo: os itens que causaram a recusa vêm com status: "invalid" e os demais com valid, e message reúne os motivos, um por linha. Nada é gravado, a recusa vale para a requisição inteira. Assim você localiza o item problemático sem cruzar a mensagem com a posição no array.
Erros
| Código | Quando |
|---|---|
| 400 | O corpo não é um JSON válido. O detalhe vem em error. |
| 422 | skus ausente, vazio ou com mais de 250 itens; item sem partnerPartCode, sem situation ou com quantity que não seja inteiro maior que zero; código que não está no pedido ou que aparece em mais de uma linha; soma acima da quantidade do item. O corpo traz o motivo em message e marca os itens recusados. |
| 404 | O pedido não existe ou não está no seu escopo. |
| 401 | Token ausente, malformado ou expirado. |
Exemplo de requisição
curl --request POST 'https://ws.autorei.net/partnerOrders/store/:id/complementaryInfo' \
--header 'Authorization: Bearer {{access_token}}' \
--header 'Content-Type: application/json' \
--data '{
"skus": [
{
"partnerPartCode": "SKU-A-001",
"situation": "enviado",
"quantity": 2
},
{
"partnerPartCode": "SKU-A-001",
"situation": "preparando",
"quantity": 1
}
]
}' Respostas de exemplo
200Sucesso: produto em duas situações
{
"orderId": 900100,
"partnerOrderId": 900201,
"skus": [
{
"partnerPartCode": "SKU-A-001",
"quantity": 2,
"situation": "enviado",
"status": "valid"
},
{
"partnerPartCode": "SKU-A-001",
"quantity": 1,
"situation": "preparando",
"status": "valid"
}
]
} 422Recusa: código que não está no pedido
{
"status": "UNPROCESSABLE_ENTITY",
"message": "partnerPartCode não encontrado nas linhas do pedido: SKU-Z-999",
"orderId": 900100,
"partnerOrderId": 900201,
"skus": [
{
"partnerPartCode": "SKU-A-001",
"quantity": 2,
"situation": "enviado",
"status": "valid"
},
{
"partnerPartCode": "SKU-Z-999",
"quantity": 1,
"situation": "enviado",
"status": "invalid"
}
]
} Usado em
- Casos de usoMarketplace B2B: o caminho típico pela API
Endpoints relacionados
Gerado a partir da coleção pública da API, publicada em 04/09/2026: api-docs.cws.digital.