ResourcesCoupons

Create a coupon

This endpoint allows you to create a new coupon. See the code examples for how to create a new coupon with the SellApp API.

This endpoint allows you to create a new coupon. See the code examples for how to create a new coupon with the SellApp API.

POST
/v1/coupons

Authorization

bearerAuth
AuthorizationBearer <token>

Provide your SellApp API key as a bearer token.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://sell.app/api/v1/coupons" \  -H "Content-Type: application/json" \  -d '{    "code": "PLAN10",    "type": "PERCENTAGE",    "discount": 10,    "store_wide": false,    "products": [      123,      456    ],    "product_variants": [      1001,      1002    ]  }'
{
  "data": {
    "id": 1,
    "code": "BONANZA",
    "type": "PERCENTAGE",
    "discount": "80",
    "limit": null,
    "store_wide": true,
    "minimum_amount": null,
    "expires_at": null,
    "created_at": "2022-12-12T12:12:12.000000Z",
    "updated_at": "2022-12-12T12:12:12.000000Z",
    "store_id": 1,
    "deleted_at": null,
    "products": [],
    "product_variants": []
  }
}

Limit a coupon to specific products or variants

Set store_wide to false and include a products array containing the product IDs the coupon should apply to.

Optionally include product_variants to restrict any selected product to particular variants. Every variant ID must belong to one of the products in products. If a selected product has no IDs in product_variants, the coupon applies to all of that product's current and future variants.

{
  "code": "PLAN10",
  "type": "PERCENTAGE",
  "discount": 10,
  "store_wide": false,
  "products": [123, 456],
  "product_variants": [1001, 1002]
}

In this example, product 123 is limited to variants 1001 and 1002, while product 456 accepts the coupon on every variant. When store_wide is true, the API ignores product and variant scoping.