Skip to main content
⭐️ If you love EverShop, give it a star on GitHub. Thanks!

Promotion API

Use the REST API to interact with EverShop promotions.

Create a coupon

Use this endpoint to create a coupon.

Request Schema (application/json)
Field NameField TypeRequired
couponstring (^[a-zA-Z0-9]+$)Yes
statusstring or integer ('0', '1', 0, 1)Yes
descriptionstringNo
discount_amountstring or numberYes
free_shippingstring or integer ('0', '1', 0, 1)No
discount_typestringYes
target_productsobjectNo
Field NameField TypeRequired
maxQtystring or integerNo
productsarray of objectNo
Field NameField TypeRequired
keystringYes
operatorstring (IN, NOT IN, =, !=, >, >=, <, <=)Yes
valuestring or numberYes
conditionobjectNo
Field NameField TypeRequired
order_totalstring or numberNo
order_qtystring or integerNo
required_productsarray of objectNo
Field NameField TypeRequired
keystringYes
operatorstring (IN, NOT IN, =, !=, >, >=, <, <=)Yes
qtystring or integerYes
valuestring or numberYes
additionalPropertiesNo
user_conditionobjectNo
Field NameField TypeRequired
groupsarray of string,integerNo
emailstringNo
purchasedstring or integerNo
max_uses_time_per_couponstring (^[0-9]*$)No
max_uses_time_per_customerstring (integer)No
start_datestringNo
end_datestringNo
POST/api/coupons
curl  -H "Accept: application/json"  -H "Cookie: admin_token=<your jwt token id>"  https://<your domain>/api/coupons
Sample Of Response
{  "data": {    "coupon_id": 30,    "uuid": "d63601a5a67311edb46b60d819134f39",    "status": 1,    "description": "y2RFMOdn9LuiUtob5n1c",    "discount_amount": 10,    "free_shipping": 0,    "discount_type": "fixed_discount_to_entire_order",    "coupon": "y2RFMOdn9LuiUtob5n1c",    "used_time": 0,    "target_products": null,    "condition": null,    "user_condition": null,    "buyx_gety": null,    "max_uses_time_per_coupon": null,    "max_uses_time_per_customer": null,    "start_date": null,    "end_date": null,    "created_at": "2023-02-07 15:07:53",    "updated_at": "2023-02-07 15:07:53",    "links": [      {        "rel": "couponGrid",        "href": "/admin/coupons",        "action": "GET",        "types": [          "text/xml"        ]      },      {        "rel": "edit",        "href": "/admin/coupon/edit/d63601a5a67311edb46b60d819134f39",        "action": "GET",        "types": [          "text/xml"        ]      }    ]  }}

Update a coupon

Use this endpoint to update a coupon.

Request Schema (application/json)
Field NameField TypeRequired
couponstring (^[a-zA-Z0-9]+$)Yes
statusstring or integer ('0', '1', 0, 1)No
descriptionstringNo
discount_amountstring or numberNo
free_shippingstring or integer ('0', '1', 0, 1)No
discount_typestringNo
target_productsobjectNo
Field NameField TypeRequired
maxQtystring or integerNo
productsarray of objectNo
Field NameField TypeRequired
keystringYes
operatorstring (IN, NOT IN, =, !=, >, >=, <, <=)Yes
valuestring or numberYes
conditionobjectNo
Field NameField TypeRequired
order_totalstring or numberNo
order_qtystring or integerNo
required_productsarray of objectNo
Field NameField TypeRequired
keystringYes
operatorstring (IN, NOT IN, =, !=, >, >=, <, <=)Yes
qtystring or integerYes
valuestring or numberYes
additionalPropertiesNo
user_conditionobjectNo
Field NameField TypeRequired
groupsarray of string,integerNo
emailsstringNo
purchasedstring or integerNo
max_uses_time_per_couponstring (^[0-9]*$)No
max_uses_time_per_customerstring (integer)No
start_datestringNo
end_datestringNo
PATCH/api/coupons/{id}
curl  -H "Accept: application/json"  -H "Cookie: admin_token=<your jwt token id>"  https://<your domain>/api/coupons/{id}
Sample Of Response
{  "data": {    "coupon_id": 30,    "uuid": "d63601a5a67311edb46b60d819134f39",    "status": 1,    "description": "y2RFMOdn9LuiUtob5n1c",    "discount_amount": 10,    "free_shipping": 0,    "discount_type": "fixed_discount_to_entire_order",    "coupon": "y2RFMOdn9LuiUtob5n1c",    "used_time": 0,    "target_products": null,    "condition": null,    "user_condition": null,    "buyx_gety": null,    "max_uses_time_per_coupon": null,    "max_uses_time_per_customer": null,    "start_date": null,    "end_date": null,    "created_at": "2023-02-07 15:07:53",    "updated_at": "2023-02-07 15:07:53",    "links": [      {        "rel": "couponGrid",        "href": "/admin/coupons",        "action": "GET",        "types": [          "text/xml"        ]      },      {        "rel": "edit",        "href": "/admin/coupon/edit/d63601a5a67311edb46b60d819134f39",        "action": "GET",        "types": [          "text/xml"        ]      }    ]  }}

Delete a coupon

Use this endpoint to delete a coupon.

Request Schema (application/json)
No request body required
DELETE/api/coupons/{id}
curl  -H "Accept: application/json"  -H "Cookie: admin_token=<your jwt token id>"  https://<your domain>/api/coupons/{id}
Sample Of Response
{  "data": {    "coupon_id": 30,    "uuid": "d63601a5a67311edb46b60d819134f39",    "status": 1,    "description": "TRNfYH0X7kQL4Evddsy6",    "discount_amount": 20,    "free_shipping": 0,    "discount_type": "fixed_discount_to_entire_order",    "coupon": "TRNfYH0X7kQL4Evddsy6",    "used_time": 0,    "target_products": null,    "condition": null,    "user_condition": null,    "buyx_gety": null,    "max_uses_time_per_coupon": null,    "max_uses_time_per_customer": null,    "start_date": null,    "end_date": null,    "created_at": "2023-02-07 15:07:53",    "updated_at": "2023-02-07 15:07:53"  }}

Apply a coupon

Use this endpoint to apply a coupon to a cart.

Request Schema (application/json)
Field NameField TypeRequired
couponstringYes
POST/api/carts/{cart_id}/coupons
curl  -H "Accept: application/json"  -H "Cookie: admin_token=<your jwt token id>"  https://<your domain>/api/carts/{cart_id}/coupons
Sample Of Response
{  "data": {    "coupon": "coupon"  }}