curl --request POST \
--url https://api.tagada.io/api/public/v1/promotions/create \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"storeId": "store_123",
"name": "Summer Sale 20% Off",
"automatic": false,
"enabled": true,
"usageLimit": 100,
"startDate": "2025-06-01T00:00:00.000Z",
"endDate": "2025-08-31T23:59:59.000Z",
"ruleOperator": "AND",
"combinesWithOrderLevelDiscounts": false,
"combinesWithLineItemDiscounts": false,
"combinesWithShippingDiscounts": false,
"forceCombine": false,
"rules": [],
"actions": [
{
"type": "OrderAdjustment",
"adjustmentType": "percentage",
"adjustmentPercentage": 20
}
],
"promotionCodes": [
{
"code": "SUMMER20",
"usageLimit": 100,
"firstTimeCustomersOnly": false
}
]
}
'{
"id": "promo_123",
"name": "Summer Sale 20% Off",
"enabled": true
}{
"message": "<string>",
"code": "<string>",
"issues": [
{
"message": "<string>"
}
]
}promotions
Create promotion
Create a new promotion with rules and actions for a specific store
POST
/
api
/
public
/
v1
/
promotions
/
create
curl --request POST \
--url https://api.tagada.io/api/public/v1/promotions/create \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"storeId": "store_123",
"name": "Summer Sale 20% Off",
"automatic": false,
"enabled": true,
"usageLimit": 100,
"startDate": "2025-06-01T00:00:00.000Z",
"endDate": "2025-08-31T23:59:59.000Z",
"ruleOperator": "AND",
"combinesWithOrderLevelDiscounts": false,
"combinesWithLineItemDiscounts": false,
"combinesWithShippingDiscounts": false,
"forceCombine": false,
"rules": [],
"actions": [
{
"type": "OrderAdjustment",
"adjustmentType": "percentage",
"adjustmentPercentage": 20
}
],
"promotionCodes": [
{
"code": "SUMMER20",
"usageLimit": 100,
"firstTimeCustomersOnly": false
}
]
}
'{
"id": "promo_123",
"name": "Summer Sale 20% Off",
"enabled": true
}{
"message": "<string>",
"code": "<string>",
"issues": [
{
"message": "<string>"
}
]
}Authorizations
Enter your API key as: Bearer your-api-key
Body
application/json
Minimum string length:
1Minimum string length:
1Required range:
x > 0Available options:
AND, OR - Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
- Option 7
- Option 8
Show child attributes
Show child attributes
- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
- Option 7
- Option 8
Show child attributes
Show child attributes
Optional. Redeemable codes to create atomically alongside the promotion. Each entry mirrors the POST /promotion-codes/create body (without promotionId, which is inferred). Uniqueness is enforced per store and per batch; a failure on any code rolls back the whole promotion.
Show child attributes
Show child attributes
Response
Successful response
