Promotions
The Promotion object
idstringoptionalPublic identifier of the promotion.
namestringoptionalPromotion name, also shown on applied discounts.
descriptionstringoptionalOptional details for customers.
triggerenumoptionalautomatic promotions apply to every eligible cart; code promotions need a promo code. One of automatic, code.
typeenumoptionalHow the discount is calculated. One of percentage, fixed_amount, free_delivery, bogo.
valuenumberoptionalPercent off for percentage, amount off (minor units) for fixed_amount.
max_discount_amountintegeroptionalMaximum discount per order, in minor units.
currencystringoptionalCurrency of fixed_amount promotions.
min_subtotalintegeroptionalMinimum spend on the targeted items, in minor units.
min_itemsintegeroptionalMinimum number of targeted items.
applies_toobjectoptionalTargeting: products, categories, stores, exclude_products and exclude_categories identifier lists. Empty means the whole cart (of the owning store, for store promotions).
bogo_configobjectoptionalFor bogo: buy_quantity, get_quantity and discount_percent (100 means free). The cheapest units of each group are discounted.
first_order_onlybooleanoptionalOnly customers who have never placed a storefront order can use it.
usage_limit_per_customerintegeroptionalHow many times one customer can use it.
stackablebooleanoptionalWhether it combines with other stackable promotions.
starts_attimestampoptionalWhen the promotion starts.
ends_attimestampoptionalWhen the promotion ends.
schedulearray of objectsoptionalOptional weekly windows (days as ISO weekdays, start/end as HH:MM) in timezone when it applies.
timezonestringoptionalTimezone of the schedule windows.
image_urlstringoptionalPromotion image.
translationsobjectoptionalTranslated content.
created_attimestampoptionalTime the promotion was created.
updated_attimestampoptionalTime the promotion was last updated.
{
"id": "promotion_7Hq2xL9",
"name": "Weekday lunch 20% off",
"description": "20% off mains, weekdays 11:00-14:00.",
"trigger": "automatic",
"type": "percentage",
"value": 20,
"max_discount_amount": 1000,
"currency": "USD",
"min_subtotal": 1500,
"min_items": null,
"applies_to": {
"categories": [
"category_uuid"
]
},
"bogo_config": null,
"first_order_only": false,
"usage_limit_per_customer": 1,
"stackable": false,
"starts_at": "2026-10-01T00:00:00Z",
"ends_at": "2026-12-31T23:59:59Z",
"schedule": [
{
"days": [
1,
2,
3,
4,
5
],
"start": "11:00",
"end": "14:00"
}
],
"timezone": "America/New_York",
"image_url": "https://files.example.com/lunch.png",
"translations": null,
"created_at": "2026-09-26T09:30:00Z",
"updated_at": "2026-09-26T09:30:00Z"
}/v1/promotionsQuery Promotions
Lists the storefront's live, public promotions: active, inside their date range and weekly schedule. With a network key the network's promotions and those of its member stores are returned; pass store to only list one member store's.
storestringoptionalNetwork member store public ID, to only list that store's promotions. Ignored for store keys.
/v1/promotionscurl https://api.fleetbase.io/v1/promotions?store= \
-H "Authorization: Bearer flb_live_…"/v1/promotionsRetrieve a Promotion
Retrieves one live, public promotion of the storefront. Returns 404 for promotions that are not active, not public, outside their schedule, or owned by another storefront.
/v1/promotionscurl https://api.fleetbase.io/v1/promotions \
-H "Authorization: Bearer flb_live_…"