Skip to content

Cria ou executa validate

POST/api/coupons/validate

Auth
Requires a token
X-CommunityId
X-CommunityId Send the X-CommunityId of the community the operation happens in.
Endpoint descriptions come straight from the API specification and are in Portuguese for now. The interface around them is translated.

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

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

Request body application/json

NameTypeDescription
coderequiredstringCoupon code is required
productIdoptionalstring (uuid)Valid product ID required
amountrequirednumberAmount must be greater than 0

Responses

StatusDescription
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.

curl example

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}'