---
title: "POST /api/v4.0/integrations/coupons/{code}/validate"
method: POST
path: "/api/v4.0/integrations/coupons/{code}/validate"
---

# POST /api/v4.0/integrations/coupons/{code}/validate

`POST /api/v4.0/integrations/coupons/{code}/validate`

Validate a single coupon and optionally lock it for exclusive use.

## Path parameters

- `code` string, required

## Request body

- object
  - `customerId` string, required
  - `email` string
  - `mobile` string
  - `lock` boolean
  - `pin` string

## Response `200`

Coupon validated successfully

- object
  - `isValid` boolean
  - `lockReference` string
  - `discountAmount` number
  - `discountType` string

## Other responses

- `400` — Bad request

## Changes

- **2025-09-10** `95e7f65e5afd` — 1 info
  - endpoint added
- **2025-09-02** `919eb7a392aa` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/gameballers/apis/gameball-api/changes/api/v4.0/integrations/coupons/:code/validate/post.md)

---

[API](https://skmtc.dev/gameballers/apis/gameball-api.md) · [All operations](https://skmtc.dev/gameballers/apis/gameball-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/gameballers/gameball-api/revisions/192eb251cada/schema)
