PagnovoPagnovodocs

Referência da API

Adicionar Offers à whitelist

**V2:** Adiciona uma ou mais Offers à whitelist do cupom. Máximo 100 IDs por requisição. IDs duplicados (que já estão na whitelist) são silenciosamente ignorados — a resposta diz quantos foram realmente adicionados vs já existiam. Se **qualquer** ID não pertencer à sua conta, a requisição inteira falha com 400.

POST/v2/coupons/:id/offers

Autenticação

HTTP Basic Auth. Envie sua secret key no header:

Authorization: Basic {base64(secret:SUA_SECRET_KEY)}

Parâmetros

idstring (path, UUID)obrigatório

UUID do cupom.

Exemplo: cpn_a8f3d2e1-...

Body da requisição

Content-Type: application/json

JSON
{
  "offerIds": ["off_plano_mensal", "off_plano_anual", "off_plano_pro"]
}

Respostas

201

Whitelist atualizada. added = quantas foram realmente inseridas; alreadyExisted = quantas já estavam na whitelist (foram ignoradas).

JSON
{
  "added": 2,
  "alreadyExisted": 1
}
400

Causas: array vazio, mais de 100 IDs, cupom arquivado, ou alguma Offer não pertence à sua conta (a mensagem lista os IDs problemáticos).

JSON
{
  "status": 400,
  "error": "Offer(s) nao encontrada(s) ou nao pertence(m) a voce: off_xyz999"
}
404

Cupom não encontrado.

JSON
{ "status": 404, "error": "Cupom nao encontrado" }

Exemplos

cURL
curl -X POST "https://api.pagnovo.com/v2/coupons/cpn_a8f3d2e1-.../offers" \
  -H "Authorization: Basic $(echo -n 'secret:SUA_SECRET_KEY' | base64)" \
  -H "Content-Type: application/json" \
  -d '{ "offerIds": ["off_plano_mensal", "off_plano_anual"] }'