For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Dev Portal
DocsAPI ReferenceLearnCommunityChangelog
DocsAPI ReferenceLearnCommunityChangelog
    • About Our APIs
  • REST
    • Overview
      • Overview
        • Abandoned Carts
        • Carts
        • Channels
        • Checkouts
        • Currencies
        • Customer Segmentation
        • Geography
        • Infrastructure Hosting
        • Inventory
        • Orders
        • Order Operations
        • Pickup
        • Pickup Methods
        • Pickup Options
        • Pricing
        • Price Lists
        • Promotions
              • POSTCreate Promotion
              • GETGet Promotion
              • PUTUpdate Promotion
              • DELDelete Promotion
        • Promotion Settings
        • Redirects
        • Scripts
        • Settings
        • Shipping
        • Sites
        • Subscribers
        • System Logs
        • Tax
        • Wishlists
      • Payments
  • GraphQL
    • Overview
  • MCP
    • Overview
Dev Portal
LogoLogo
RESTAdminManagementPromotionsPromotions Single

Update Promotion

PUT
https://api.bigcommerce.com/stores/:store_hash/v3/promotions/:id
PUT
/stores/:store_hash/v3/promotions/:id
$curl -X PUT https://api.bigcommerce.com/stores/store_hash/v3/promotions/id \
> -H "Accept: application/json" \
> -H "X-Auth-Token: <apiKey>" \
> -H "Content-Type: application/json" \
> -d '{}'
1{
2 "data": {
3 "id": 1,
4 "redemption_type": "COUPON",
5 "name": "Buy Product X Get Free Shipping",
6 "display_name": "WOW!!! FREE SHIPPING for Product X",
7 "channels": [
8 {
9 "id": 1
10 }
11 ],
12 "customer": {
13 "group_ids": [
14 1,
15 2,
16 3
17 ],
18 "minimum_order_count": 1,
19 "excluded_group_ids": [
20 1,
21 2,
22 3
23 ],
24 "segments": {
25 "id": [
26 "ccec121a-f9bc-4a04-809e-1fe0d8ae7fdd"
27 ]
28 }
29 },
30 "rules": [
31 {
32 "action": {
33 "cart_value": {
34 "discount": {
35 "fixed_amount": "12.95"
36 }
37 }
38 },
39 "apply_once": true,
40 "stop": true,
41 "condition": {
42 "cart": {
43 "items": {
44 "brands": [
45 1,
46 2,
47 3
48 ]
49 },
50 "minimum_spend": "12.95",
51 "minimum_quantity": 1
52 }
53 }
54 }
55 ],
56 "current_uses": 2,
57 "max_uses": 10,
58 "status": "ENABLED",
59 "start_date": "2005-12-30T01:02:03+00:00",
60 "end_date": "2025-12-30T01:02:03+00:00",
61 "stop": false,
62 "can_be_used_with_other_promotions": false,
63 "currency_code": "USD",
64 "notifications": [
65 {
66 "content": "Congratulations! Youʼve received a free %ACTION.FREE_PRODUCT%!",
67 "type": "UPSELL",
68 "locations": [
69 "HOME_PAGE",
70 "PRODUCT_PAGE",
71 "CART_PAGE",
72 "CHECKOUT_PAGE"
73 ]
74 }
75 ],
76 "shipping_address": {
77 "countries": [
78 {
79 "iso2_country_code": "US"
80 }
81 ]
82 },
83 "schedule": {
84 "week_frequency": 2,
85 "week_days": [
86 "Monday"
87 ],
88 "daily_start_time": "01:20:00",
89 "daily_end_time": "23:59:00"
90 },
91 "created_from": "react_ui",
92 "codes": {
93 "id": 1,
94 "code": "TEST-COUPON-CODE",
95 "current_uses": 2,
96 "max_uses": 10,
97 "max_uses_per_customer": 5,
98 "created": "2019-01-20T22:00:00.000Z"
99 },
100 "coupon_overrides_automatic_when_offering_higher_discounts": false,
101 "multiple_codes": {
102 "has_multiple_codes": false
103 },
104 "coupon_type": "BULK"
105 },
106 "meta": {}
107}

Update a promotion.

Note: The default rate limit for this request is 40 concurrent requests.

Was this page helpful?
Previous

Get Promotion

Next

Delete Promotion

Built with

Authentication

X-Auth-Tokenstring
### OAuth scopes | UI Name | Permission | Parameter | |:--------|:-----------|:----------| | Marketing | modify | `store_v2_marketing` | | Marketing | read-only | `store_v2_marketing_read_only` | ### Authentication header | Header | Argument | Description | |:-------|:---------|:------------| | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see [API Accounts and OAuth Scopes](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). | ### Further reading For example requests and more information about authenticating BigCommerce APIs, see [Authentication and Example Requests](/developer/docs/overview/api-fundamentals/api-accounts). For more about BigCommerce OAuth scopes, see [API Accounts and OAuth Scopes](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). For a list of API status codes, see [API Status Codes](/developer/api-reference/rest/overview#rest-http-status-codes).

Path parameters

idstringRequired
The ID of the promotion in question.
store_hashstringRequired
Permanent ID of the BigCommerce store.

Headers

AcceptstringRequiredDefaults to application/json
The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body.

Request

This endpoint expects an object.
Patch Coupon PromotionobjectRequired

A Partial Coupon Promotion that contains properties to patch.

OR
Patch Automatic PromotionobjectRequired

A Partial Automatic Promotion that contains properties to patch.

Response

dataobject
metaobject
Empty meta object, which may be used at a later time.

Errors

404
Not Found Error

OAuth scopes

UI NamePermissionParameter
Marketingmodifystore_v2_marketing
Marketingread-onlystore_v2_marketing_read_only

Authentication header

HeaderArgumentDescription
X-Auth-Tokenaccess_tokenFor more about API accounts that generate access_tokens, see API Accounts and OAuth Scopes.

Further reading

For example requests and more information about authenticating BigCommerce APIs, see Authentication and Example Requests.

For more about BigCommerce OAuth scopes, see API Accounts and OAuth Scopes.

For a list of API status codes, see API Status Codes.

The MIME type of the response body.