Pular para o conteúdo

Cria ou executa validate

POST/api/coupons/validate

Auth
Exige token
X-CommunityId
X-CommunityId Envie o X-CommunityId da comunidade em que a operação acontece.

Aberto a qualquer pessoa autenticada (é o caminho do comprador) e devolve só validade e desconto. A comunidade é a do `X-CommunityId`. FIN-7: cupom excluído não é encontrado; `maxUses` conta também os pedidos com o cupom ainda em aberto; o limite por pessoa e a restrição de primeira compra valem para quem tem perfil na comunidade; `productId` de outra comunidade dá 404. Recusas trazem `errors[0].param = code`. Para não servir de oráculo de códigos, depois de 10 códigos recusados em 15 minutos (por conta e comunidade) a resposta é 429 até a janela passar, mesmo para um código bom. O mesmo contador vale para `couponCode` em `calculate-price` e `POST /checkout`.

Headers

NomeTipoDescrição
X-CommunityIdopcionalstring (uuid)ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade.

Corpo da requisição application/json

NomeTipoDescrição
codeobrigatóriostringCoupon code is required
productIdopcionalstring (uuid)Valid product ID required
amountobrigatórionumberAmount must be greater than 0

Respostas

CódigoDescrição
201Operação realizada com sucesso.
400Requisição inválida — falha de validação.
401Token ausente, inválido ou expirado.
403Autenticado, mas sem permissão para esta operação.
404Recurso não encontrado.
429Códigos de cupom recusados demais em pouco tempo.
500Erro interno do servidor.

Exemplo com curl

curl -X POST "https://api.memberfy.net/api/coupons/validate" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{"code":"string","amount":10}'