Pular para o conteúdo principal

Remover SKU de uma promoção

DELETE 

/seller/v1/promotions/:promotion_id/skus/:sku_id

Remove um SKU específico de uma promoção em que o seller participa ou que ainda não confirmou a participação.

Escopo da Operação​

Este endpoint permite que o seller remova um SKU vinculado a uma promoção da qual já participa ou antes de confirmar a participação, informando o promotion_id (UUID público da promoção) e o sku_id (código do SKU do seller).

Regras de Negócio Comerciais​

  • Remoção como alteração pendente: a remoção não é efetivada de imediato — o SKU passa a ser retornado com status = pending no endpoint de consulta de SKUs, aguardando consolidação. Isso permite que o seller realize múltiplas remoções em sequência, na mesma promoção, sem aguardar o processamento assíncrono entre uma chamada e outra.
  • Promoção em que o seller já participa (subscribed_at preenchido): após a remoção, o status da promoção continua ativo, porém a aplicação definitiva da remoção só ocorre após a confirmação via POST /promotions/{promotion_id}/apply. Enquanto não confirmada, o SKU permanece com status = pending.
  • Promoção em que o seller ainda não participa (subscribed_at nulo): quando o seller ainda não aderiu à promoção, a remoção do SKU não exige confirmação adicional — a aplicação definitiva ocorre naturalmente no fluxo de adesão.

Motivo da remoção (opcional)​

O body é opcional. Quando informado, registra o motivo pelo qual o seller está removendo o SKU da promoção:

{"reason": {"code": "out_of_stock"}}
  • reason.code (opcional, até 50 caracteres): código do motivo. Os códigos aceitos são definidos pelo canal; os códigos disponíveis são:
codeDescrição registrada
out_of_stockSKU sem estoque
low_marginMargem insuficiente para o SKU
price_conflictConflito de preço no SKU
product_discontinuedProduto descontinuado
otherTexto enviado em reason.description (obrigatório)
  • reason.description (opcional, até 500 caracteres): texto livre do motivo. Só é registrado quando o code for other ou não for informado; para os demais códigos, é registrada a descrição da tabela acima.
  • Motivo inválido: um code não aceito pelo canal, ou other sem reason.description, retorna 400 Bad Request e o SKU não é removido.

Request​

Responses​

Sucesso sem conteúdo