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