Todos os exemplos assumem
$TOKEN no ambiente. Se ainda não tem um, comece por Primeiros passos.A história
A Ana vende um curso de tráfego pago. Ela quer cadastrar o produto pela API, criar a oferta anual de R$ 499 e deixar um cupom de 25% pronto para o lançamento de novembro. Quatro chamadas.1. Descubra a categoria
Um produto nasce dentro de uma categoria, e ocategoryId precisa existir. Liste antes de criar:
2. Crie o produto
price é o preço de vitrine, em centavos. refundPeriodDays é a garantia que aparece no checkout e que o prazo de reembolso vai respeitar.
201. Guarde o data.id: ele é o productId de quase tudo que vem depois.
Criar o produto pela API já monta um checkout padrão e uma oferta padrão junto. Você não precisa de
POST /v1/products/{productId}/publish — essa rota só tira do rascunho os produtos criados no editor novo do painel, e responde 400 para os demais.3. Crie a oferta
A oferta é o que o comprador realmente compra: um preço, um conjunto de meios de pagamento e umslug público.
compareAtPrice é o “de R 499” do checkout — ele não cobra nada, só aparece riscado. O id da oferta é um inteiro, diferente do id do produto, que é uma string.
4. Crie o cupom de lançamento
O cupom vive no nível da empresa e depois é amarrado a produtos ou ofertas.appliesTo: "selected" significa “só onde eu mandar”.
5. Amarre o cupom ao produto
redemptionCount sobe a cada uso confirmado; quando alcança maxRedemptions, o cupom para de valer sozinho.
Erros que você vai encontrar
422 — discountType: Required
422 — discountType: Required
discountType decide qual dos dois campos de valor o cupom usa: percent pede discountPercent (1 a 95), fixed pede discountAmountInCents. Mandar o valor sem o tipo reprova.409 ao criar um cupom com código repetido
409 ao criar um cupom com código repetido
O par empresa + código é único, e a API recusa o segundo antes de gravar qualquer coisa:Trate
409 como “já existe”: liste com GET /v1/coupons?code=LANCAMENTO25, reutilize o cupom que voltar, ou escolha outro código. Renomear um cupom existente para um código já usado, com PATCH /v1/coupons/{couponId}, responde o mesmo 409.400 ao publicar um produto
400 ao publicar um produto
POST /v1/products/{productId}/publish só se aplica a rascunhos do editor novo.Todas as operações do domínio
Produtos
Listar, criar, consultar, atualizar, excluir, imagem, conteúdo e template de mensagens.
Ofertas
Ofertas avulsas, planos de assinatura e o grupo de ofertas ativo.
Cupons
Cupons da empresa, vínculo com produtos e ofertas, ativação.
Order bumps e upsell
O que sobe o ticket dentro e depois do checkout.
