Update a campaign with a full payload. Requires a SERVER API token. The account_id is derived from the access token and must not be sent in the request body. The type query parameter must match the existing campaign type. Updates reject missing campaigns, invalid payloads, and blocked sensitive changes. Ended campaigns cannot be updated. Started campaigns cannot update start_date, attributes, rules, or brand_id, and end_date cannot be moved to the past.
Storefront campaign write payload. Send the campaign type as the required type query parameter, not in the body. The body mirrors the dashboard campaign form for that type. account_id is derived from the SERVER token. Common validation: rules must contain at least one main/referrer rule, metadata must be a JSON object encoded as a string, budget must be at least 1, labels and platforms use dashboard select values, content stores optional CMS template field values, and dates must follow the campaign date restrictions.
Store ids this campaign is restricted to. null means no store restriction; a non-empty array restricts the campaign to those stores; [] is an explicit empty restriction and matches no stores.
Channel ids this campaign is restricted to. null means no channel restriction; a non-empty array restricts the campaign to those channels; [] is an explicit empty restriction and matches no channels.
Product ids this campaign is restricted to. null means no product restriction; a non-empty array restricts the campaign to those products; [] is an explicit empty restriction and matches no products.
Tier ids allowed to earn from this campaign. null or [] means no tier restriction; a non-empty array requires the customer's current tier to be included.
JSON string of an array of Rule objects (see the Rule/Effect schemas) with the main/referrer campaign rules. Must contain at least one rule for every campaign type, including REFERRALS. referee_rules_json does not replace this field. Each rule's effects[].reward_id must be the id of a reward that already exists and is ACTIVE for the account; create the reward from the dashboard first, this endpoint does not create rewards.
Optional CMS content values for the campaign. Each key is a template field name and each value contains the field metadata, type, and value. Send an empty object when the campaign has no CMS content.
Example:
{ "Title": { "name": "Title", "type": "input", "value": "Value of the title" }, "BannerImage": { "alt": "Alternative description for the image", "href": "Href link for the image", "name": "Name of the image", "type": "image", "value": "https://URL_TO_IMAGE" }, "Description": { "name": "Name of the description", "type": "input", "value": "Value of the description" } }
Campaign response. account_id, order, and created_at are not returned.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Masivo","colors":{"primary":"#9333ea","light":"#c084fc","dark":"#9333ea"},"logo":{"light":"https://mintcdn.com/trd/7W_vRQTxJHIpxqe2/logo/light.svg?fit=max\u0026auto=format\u0026n=7W_vRQTxJHIpxqe2\u0026q=85\u0026s=d6c63ec91328f53e2881c4b8c6463002","dark":"https://mintcdn.com/trd/7W_vRQTxJHIpxqe2/logo/dark.svg?fit=max\u0026auto=format\u0026n=7W_vRQTxJHIpxqe2\u0026q=85\u0026s=4f3a37e246a4bdd211beae4f51571bea","href":"/"},"favicon":"https://mintcdn.com/trd/7W_vRQTxJHIpxqe2/favicon.svg?fit=max\u0026auto=format\u0026n=7W_vRQTxJHIpxqe2\u0026q=85\u0026s=d626565ed6bd780993b9f7d91f7ab1be","navbar":{"links":[{"href":"mailto:soporte@trade.ec?subject=Masivo Support","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.masivo.ai"}},"footer":{"socials":{"x":"https://x.com/mintlify","github":"https://github.com/mintlify","linkedin":"https://www.linkedin.com/company/mintsearch"}},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"Roadmap","icon":"map","href":"https://docs.masivo.ai/roadmap"},{"anchor":"Changelog","icon":"rocket","href":"https://docs.masivo.ai/changelog"},{"anchor":"Community","icon":"discord","href":"https://discord.gg/2DgqGUej"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"trd","hasAudioNarration":false,"actualSubdomain":"trd","customDomains":["docs.masivo.ai"],"gitSource":{"type":"github","owner":"trade-ec","repo":"masivo","deployBranch":"main","contentDirectory":"apps/docs","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6acf80df4788a74327b769f7","collectionId":"d6010a2c-5956-470b-bacf-48f4d6c9a6c9","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6acf80df4788a74327b769f7"},"entitlements":{},"buildId":"6ad7912758d74bd870d4f4f1","clientVersion":"0.0.3964","searchFilterCounts":[{"language":"default","tag":"API Reference","count":92},{"language":"default","tag":"Documentation","count":88},{"language":"default","tag":"Endpoints","count":72},{"language":"default","tag":"Guides","count":72},{"language":"default","tag":"Get Started","count":23},{"language":"default","tag":"Concepts","count":20},{"language":"default","tag":"Marketing Automation","count":19},{"language":"default","tag":"Customers","count":17},{"language":"default","tag":"CDP","count":17},{"language":"default","tag":"Integrations","count":16}]},"assistantConfig":{},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/campaigns/[id]/put","slug":"/api-reference/campaigns/[id]/put","pageMetadata":{"title":"Update campaign","openapi":"PUT /campaigns/{id}","description":"Update a campaign with a full payload. Requires a SERVER API token. The account_id is derived from the access token and must not be sent in the request body. The type query parameter must match the existing campaign type. Updates reject missing campaigns, invalid payloads, and blocked sensitive changes. Ended campaigns cannot be updated. Started campaigns cannot update start_date, attributes, rules, or brand_id, and end_date cannot be moved to the past.","href":"/api-reference/campaigns/[id]/put"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Update a campaign with a full payload. Requires a SERVER API token. The account_id is derived from the access token and must not be sent in the request body. The type query parameter must match the existing campaign type. Updates reject missing campaigns, invalid payloads, and blocked sensitive changes. Ended campaigns cannot be updated. Started campaigns cannot update start_date, attributes, rules, or brand_id, and end_date cannot be moved to the past.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Update campaign","openapi":"PUT /campaigns/{id}","description":"Update a campaign with a full payload. Requires a SERVER API token. The account_id is derived from the access token and must not be sent in the request body. The type query parameter must match the existing campaign type. Updates reject missing campaigns, invalid payloads, and blocked sensitive changes. Ended campaigns cannot be updated. Started campaigns cannot update start_date, attributes, rules, or brand_id, and end_date cannot be moved to the past.","href":"/api-reference/campaigns/[id]/put"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Update a campaign with a full payload. Requires a SERVER API token. The account_id is derived from the access token and must not be sent in the request body. The type query parameter must match the existing campaign type. Updates reject missing campaigns, invalid payloads, and blocked sensitive changes. Ended campaigns cannot be updated. Started campaigns cannot update start_date, attributes, rules, or brand_id, and end_date cannot be moved to the past.","parameters":["a152a8cf-da37-4802-8535-d03fdb698623","d447d1fa-4f8a-4928-9fc9-d6dea91f443a"],"requestBody":"f83e1f6b-a584-43b1-aa04-225bbe14ef96","responses":{"200":"c9b028ed-bb37-48ea-ba7b-685a0210f13c","403":"2f0336b4-2b1f-49b3-91c4-74e4446dc490","404":"dae364a3-e1aa-4d91-8afa-6d72e729a49e","422":"651e9024-031e-4bb1-a4c7-95a938f72f37"},"method":"put","type":"path","servers":["ad89a4a4-8bf3-447f-8111-216bc044805e"],"security":["bff4180b-9916-4a00-95a1-f6c7339b51bb"],"path":"/campaigns/{id}","baseUrlOptions":["https://app.masivo.ai/api/storefront/v1"],"title":"","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"a152a8cf-da37-4802-8535-d03fdb698623":{"in":"path","name":"id","description":"The campaign unique identifier","required":true,"schema":{"type":"string","format":"uuid","isRequired":true,"description":"The campaign unique identifier","uniqueKey":"","typeLabel":"string\u003cuuid>"}},"d447d1fa-4f8a-4928-9fc9-d6dea91f443a":{"in":"query","name":"type","description":"The campaign type to update. It must match the existing campaign type. The request body must be the full selected campaign form payload.","required":true,"schema":{"type":"string","description":"The campaign type","enum":["BEHAVIOR","COUPONS","PUNCH_CARDS","REFERRALS","SCORE_STREAKS"],"isRequired":true,"uniqueKey":"","typeLabel":"enum\u003cstring>"}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","description":"Storefront campaign write payload. Send the campaign type as the required type query parameter, not in the body. The body mirrors the dashboard campaign form for that type. account_id is derived from the SERVER token. Common validation: rules must contain at least one main/referrer rule, metadata must be a JSON object encoded as a string, budget must be at least 1, labels and platforms use dashboard select values, content stores optional CMS template field values, and dates must follow the campaign date restrictions.","additionalProperties":true,"properties":{"brand_id":{"oneOf":[{"type":"string","description":"The brand id of the campaign, null if is a global campaign","uniqueKey":"brand_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The brand id of the campaign, null if is a global campaign","uniqueKey":"brand_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"brand_id","typeLabel":"string | null"},"platforms":{"oneOf":[{"type":"array","description":"Platform select values where this campaign applies","items":{"type":"object","properties":{"label":{"type":"string","uniqueKey":"platforms.oneOf.0.items.[INDEX].label","typeLabel":"string"},"value":{"type":"string","uniqueKey":"platforms.oneOf.0.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"platforms.oneOf.0.items.[INDEX]","typeLabel":"object"},"uniqueKey":"platforms.oneOf.0","typeLabel":"object[]"},{"type":"null","description":"Platform select values where this campaign applies","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"}}},"uniqueKey":"platforms.oneOf.1","typeLabel":"null"}],"uniqueKey":"platforms","typeLabel":"object[] | null"},"stores":{"oneOf":[{"type":"array","description":"Store ids this campaign is restricted to. null means no store restriction; a non-empty array restricts the campaign to those stores; [] is an explicit empty restriction and matches no stores.","items":{"type":"string","uniqueKey":"stores.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"stores.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Store ids this campaign is restricted to. null means no store restriction; a non-empty array restricts the campaign to those stores; [] is an explicit empty restriction and matches no stores.","items":{"type":"string"},"uniqueKey":"stores.oneOf.1","typeLabel":"null"}],"uniqueKey":"stores","typeLabel":"string[] | null"},"channels":{"oneOf":[{"type":"array","description":"Channel ids this campaign is restricted to. null means no channel restriction; a non-empty array restricts the campaign to those channels; [] is an explicit empty restriction and matches no channels.","items":{"type":"string","uniqueKey":"channels.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"channels.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Channel ids this campaign is restricted to. null means no channel restriction; a non-empty array restricts the campaign to those channels; [] is an explicit empty restriction and matches no channels.","items":{"type":"string"},"uniqueKey":"channels.oneOf.1","typeLabel":"null"}],"uniqueKey":"channels","typeLabel":"string[] | null"},"products":{"oneOf":[{"type":"array","description":"Product ids this campaign is restricted to. null means no product restriction; a non-empty array restricts the campaign to those products; [] is an explicit empty restriction and matches no products.","items":{"type":"string","uniqueKey":"products.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"products.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Product ids this campaign is restricted to. null means no product restriction; a non-empty array restricts the campaign to those products; [] is an explicit empty restriction and matches no products.","items":{"type":"string"},"uniqueKey":"products.oneOf.1","typeLabel":"null"}],"uniqueKey":"products","typeLabel":"string[] | null"},"tiers":{"oneOf":[{"type":"array","description":"Tier ids allowed to earn from this campaign. null or [] means no tier restriction; a non-empty array requires the customer's current tier to be included.","items":{"type":"string","format":"uuid","uniqueKey":"tiers.oneOf.0.items.[INDEX]","typeLabel":"string\u003cuuid>"},"uniqueKey":"tiers.oneOf.0","typeLabel":"string\u003cuuid>[]"},{"type":"null","description":"Tier ids allowed to earn from this campaign. null or [] means no tier restriction; a non-empty array requires the customer's current tier to be included.","items":{"type":"string","format":"uuid"},"uniqueKey":"tiers.oneOf.1","typeLabel":"null"}],"uniqueKey":"tiers","typeLabel":"string\u003cuuid>[] | null"},"name":{"type":"string","description":"The name of the campaign","uniqueKey":"name","typeLabel":"string"},"description":{"type":"string","description":"The description of the campaign","uniqueKey":"description","typeLabel":"string"},"rules":{"type":"string","description":"JSON string of an array of Rule objects (see the Rule/Effect schemas) with the main/referrer campaign rules. Must contain at least one rule for every campaign type, including REFERRALS. referee_rules_json does not replace this field. Each rule's effects[].reward_id must be the id of a reward that already exists and is ACTIVE for the account; create the reward from the dashboard first, this endpoint does not create rewards.","example":"[{\"conditions\":[],\"effects\":[{\"reward_id\":\"1334205e-4876-4f04-9d4b-e58b3778be44\",\"type\":\"DISCOUNT\",\"tier_id\":null,\"expiration_date\":null,\"amount\":10}]}]","uniqueKey":"rules","typeLabel":"string"},"attributes":{"oneOf":[{"type":"object","description":"The attributes of the campaign","properties":{"trigger":{"type":"string","description":"The trigger of the campaign","example":"PURCHASE","uniqueKey":"attributes.oneOf.0.trigger","typeLabel":"string"},"privacy":{"type":"string","description":"The privacy of the campaign","enum":["PRIVATE","PUBLIC"],"uniqueKey":"attributes.oneOf.0.privacy","typeLabel":"enum\u003cstring>"}},"uniqueKey":"attributes.oneOf.0","typeLabel":"object"},{"type":"object","description":"The attributes of the campaign","properties":{"max_redemptions_per_code":{"type":"number","description":"The maximum redemptions per code. Must be at least 1.","example":1,"uniqueKey":"attributes.oneOf.1.max_redemptions_per_code","typeLabel":"number"},"max_redemptions_per_code_per_customer":{"type":"number","description":"The maximum redemptions per code per customer. Must be at least 1.","example":1,"uniqueKey":"attributes.oneOf.1.max_redemptions_per_code_per_customer","typeLabel":"number"},"code_format":{"type":"object","description":"The format of generated coupon codes. Generated quantities must stay within the template permutation count and under the same safe limit enforced by the dashboard form. Custom codes are checked for duplicates against active campaigns and active redemptions when they match this template.","properties":{"template":{"type":"string","description":"The template that all coupon codes should follow","example":"********","uniqueKey":"attributes.oneOf.1.code_format.template","typeLabel":"string"},"case_sensitive":{"type":"boolean","description":"If the coupon code is case sensitive","example":false,"uniqueKey":"attributes.oneOf.1.code_format.case_sensitive","typeLabel":"boolean"}},"uniqueKey":"attributes.oneOf.1.code_format","typeLabel":"object"},"codes":{"type":"array","description":"The codes of the campaign","items":{"type":"string","example":"ABCD1234","uniqueKey":"attributes.oneOf.1.codes.items.[INDEX]","typeLabel":"string"},"uniqueKey":"attributes.oneOf.1.codes","typeLabel":"string[]"}},"uniqueKey":"attributes.oneOf.1","typeLabel":"object"},{"type":"object","description":"The attributes of the campaign","properties":{"trigger":{"type":"string","example":"PURCHASE","uniqueKey":"attributes.oneOf.2.trigger","typeLabel":"string"},"privacy":{"type":"string","enum":["PRIVATE","PUBLIC"],"uniqueKey":"attributes.oneOf.2.privacy","typeLabel":"enum\u003cstring>"},"unlimited_cards":{"type":"boolean","uniqueKey":"attributes.oneOf.2.unlimited_cards","typeLabel":"boolean"},"cards_per_customer":{"type":"number","uniqueKey":"attributes.oneOf.2.cards_per_customer","typeLabel":"number"},"punches_per_card":{"type":"number","uniqueKey":"attributes.oneOf.2.punches_per_card","typeLabel":"number"}},"uniqueKey":"attributes.oneOf.2","typeLabel":"object"},{"type":"object","description":"The attributes of the campaign","properties":{"trigger":{"type":"string","example":"PURCHASE","uniqueKey":"attributes.oneOf.3.trigger","typeLabel":"string"},"privacy":{"type":"string","enum":["PRIVATE","PUBLIC"],"uniqueKey":"attributes.oneOf.3.privacy","typeLabel":"enum\u003cstring>"},"max_participations_per_customer":{"type":"number","description":"Must be an integer between 1 and 100.","uniqueKey":"attributes.oneOf.3.max_participations_per_customer","typeLabel":"number"},"stock":{"type":"number","description":"Must be an integer between 1 and 100000.","uniqueKey":"attributes.oneOf.3.stock","typeLabel":"number"},"uses":{"type":"number","description":"Must be an integer greater than or equal to 0.","uniqueKey":"attributes.oneOf.3.uses","typeLabel":"number"}},"uniqueKey":"attributes.oneOf.3","typeLabel":"object"},{"type":"object","description":"The attributes of the campaign","properties":{"trigger":{"type":"string","description":"The event type that advances the streak","example":"PURCHASE","uniqueKey":"attributes.oneOf.4.trigger","typeLabel":"string"},"privacy":{"type":"string","enum":["PRIVATE","PUBLIC"],"uniqueKey":"attributes.oneOf.4.privacy","typeLabel":"enum\u003cstring>"},"loss":{"type":"object","description":"When the streak is lost. Exactly one condition is required.","properties":{"conditions":{"type":"array","minItems":1,"maxItems":1,"items":{"type":"object","properties":{"type":{"type":"string","enum":["NO_TRIGGER_EVENT_WITHIN"],"uniqueKey":"attributes.oneOf.4.loss.conditions.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"amount":{"type":"number","description":"Integer from 1 to 365","uniqueKey":"attributes.oneOf.4.loss.conditions.items.[INDEX].amount","typeLabel":"number"},"unit":{"type":"string","enum":["MINUTES","HOURS","DAYS","WEEKS","MONTHS"],"uniqueKey":"attributes.oneOf.4.loss.conditions.items.[INDEX].unit","typeLabel":"enum\u003cstring>"}},"uniqueKey":"attributes.oneOf.4.loss.conditions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"attributes.oneOf.4.loss.conditions","typeLabel":"object[]"}},"uniqueKey":"attributes.oneOf.4.loss","typeLabel":"object"},"reset":{"type":"object","description":"Optional calendar reset. When enabled is true, calendar is required.","properties":{"enabled":{"type":"boolean","uniqueKey":"attributes.oneOf.4.reset.enabled","typeLabel":"boolean"},"calendar":{"type":"object","properties":{"frequency":{"type":"string","enum":["DAILY","WEEKLY","MONTHLY"],"uniqueKey":"attributes.oneOf.4.reset.calendar.frequency","typeLabel":"enum\u003cstring>"},"week_starts_on":{"type":"number","description":"Required when frequency is WEEKLY. 0-6.","uniqueKey":"attributes.oneOf.4.reset.calendar.week_starts_on","typeLabel":"number"},"day_of_month":{"type":"number","description":"Required when frequency is MONTHLY. 1-31.","uniqueKey":"attributes.oneOf.4.reset.calendar.day_of_month","typeLabel":"number"}},"uniqueKey":"attributes.oneOf.4.reset.calendar","typeLabel":"object"}},"uniqueKey":"attributes.oneOf.4.reset","typeLabel":"object"}},"uniqueKey":"attributes.oneOf.4","typeLabel":"object"}],"uniqueKey":"attributes","typeLabel":"object"},"status":{"description":"The persisted campaign status for create/update requests","type":"string","enum":["ACTIVE","INACTIVE"],"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"start_date":{"type":"string","description":"The start date of the campaign. On create, and on updates for scheduled campaigns, it must be today or later and less than one year from now.","format":"date-time","uniqueKey":"start_date","typeLabel":"string\u003cdate-time>"},"withoutEndDate":{"type":"boolean","description":"When true, end_date must be omitted and the campaign is stored without an end date.","uniqueKey":"withoutEndDate","typeLabel":"boolean"},"end_date":{"oneOf":[{"type":"string","description":"The end date of the campaign. Omit it when withoutEndDate is true. When provided, it must be after start_date and less than one year from start_date.","format":"date-time","uniqueKey":"end_date.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"The end date of the campaign. Omit it when withoutEndDate is true. When provided, it must be after start_date and less than one year from start_date.","format":"date-time","uniqueKey":"end_date.oneOf.1","typeLabel":"null"}],"uniqueKey":"end_date","typeLabel":"string\u003cdate-time> | null"},"funded_by":{"oneOf":[{"type":"string","description":"Who is funding these campaign","uniqueKey":"funded_by.oneOf.0","typeLabel":"string"},{"type":"null","description":"Who is funding these campaign","uniqueKey":"funded_by.oneOf.1","typeLabel":"null"}],"uniqueKey":"funded_by","typeLabel":"string | null"},"budget":{"type":"number","description":"The budget of the campaign","example":1000,"uniqueKey":"budget","typeLabel":"number"},"divide_budget_in":{"type":"string","enum":["daily","weekly","monthly","total"],"uniqueKey":"divide_budget_in","typeLabel":"enum\u003cstring>"},"labels":{"type":"array","description":"Label select values","items":{"type":"object","properties":{"label":{"type":"string","uniqueKey":"labels.items.[INDEX].label","typeLabel":"string"},"value":{"type":"string","uniqueKey":"labels.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"labels.items.[INDEX]","typeLabel":"object"},"uniqueKey":"labels","typeLabel":"object[]"},"metadata":{"type":"string","description":"JSON object encoded as a string","uniqueKey":"metadata","typeLabel":"string"},"content":{"type":"object","description":"Optional CMS content values for the campaign. Each key is a template field name and each value contains the field metadata, type, and value. Send an empty object when the campaign has no CMS content.","additionalProperties":true,"example":{"Title":{"name":"Title","type":"input","value":"Value of the title"},"BannerImage":{"alt":"Alternative description for the image","href":"Href link for the image","name":"Name of the image","type":"image","value":"https://URL_TO_IMAGE"},"Description":{"name":"Name of the description","type":"input","value":"Value of the description"}},"uniqueKey":"content","typeLabel":"object"},"template_id":{"oneOf":[{"type":"string","description":"Optional CMS template id used to structure the campaign content. Send null when no template is selected.","format":"uuid","uniqueKey":"template_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"Optional CMS template id used to structure the campaign content. Send null when no template is selected.","format":"uuid","uniqueKey":"template_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"template_id","typeLabel":"string\u003cuuid> | null"},"quantity":{"type":"number","description":"COUPONS only. Number of coupon codes to generate or keep. Must be positive and within the safe limit for generated codes.","uniqueKey":"quantity","typeLabel":"number"},"useCustomCodes":{"type":"boolean","description":"COUPONS only. When true, customCodes is used instead of generated codes","uniqueKey":"useCustomCodes","typeLabel":"boolean"},"customCodes":{"type":"string","description":"COUPONS only. Comma-separated custom coupon codes. Required to contain at least one non-empty code when useCustomCodes is true.","uniqueKey":"customCodes","typeLabel":"string"},"confirm_changes":{"type":"boolean","description":"COUPONS update only. Required as true when changing code format or quantity","uniqueKey":"confirm_changes","typeLabel":"boolean"},"referee_rules_json":{"type":"string","description":"REFERRALS only. JSON string with referee campaign rules. This is optional and does not replace the required main/referrer rules field.","uniqueKey":"referee_rules_json","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"brand_id":"\u003cstring>","platforms":[{"label":"\u003cstring>","value":"\u003cstring>"}],"stores":["\u003cstring>"],"channels":["\u003cstring>"],"products":["\u003cstring>"],"tiers":["3c90c3cc-0d44-4b50-8888-8dd25736052a"],"name":"\u003cstring>","description":"\u003cstring>","rules":"[{\"conditions\":[],\"effects\":[{\"reward_id\":\"1334205e-4876-4f04-9d4b-e58b3778be44\",\"type\":\"DISCOUNT\",\"tier_id\":null,\"expiration_date\":null,\"amount\":10}]}]","attributes":{"trigger":"PURCHASE"},"start_date":"2023-11-07T05:31:56Z","withoutEndDate":true,"end_date":"2023-11-07T05:31:56Z","funded_by":"\u003cstring>","budget":1000,"labels":[{"label":"\u003cstring>","value":"\u003cstring>"}],"metadata":"\u003cstring>","content":{"Title":{"name":"Title","type":"input","value":"Value of the title"},"BannerImage":{"alt":"Alternative description for the image","href":"Href link for the image","name":"Name of the image","type":"image","value":"https://URL_TO_IMAGE"},"Description":{"name":"Name of the description","type":"input","value":"Value of the description"}},"template_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","quantity":123,"useCustomCodes":true,"customCodes":"\u003cstring>","confirm_changes":true,"referee_rules_json":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"c9b028ed-bb37-48ea-ba7b-685a0210f13c":{"description":"Campaign updated","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","description":"Campaign response. account_id, order, and created_at are not returned.","additionalProperties":true,"properties":{"id":{"type":"string","description":"The campaign internal unique identifier","format":"uuid","uniqueKey":"data.id","typeLabel":"string\u003cuuid>"},"name":{"type":"string","description":"The name of the campaign","uniqueKey":"data.name","typeLabel":"string"},"status":{"description":"The computed campaign status returned by the API","type":"string","enum":["RUNNING","PAUSED","SCHEDULED","FINISHED","NOT FINISHED"],"uniqueKey":"data.status","typeLabel":"enum\u003cstring>"},"attributes":{"description":"The attributes of the campaign","type":"object","additionalProperties":true,"uniqueKey":"data.attributes","typeLabel":"object"},"brand_id":{"oneOf":[{"type":"string","description":"The brand id of the campaign, or null if it is a global campaign.","uniqueKey":"data.brand_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The brand id of the campaign, or null if it is a global campaign.","uniqueKey":"data.brand_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.brand_id","typeLabel":"string | null"},"type":{"type":"string","description":"The campaign type","enum":["BEHAVIOR","COUPONS","PUNCH_CARDS","REFERRALS","SCORE_STREAKS"],"uniqueKey":"data.type","typeLabel":"enum\u003cstring>"},"start_date":{"type":"string","description":"The start date of the campaign.","format":"date-time","uniqueKey":"data.start_date","typeLabel":"string\u003cdate-time>"},"end_date":{"oneOf":[{"type":"string","description":"The end date of the campaign, or null when it has no end date.","format":"date-time","uniqueKey":"data.end_date.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"The end date of the campaign, or null when it has no end date.","format":"date-time","uniqueKey":"data.end_date.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.end_date","typeLabel":"string\u003cdate-time> | null"},"funded_by":{"oneOf":[{"type":"string","description":"Who is funding this campaign, or null when not set.","uniqueKey":"data.funded_by.oneOf.0","typeLabel":"string"},{"type":"null","description":"Who is funding this campaign, or null when not set.","uniqueKey":"data.funded_by.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.funded_by","typeLabel":"string | null"},"budget":{"type":"number","description":"The budget of the campaign.","uniqueKey":"data.budget","typeLabel":"number"},"divide_budget_in":{"type":"string","description":"How the budget is divided over time.","enum":["daily","weekly","monthly","total"],"uniqueKey":"data.divide_budget_in","typeLabel":"enum\u003cstring>"},"description":{"type":"string","description":"The description of the campaign.","uniqueKey":"data.description","typeLabel":"string"},"metadata":{"type":"object","description":"Arbitrary metadata stored for the campaign.","additionalProperties":true,"uniqueKey":"data.metadata","typeLabel":"object"},"rules":{"type":"array","description":"The main/referrer rules of the campaign.","items":{"type":"object","properties":{"conditions":{"type":"array","description":"OR conditions","items":{"type":"array","description":"AND conditions","items":{"type":"object","properties":{"type":{"type":"string","description":"The type of the condition","example":"Order Value","uniqueKey":"data.rules.items.[INDEX].conditions.items.[INDEX].items.[INDEX].type","typeLabel":"string"},"operator":{"type":"string","description":"The operator to compare the attribute","example":"grater than","uniqueKey":"data.rules.items.[INDEX].conditions.items.[INDEX].items.[INDEX].operator","typeLabel":"string"},"primitive":{"type":"string","description":"The primitive of the value to compare","enum":["string","number","currency","boolean","absolute date","relative date","recurring date"],"uniqueKey":"data.rules.items.[INDEX].conditions.items.[INDEX].items.[INDEX].primitive","typeLabel":"enum\u003cstring>"},"value":{"oneOf":[{"type":"number","description":"The value to compare","example":9.95,"uniqueKey":"data.rules.items.[INDEX].conditions.items.[INDEX].items.[INDEX].value.oneOf.0","typeLabel":"number"},{"type":"string","description":"The value to compare","uniqueKey":"data.rules.items.[INDEX].conditions.items.[INDEX].items.[INDEX].value.oneOf.1","typeLabel":"string"},{"type":"boolean","description":"The value to compare","uniqueKey":"data.rules.items.[INDEX].conditions.items.[INDEX].items.[INDEX].value.oneOf.2","typeLabel":"boolean"}],"uniqueKey":"data.rules.items.[INDEX].conditions.items.[INDEX].items.[INDEX].value","typeLabel":"number | string | boolean"}},"uniqueKey":"data.rules.items.[INDEX].conditions.items.[INDEX].items.[INDEX]","typeLabel":"object"},"uniqueKey":"data.rules.items.[INDEX].conditions.items.[INDEX]","typeLabel":"object[]"},"uniqueKey":"data.rules.items.[INDEX].conditions","typeLabel":"object[][]"},"effects":{"type":"array","items":{"oneOf":[{"type":"object","properties":{"reward_id":{"type":"string","description":"The reward id to apply","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward_id","typeLabel":"string\u003cuuid>"},"type":{"type":"string","description":"The type of reward","enum":["POINTS","DISCOUNT","GIFT_CARD","PRODUCT","CUSTOM","COUNTER"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.type","typeLabel":"enum\u003cstring>"},"tier_id":{"oneOf":[{"type":"string","description":"The tier to offer the reward. Null if is for all tiers","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.tier_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"The tier to offer the reward. Null if is for all tiers","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.tier_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.tier_id","typeLabel":"string\u003cuuid> | null"},"reward":{"type":"object","properties":{"id":{"type":"string","description":"The reward internal unique identifier","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.id","typeLabel":"string\u003cuuid>"},"brand_id":{"oneOf":[{"type":"string","description":"The brand id of the reward, null if is a global reward","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.brand_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The brand id of the reward, null if is a global reward","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.brand_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.brand_id","typeLabel":"string | null"},"account_id":{"type":"string","description":"The account id that owns this reward.","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.account_id","typeLabel":"string\u003cuuid>"},"status":{"type":"string","description":"The status of the reward.","enum":["ACTIVE","INACTIVE"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.status","typeLabel":"enum\u003cstring>"},"team_ids":{"type":"array","description":"Team ids associated with this reward.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.team_ids.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.team_ids","typeLabel":"string[]"},"template_id":{"oneOf":[{"type":"string","description":"CMS template id used to structure the reward content, or null when no template is selected.","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.template_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"CMS template id used to structure the reward content, or null when no template is selected.","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.template_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.template_id","typeLabel":"string\u003cuuid> | null"},"content":{"type":"object","description":"CMS content values for the reward.","additionalProperties":true,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.content","typeLabel":"object"},"platforms":{"type":"array","description":"Platforms where this reward applies.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.platforms.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.platforms","typeLabel":"string[]"},"labels":{"type":"array","description":"Labels used to categorize this reward.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.labels.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.labels","typeLabel":"string[]"},"stores":{"oneOf":[{"type":"array","description":"Store ids this reward is restricted to. When creating or updating, null means no store restriction and a non-empty array restricts the reward to those stores.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.stores.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.stores.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Store ids this reward is restricted to. When creating or updating, null means no store restriction and a non-empty array restricts the reward to those stores.","items":{"type":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.stores.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.stores","typeLabel":"string[] | null"},"channels":{"oneOf":[{"type":"array","description":"Channel ids this reward is restricted to. When creating or updating, null means no channel restriction and a non-empty array restricts the reward to those channels.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.channels.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.channels.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Channel ids this reward is restricted to. When creating or updating, null means no channel restriction and a non-empty array restricts the reward to those channels.","items":{"type":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.channels.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.channels","typeLabel":"string[] | null"},"products":{"oneOf":[{"type":"array","description":"Product ids this reward is restricted to. When creating or updating, null means no product restriction and a non-empty array restricts the reward to those products.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.products.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.products.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Product ids this reward is restricted to. When creating or updating, null means no product restriction and a non-empty array restricts the reward to those products.","items":{"type":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.products.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.products","typeLabel":"string[] | null"},"tiers":{"oneOf":[{"type":"array","description":"Tier ids allowed to redeem this reward. When creating or updating, null or [] means no tier restriction; a non-empty array requires the customer's current tier to be included.","items":{"type":"string","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.tiers.oneOf.0.items.[INDEX]","typeLabel":"string\u003cuuid>"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.tiers.oneOf.0","typeLabel":"string\u003cuuid>[]"},{"type":"null","description":"Tier ids allowed to redeem this reward. When creating or updating, null or [] means no tier restriction; a non-empty array requires the customer's current tier to be included.","items":{"type":"string","format":"uuid"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.tiers.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.tiers","typeLabel":"string\u003cuuid>[] | null"},"name":{"type":"string","description":"The name of the reward","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.name","typeLabel":"string"},"description":{"type":"string","description":"The description of the reward","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.description","typeLabel":"string"},"type":{"type":"string","description":"The type of the reward","enum":["POINTS","DISCOUNT","GIFT_CARD","PRODUCT","CUSTOM","COUNTER"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.type","typeLabel":"enum\u003cstring>"},"conditions":{"type":"array","description":"OR conditions","items":{"type":"array","description":"AND conditions","items":{"type":"object","properties":{"type":{"type":"string","description":"The type of the condition","example":"Order Value","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.conditions.items.[INDEX].items.[INDEX].type","typeLabel":"string"},"operator":{"type":"string","description":"The operator to compare the attribute","example":"grater than","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.conditions.items.[INDEX].items.[INDEX].operator","typeLabel":"string"},"primitive":{"type":"string","description":"The primitive of the value to compare","enum":["string","number","currency","boolean","absolute date","relative date","recurring date"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.conditions.items.[INDEX].items.[INDEX].primitive","typeLabel":"enum\u003cstring>"},"value":{"oneOf":[{"type":"number","description":"The value to compare","example":9.95,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.conditions.items.[INDEX].items.[INDEX].value.oneOf.0","typeLabel":"number"},{"type":"string","description":"The value to compare","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.conditions.items.[INDEX].items.[INDEX].value.oneOf.1","typeLabel":"string"},{"type":"boolean","description":"The value to compare","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.conditions.items.[INDEX].items.[INDEX].value.oneOf.2","typeLabel":"boolean"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.conditions.items.[INDEX].items.[INDEX].value","typeLabel":"number | string | boolean"}},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.conditions.items.[INDEX].items.[INDEX]","typeLabel":"object"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.conditions.items.[INDEX]","typeLabel":"object[]"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.conditions","typeLabel":"object[][]"},"attributes":{"oneOf":[{"type":"object","description":"The attributes of the reward","properties":{"conversion_factor":{"type":"number","description":"How much 1 point is worth in your currency","example":0.1,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.attributes.oneOf.0.conversion_factor","typeLabel":"number"}},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.attributes.oneOf.0","typeLabel":"object"},{"type":"object","description":"The attributes of the reward","additionalProperties":true,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.attributes.oneOf.1","typeLabel":"object"},{"type":"object","description":"The attributes of the reward","properties":{"discount_value":{"type":"number","description":"The discount value","example":10,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.attributes.oneOf.2.discount_value","typeLabel":"number"},"discount_type":{"type":"string","description":"The type of discount","enum":["fixed","percentage"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.attributes.oneOf.2.discount_type","typeLabel":"enum\u003cstring>"},"type":{"type":"string","description":"The discount will be applied to","enum":["shipping","order","product"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.attributes.oneOf.2.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.attributes.oneOf.2","typeLabel":"object"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward.attributes","typeLabel":"object"}},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.reward","typeLabel":"object"},"expiration_date":{"type":"string","description":"Rewards duration since issued","example":"12/months","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.expiration_date","typeLabel":"string"},"amount":{"type":"number","description":"The amount of the reward","example":1,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0.amount","typeLabel":"number"}},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","properties":{"reward_id":{"type":"string","description":"The reward id to apply","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward_id","typeLabel":"string\u003cuuid>"},"type":{"type":"string","description":"The type of reward","enum":["POINTS","DISCOUNT","GIFT_CARD","PRODUCT","CUSTOM","COUNTER"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.type","typeLabel":"enum\u003cstring>"},"tier_id":{"oneOf":[{"type":"string","description":"The tier to offer the reward. Null if is for all tiers","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.tier_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"The tier to offer the reward. Null if is for all tiers","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.tier_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.tier_id","typeLabel":"string\u003cuuid> | null"},"reward":{"type":"object","properties":{"id":{"type":"string","description":"The reward internal unique identifier","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.id","typeLabel":"string\u003cuuid>"},"brand_id":{"oneOf":[{"type":"string","description":"The brand id of the reward, null if is a global reward","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.brand_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The brand id of the reward, null if is a global reward","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.brand_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.brand_id","typeLabel":"string | null"},"account_id":{"type":"string","description":"The account id that owns this reward.","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.account_id","typeLabel":"string\u003cuuid>"},"status":{"type":"string","description":"The status of the reward.","enum":["ACTIVE","INACTIVE"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.status","typeLabel":"enum\u003cstring>"},"team_ids":{"type":"array","description":"Team ids associated with this reward.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.team_ids.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.team_ids","typeLabel":"string[]"},"template_id":{"oneOf":[{"type":"string","description":"CMS template id used to structure the reward content, or null when no template is selected.","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.template_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"CMS template id used to structure the reward content, or null when no template is selected.","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.template_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.template_id","typeLabel":"string\u003cuuid> | null"},"content":{"type":"object","description":"CMS content values for the reward.","additionalProperties":true,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.content","typeLabel":"object"},"platforms":{"type":"array","description":"Platforms where this reward applies.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.platforms.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.platforms","typeLabel":"string[]"},"labels":{"type":"array","description":"Labels used to categorize this reward.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.labels.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.labels","typeLabel":"string[]"},"stores":{"oneOf":[{"type":"array","description":"Store ids this reward is restricted to. When creating or updating, null means no store restriction and a non-empty array restricts the reward to those stores.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.stores.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.stores.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Store ids this reward is restricted to. When creating or updating, null means no store restriction and a non-empty array restricts the reward to those stores.","items":{"type":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.stores.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.stores","typeLabel":"string[] | null"},"channels":{"oneOf":[{"type":"array","description":"Channel ids this reward is restricted to. When creating or updating, null means no channel restriction and a non-empty array restricts the reward to those channels.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.channels.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.channels.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Channel ids this reward is restricted to. When creating or updating, null means no channel restriction and a non-empty array restricts the reward to those channels.","items":{"type":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.channels.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.channels","typeLabel":"string[] | null"},"products":{"oneOf":[{"type":"array","description":"Product ids this reward is restricted to. When creating or updating, null means no product restriction and a non-empty array restricts the reward to those products.","items":{"type":"string","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.products.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.products.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Product ids this reward is restricted to. When creating or updating, null means no product restriction and a non-empty array restricts the reward to those products.","items":{"type":"string"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.products.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.products","typeLabel":"string[] | null"},"tiers":{"oneOf":[{"type":"array","description":"Tier ids allowed to redeem this reward. When creating or updating, null or [] means no tier restriction; a non-empty array requires the customer's current tier to be included.","items":{"type":"string","format":"uuid","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.tiers.oneOf.0.items.[INDEX]","typeLabel":"string\u003cuuid>"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.tiers.oneOf.0","typeLabel":"string\u003cuuid>[]"},{"type":"null","description":"Tier ids allowed to redeem this reward. When creating or updating, null or [] means no tier restriction; a non-empty array requires the customer's current tier to be included.","items":{"type":"string","format":"uuid"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.tiers.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.tiers","typeLabel":"string\u003cuuid>[] | null"},"name":{"type":"string","description":"The name of the reward","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.name","typeLabel":"string"},"description":{"type":"string","description":"The description of the reward","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.description","typeLabel":"string"},"type":{"type":"string","description":"The type of the reward","enum":["POINTS","DISCOUNT","GIFT_CARD","PRODUCT","CUSTOM","COUNTER"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.type","typeLabel":"enum\u003cstring>"},"conditions":{"type":"array","description":"OR conditions","items":{"type":"array","description":"AND conditions","items":{"type":"object","properties":{"type":{"type":"string","description":"The type of the condition","example":"Order Value","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.conditions.items.[INDEX].items.[INDEX].type","typeLabel":"string"},"operator":{"type":"string","description":"The operator to compare the attribute","example":"grater than","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.conditions.items.[INDEX].items.[INDEX].operator","typeLabel":"string"},"primitive":{"type":"string","description":"The primitive of the value to compare","enum":["string","number","currency","boolean","absolute date","relative date","recurring date"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.conditions.items.[INDEX].items.[INDEX].primitive","typeLabel":"enum\u003cstring>"},"value":{"oneOf":[{"type":"number","description":"The value to compare","example":9.95,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.conditions.items.[INDEX].items.[INDEX].value.oneOf.0","typeLabel":"number"},{"type":"string","description":"The value to compare","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.conditions.items.[INDEX].items.[INDEX].value.oneOf.1","typeLabel":"string"},{"type":"boolean","description":"The value to compare","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.conditions.items.[INDEX].items.[INDEX].value.oneOf.2","typeLabel":"boolean"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.conditions.items.[INDEX].items.[INDEX].value","typeLabel":"number | string | boolean"}},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.conditions.items.[INDEX].items.[INDEX]","typeLabel":"object"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.conditions.items.[INDEX]","typeLabel":"object[]"},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.conditions","typeLabel":"object[][]"},"attributes":{"oneOf":[{"type":"object","description":"The attributes of the reward","properties":{"conversion_factor":{"type":"number","description":"How much 1 point is worth in your currency","example":0.1,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.attributes.oneOf.0.conversion_factor","typeLabel":"number"}},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.attributes.oneOf.0","typeLabel":"object"},{"type":"object","description":"The attributes of the reward","additionalProperties":true,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.attributes.oneOf.1","typeLabel":"object"},{"type":"object","description":"The attributes of the reward","properties":{"discount_value":{"type":"number","description":"The discount value","example":10,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.attributes.oneOf.2.discount_value","typeLabel":"number"},"discount_type":{"type":"string","description":"The type of discount","enum":["fixed","percentage"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.attributes.oneOf.2.discount_type","typeLabel":"enum\u003cstring>"},"type":{"type":"string","description":"The discount will be applied to","enum":["shipping","order","product"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.attributes.oneOf.2.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.attributes.oneOf.2","typeLabel":"object"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward.attributes","typeLabel":"object"}},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.reward","typeLabel":"object"},"expiration_date":{"type":"string","description":"Rewards duration since issued","example":"12/months","uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.expiration_date","typeLabel":"string"},"amount":{"type":"number","description":"The amount of the reward","example":1,"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.amount","typeLabel":"number"},"multiplier":{"type":"string","description":"The dynamic multiplier to calculate total amount","enum":["ORDER_VALUE"],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1.multiplier","typeLabel":"enum\u003cstring>"}},"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX].oneOf.1","typeLabel":"object"}],"uniqueKey":"data.rules.items.[INDEX].effects.items.[INDEX]","typeLabel":"object"},"uniqueKey":"data.rules.items.[INDEX].effects","typeLabel":"object[]"}},"uniqueKey":"data.rules.items.[INDEX]","typeLabel":"object"},"uniqueKey":"data.rules","typeLabel":"object[]"},"team_ids":{"type":"array","description":"Team ids associated with this campaign.","items":{"type":"string","uniqueKey":"data.team_ids.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.team_ids","typeLabel":"string[]"},"platforms":{"type":"array","description":"Platforms where this campaign applies.","items":{"type":"string","uniqueKey":"data.platforms.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.platforms","typeLabel":"string[]"},"labels":{"type":"array","description":"Labels used to categorize this campaign.","items":{"type":"string","uniqueKey":"data.labels.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.labels","typeLabel":"string[]"},"stores":{"oneOf":[{"type":"array","description":"Store ids this campaign is restricted to. When creating or updating, null means no store restriction and a non-empty array restricts the campaign to those stores.","items":{"type":"string","uniqueKey":"data.stores.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.stores.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Store ids this campaign is restricted to. When creating or updating, null means no store restriction and a non-empty array restricts the campaign to those stores.","items":{"type":"string"},"uniqueKey":"data.stores.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.stores","typeLabel":"string[] | null"},"channels":{"oneOf":[{"type":"array","description":"Channel ids this campaign is restricted to. When creating or updating, null means no channel restriction and a non-empty array restricts the campaign to those channels.","items":{"type":"string","uniqueKey":"data.channels.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.channels.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Channel ids this campaign is restricted to. When creating or updating, null means no channel restriction and a non-empty array restricts the campaign to those channels.","items":{"type":"string"},"uniqueKey":"data.channels.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.channels","typeLabel":"string[] | null"},"products":{"oneOf":[{"type":"array","description":"Product ids this campaign is restricted to. When creating or updating, null means no product restriction and a non-empty array restricts the campaign to those products.","items":{"type":"string","uniqueKey":"data.products.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.products.oneOf.0","typeLabel":"string[]"},{"type":"null","description":"Product ids this campaign is restricted to. When creating or updating, null means no product restriction and a non-empty array restricts the campaign to those products.","items":{"type":"string"},"uniqueKey":"data.products.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.products","typeLabel":"string[] | null"},"tiers":{"oneOf":[{"type":"array","description":"Tier ids allowed to earn from this campaign. When creating or updating, null or [] means no tier restriction; a non-empty array requires the customer's current tier to be included.","items":{"type":"string","format":"uuid","uniqueKey":"data.tiers.oneOf.0.items.[INDEX]","typeLabel":"string\u003cuuid>"},"uniqueKey":"data.tiers.oneOf.0","typeLabel":"string\u003cuuid>[]"},{"type":"null","description":"Tier ids allowed to earn from this campaign. When creating or updating, null or [] means no tier restriction; a non-empty array requires the customer's current tier to be included.","items":{"type":"string","format":"uuid"},"uniqueKey":"data.tiers.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.tiers","typeLabel":"string\u003cuuid>[] | null"},"content":{"description":"The CMS content values stored for the campaign","type":"object","additionalProperties":true,"example":{"Title":{"name":"Title","type":"input","value":"Value of the title"},"BannerImage":{"alt":"Alternative description for the image","href":"Href link for the image","name":"BannerImage","type":"image","value":"https://URL_TO_IMAGE"},"Description":{"name":"Name of the description","type":"input","value":"Value of the description"}},"uniqueKey":"data.content","typeLabel":"object"},"template_id":{"oneOf":[{"description":"The CMS template id associated with the campaign content, or null when there is no template.","type":"string","format":"uuid","uniqueKey":"data.template_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"description":"The CMS template id associated with the campaign content, or null when there is no template.","type":"null","format":"uuid","uniqueKey":"data.template_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.template_id","typeLabel":"string\u003cuuid> | null"}},"uniqueKey":"data","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"data":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","name":"\u003cstring>","status":"RUNNING","attributes":{},"brand_id":"\u003cstring>","type":"BEHAVIOR","start_date":"2023-11-07T05:31:56Z","end_date":"2023-11-07T05:31:56Z","funded_by":"\u003cstring>","budget":123,"divide_budget_in":"daily","description":"\u003cstring>","metadata":{},"rules":[{"conditions":[[{"type":"Order Value","operator":"grater than","primitive":"string","value":9.95}]],"effects":[{"reward_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","type":"POINTS","tier_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","reward":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","brand_id":"\u003cstring>","account_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","status":"ACTIVE","team_ids":["\u003cstring>"],"template_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","content":{},"platforms":["\u003cstring>"],"labels":["\u003cstring>"],"stores":["\u003cstring>"],"channels":["\u003cstring>"],"products":["\u003cstring>"],"tiers":["3c90c3cc-0d44-4b50-8888-8dd25736052a"],"name":"\u003cstring>","description":"\u003cstring>","type":"POINTS","conditions":[[{"type":"Order Value","operator":"grater than","primitive":"string","value":9.95}]],"attributes":{"conversion_factor":0.1}},"expiration_date":"12/months","amount":1}]}],"team_ids":["\u003cstring>"],"platforms":["\u003cstring>"],"labels":["\u003cstring>"],"stores":["\u003cstring>"],"channels":["\u003cstring>"],"products":["\u003cstring>"],"tiers":["3c90c3cc-0d44-4b50-8888-8dd25736052a"],"content":{"Title":{"name":"Title","type":"input","value":"Value of the title"},"BannerImage":{"alt":"Alternative description for the image","href":"Href link for the image","name":"BannerImage","type":"image","value":"https://URL_TO_IMAGE"},"Description":{"name":"Name of the description","type":"input","value":"Value of the description"}},"template_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a"}}}},"exampleType":"generated"}},"exampleType":"generated"},"2f0336b4-2b1f-49b3-91c4-74e4446dc490":{"description":"Forbidden, CLIENT API tokens cannot update campaigns","content":{"application/json":{"schema":{"required":["error","details"],"type":"object","properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"details":{"type":"string","isRequired":true,"uniqueKey":"details","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","details":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"dae364a3-e1aa-4d91-8afa-6d72e729a49e":{"description":"Campaign not found","content":{"application/json":{"schema":{"required":["error","details"],"type":"object","properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"details":{"type":"string","isRequired":true,"uniqueKey":"details","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","details":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"651e9024-031e-4bb1-a4c7-95a938f72f37":{"description":"Invalid campaign or blocked update","content":{"application/json":{"schema":{"required":["error","details"],"type":"object","properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"details":{"type":"string","isRequired":true,"uniqueKey":"details","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","details":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"bff4180b-9916-4a00-95a1-f6c7339b51bb":{"bearerAuth":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"ad89a4a4-8bf3-447f-8111-216bc044805e":{"url":"https://app.masivo.ai/api/storefront/v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"trd","siteName":"Masivo","title":"Update campaign - Masivo","navMaps":{"firstHrefInVersion":{"v1":{"href":"/api-reference/campaigns/[id]/put","matchLevel":0}},"firstHrefInLanguage":{}},"lastModified":"2026-05-08T19:55:10.453Z","originalFileLocation":"api-reference/campaigns/[id]/put.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Update a campaign with a full payload. Requires a SERVER API token. The account_id is derived from the access token and must not be sent in the request body. The type query parameter must match the existing campaign type. Updates reject missing campaigns, invalid payloads, and blocked sensitive changes. Ended campaigns cannot be updated. Started campaigns cannot update start_date, attributes, rules, or brand_id, and end_date cannot be moved to the past.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Masivo\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/trd/IG0U6h8DpJ60Xnom/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/trd/IG0U6h8DpJ60Xnom/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/trd/IG0U6h8DpJ60Xnom/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/trd/IG0U6h8DpJ60Xnom/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/trd/IG0U6h8DpJ60Xnom/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/trd/IG0U6h8DpJ60Xnom/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/trd/IG0U6h8DpJ60Xnom/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/trd/IG0U6h8DpJ60Xnom/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/trd/IG0U6h8DpJ60Xnom/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Update campaign - Masivo\">\u003cmeta data-mint-head property=\"og:description\" content=\"Update a campaign with a full payload. Requires a SERVER API token. The account_id is derived from the access token and must not be sent in the request body. The type query parameter must match the existing campaign type. Updates reject missing campaigns, invalid payloads, and blocked sensitive changes. Ended campaigns cannot be updated. Started campaigns cannot update start_date, attributes, rules, or brand_id, and end_date cannot be moved to the past.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Masivo\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.masivo.ai/api-reference/campaigns/[id]/put\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://trd.mintlify.app/_mintlify/api/og/v2?division=Campaigns\u0026amp;title=Update+campaign\u0026amp;description=Update+a+campaign+with+a+full+payload.+Requires+a+SERVER+API+token.+The+account_id+is+derived+from+the+access+token+and+must+not+be+sent+in+the+request+body.+Th\u0026amp;theme=8f8d98b752dbc21b97c2a726\u0026amp;signature=d578c2e3b08a71d757211224f4bbe112571236c03fb51ef0f7d15af168ffddba\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Update campaign - Masivo\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Update a campaign with a full payload. Requires a SERVER API token. The account_id is derived from the access token and must not be sent in the request body. The type query parameter must match the existing campaign type. Updates reject missing campaigns, invalid payloads, and blocked sensitive changes. Ended campaigns cannot be updated. Started campaigns cannot update start_date, attributes, rules, or brand_id, and end_date cannot be moved to the past.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://trd.mintlify.app/_mintlify/api/og/v2?division=Campaigns\u0026amp;title=Update+campaign\u0026amp;description=Update+a+campaign+with+a+full+payload.+Requires+a+SERVER+API+token.+The+account_id+is+derived+from+the+access+token+and+must+not+be+sent+in+the+request+body.+Th\u0026amp;theme=8f8d98b752dbc21b97c2a726\u0026amp;signature=d578c2e3b08a71d757211224f4bbe112571236c03fb51ef0f7d15af168ffddba\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/trd/IG0U6h8DpJ60Xnom/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Masivo\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#9333ea\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.masivo.ai/api-reference/campaigns/[id]/put\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/campaigns/%5Bid%5D/put.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.masivo.ai/#organization\",\"name\":\"Masivo\",\"url\":\"https://docs.masivo.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/trd/7W_vRQTxJHIpxqe2/logo/light.svg?fit=max\u0026auto=format\u0026n=7W_vRQTxJHIpxqe2\u0026q=85\u0026s=d6c63ec91328f53e2881c4b8c6463002\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.masivo.ai#website\",\"name\":\"Masivo\",\"url\":\"https://docs.masivo.ai\",\"publisher\":{\"@id\":\"https://docs.masivo.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.masivo.ai/api-reference/campaigns/[id]/put#webpage\",\"url\":\"https://docs.masivo.ai/api-reference/campaigns/[id]/put\",\"name\":\"Update campaign\",\"description\":\"Update a campaign with a full payload. Requires a SERVER API token. The account_id is derived from the access token and must not be sent in the request body. The type query parameter must match the existing campaign type. Updates reject missing campaigns, invalid payloads, and blocked sensitive changes. Ended campaigns cannot be updated. Started campaigns cannot update start_date, attributes, rules, or brand_id, and end_date cannot be moved to the past.\",\"dateModified\":\"2026-05-08T19:55:10.453Z\",\"isPartOf\":{\"@id\":\"https://docs.masivo.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.masivo.ai/api-reference/campaigns/[id]/put#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.masivo.ai/api-reference/campaigns/[id]/put#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.masivo.ai/api-reference/auth/authorize/get\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Campaigns\",\"item\":\"https://docs.masivo.ai/api-reference/behavior/events/post\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Update campaign\",\"item\":\"https://docs.masivo.ai/api-reference/campaigns/[id]/put\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.masivo.ai/api-reference/campaigns/[id]/put#apireference\",\"headline\":\"Update campaign\",\"name\":\"Update campaign\",\"description\":\"Update a campaign with a full payload. Requires a SERVER API token. The account_id is derived from the access token and must not be sent in the request body. The type query parameter must match the existing campaign type. Updates reject missing campaigns, invalid payloads, and blocked sensitive changes. Ended campaigns cannot be updated. Started campaigns cannot update start_date, attributes, rules, or brand_id, and end_date cannot be moved to the past.\",\"url\":\"https://docs.masivo.ai/api-reference/campaigns/[id]/put\",\"mainEntityOfPage\":{\"@id\":\"https://docs.masivo.ai/api-reference/campaigns/[id]/put#webpage\"},\"dateModified\":\"2026-05-08T19:55:10.453Z\",\"publisher\":{\"@id\":\"https://docs.masivo.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.masivo.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Masivo\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Masivo","nav":{"global":{"anchors":[{"anchor":"Roadmap","icon":"map","href":"https://docs.masivo.ai/roadmap"},{"anchor":"Changelog","icon":"rocket","href":"https://docs.masivo.ai/changelog"},{"anchor":"Community","icon":"discord","href":"https://discord.gg/2DgqGUej"}]},"versions":[{"version":"v1","tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/overview"}]},{"tab":"API Reference","groups":[{"group":"API Documentation","pages":[{"title":"Introduction","href":"/api-reference/introduction"}]},{"group":"Endpoints","pages":[{"group":"Auth","pages":[{"title":"Authorize","openapi":"GET /auth/authorize","href":"/api-reference/auth/authorize/get"},{"title":"Request TOTP","openapi":"POST /auth/totp","href":"/api-reference/auth/totp/post"},{"title":"Verify TOTP","openapi":"GET /auth/totp/verify","href":"/api-reference/auth/totp/verify/get"}]},{"group":"Brands","pages":[{"title":"Get brands","openapi":"GET /brands","href":"/api-reference/brands/get"}]},{"group":"Platforms","pages":[{"title":"Get platforms","openapi":"GET /platforms","href":"/api-reference/platforms/get"}]},{"group":"Tiers","pages":[{"title":"Get tiers","openapi":"GET /tiers","href":"/api-reference/tiers/get"}]},{"group":"Rewards","pages":[{"title":"Get rewards","openapi":"GET /rewards","href":"/api-reference/rewards/get"},{"title":"Get reward","openapi":"GET /rewards/{id}","href":"/api-reference/rewards/[id]/get"},{"group":"Gift cards","pages":[{"title":"Get customer gift cards","openapi":"GET /customers/{id}/rewards/gift-cards","href":"/api-reference/rewards/gift-cards/get"},{"title":"Redeem gift card","openapi":"Delete /rewards/gift-cards/redeem","href":"/api-reference/rewards/gift-cards/redeem/delete"}]}]},{"group":"Customers","pages":[{"title":"Register customer","openapi":"POST /customers","href":"/api-reference/customers/post"},{"title":"Get customer by document or phone","openapi":"GET /customers","href":"/api-reference/customers/get"},{"title":"Get customer","openapi":"GET /customers/{id}","href":"/api-reference/customers/[id]/get"},{"title":"Update customer","openapi":"PATCH /customers/{id}","href":"/api-reference/customers/[id]/patch"},{"title":"Unregister customer","openapi":"DELETE /customers/{id}","href":"/api-reference/customers/[id]/delete"},{"title":"Update customers in bulk","openapi":"PATCH /customers/bulk","href":"/api-reference/customers/bulk/patch"},{"title":"Get customer consent","openapi":"GET /customers/{id}/consent","href":"/api-reference/customers/[id]/consent/get"},{"title":"Update customer consent","openapi":"PATCH /customers/{id}/consent","href":"/api-reference/customers/[id]/consent/patch"},{"title":"Update customer tags","openapi":"PATCH /customers/{id}/tags","href":"/api-reference/customers/[id]/tags/patch"},{"title":"Delete customer tags","openapi":"DELETE /customers/{id}/tags","href":"/api-reference/customers/[id]/tags/delete"},{"title":"Get customer punch-cards","openapi":"GET /customers/{id}/punch-cards","href":"/api-reference/customers/[id]/punch-cards/get"},{"title":"Get customer score streaks","openapi":"GET /customers/{id}/score-streaks","href":"/api-reference/customers/[id]/score-streaks/get"},{"title":"List in-app messages","openapi":"GET /customers/{id}/inapp-messages","href":"/api-reference/customers/[id]/inapp-messages/get"},{"title":"Log in-app message event","openapi":"POST /customers/{id}/inapp-messages/{messageId}/events","href":"/api-reference/customers/[id]/inapp-messages/[messageId]/events/post"},{"title":"Get customer news feed cards","openapi":"GET /customers/{id}/news-feed","href":"/api-reference/customers/[id]/news-feed/get"},{"title":"Log a news feed card event","openapi":"POST /customers/{id}/news-feed/{templateId}/events","href":"/api-reference/customers/[id]/news-feed/[templateId]/events/post"},{"title":"Identify anonymous customers","openapi":"PATCH /customers/{id}/identify/anonymous","href":"/api-reference/customers/[id]/identify/anonymous/patch"}]},{"group":"Contacts","pages":[{"title":"Search contacts","openapi":"GET /contacts","href":"/api-reference/contacts/get"},{"title":"Create contact","openapi":"POST /contacts","href":"/api-reference/contacts/post"},{"title":"Update contact by ID","openapi":"PUT /contacts/{id}","href":"/api-reference/contacts/[id]/put"},{"title":"Delete contact by ID","openapi":"DELETE /contacts/{id}","href":"/api-reference/contacts/[id]/delete"},{"title":"Migrate contacts","openapi":"POST /contacts/migrate","href":"/api-reference/contacts/migrate/post"}]},{"group":"Campaigns","pages":[{"group":"Behavior","pages":[{"title":"Emit event","openapi":"POST /behavior/events","href":"/api-reference/behavior/events/post"},{"title":"Fulfill event","openapi":"PATCH /behavior/events/{eventId}/fulfill","href":"/api-reference/behavior/events/[eventId]/fulfill/patch"},{"title":"Reverse event","openapi":"POST /behavior/events/{eventId}/reverse","href":"/api-reference/behavior/events/[eventId]/reverse/delete"},{"title":"Preview order","openapi":"PUT /events/redeem/preview","href":"/api-reference/events/redeem/preview/put"},{"title":"Identify customer","openapi":"PATCH /events/identify","href":"/api-reference/events/identify/patch"}]},{"group":"Coupons","pages":[{"title":"Redeem coupon","openapi":"POST /coupons/redeem","href":"/api-reference/coupons/redeem/post"},{"title":"Reverse coupon","openapi":"POST /coupons/reverse","href":"/api-reference/coupons/reverse/post"}]},{"group":"Referrals","pages":[{"title":"Request referral code","openapi":"POST /customers/{id}/referrals/request-code","href":"/api-reference/customers/[id]/referrals/request-code/post"}]},{"title":"Get campaign","openapi":"GET /campaigns/{id}","description":"Get a specific campaign","href":"/api-reference/campaigns/[id]/get"},{"title":"Update campaign","openapi":"PUT /campaigns/{id}","href":"/api-reference/campaigns/[id]/put"},{"title":"Get campaigns","openapi":"GET /campaigns","description":"Get all campaigns","href":"/api-reference/campaigns/get"},{"title":"Create a new campaign","openapi":"POST /campaigns","href":"/api-reference/campaigns/post"}]},{"group":"Review forms","pages":[{"title":"Get form","openapi":"GET /review-forms/{id}","href":"/api-reference/review-forms/[id]/get"},{"title":"Create review","openapi":"POST /review-forms/{id}/reviews","href":"/api-reference/review-forms/[id]/reviews/post"},{"title":"List reviews","openapi":"GET /reviews","href":"/api-reference/reviews/get"}]},{"group":"Tickets","pages":[{"title":"List ticket pipelines","openapi":"GET /ticket-pipelines","href":"/api-reference/ticket-pipelines/get"},{"title":"Create ticket","openapi":"POST /tickets","href":"/api-reference/tickets/post"},{"title":"Get ticket","openapi":"GET /tickets/{id}","href":"/api-reference/tickets/[id]/get"},{"title":"Update ticket","openapi":"PATCH /tickets/{id}","href":"/api-reference/tickets/[id]/patch"},{"title":"List ticket assignees","openapi":"GET /tickets/{id}/assignees","href":"/api-reference/tickets/[id]/assignees/get"},{"title":"Add ticket assignee","openapi":"POST /tickets/{id}/assignees","href":"/api-reference/tickets/[id]/assignees/post"},{"title":"Remove ticket assignee","openapi":"DELETE /tickets/{id}/assignees","href":"/api-reference/tickets/[id]/assignees/delete"},{"title":"List communication threads","openapi":"GET /communication/threads","href":"/api-reference/communication/threads/get"},{"title":"Create communication thread","openapi":"POST /communication/threads","href":"/api-reference/communication/threads/post"},{"title":"Get communication thread","openapi":"GET /communication/threads/{id}","href":"/api-reference/communication/threads/[id]/get"},{"title":"List communication messages","openapi":"GET /communication/threads/{id}/messages","href":"/api-reference/communication/threads/[id]/messages/get"},{"title":"Create communication message","openapi":"POST /communication/threads/{id}/messages","href":"/api-reference/communication/threads/[id]/messages/post"}]},{"group":"Transactions","pages":[{"title":"Customer transactions","openapi":"GET /customers/{id}/transactions","href":"/api-reference/customers/[id]/transactions/get"},{"title":"Account transactions","openapi":"GET /transactions","href":"/api-reference/transactions/get"}]},{"group":"Push","pages":[{"title":"Customer device token","openapi":"PATCH /customers/{id}/devices","href":"/api-reference/customers/[id]/devices/patch"},{"title":"Customer device token","openapi":"DELETE /customers/{id}/devices","href":"/api-reference/customers/[id]/devices/delete"},{"title":"Send customer push","openapi":"POST /push/customers/{id}/send","href":"/api-reference/push/customers/[id]/send/post"},{"title":"Schedule audience push","openapi":"POST /push/audiences/{id}/schedule","href":"/api-reference/push/audiences/[id]/schedule/post"}]},{"group":"In-app","pages":[{"title":"Get in-app capabilities","openapi":"GET /inapp/capabilities","href":"/api-reference/inapp/capabilities/get"}]},{"group":"Migrate","pages":[{"title":"Migrate customers","openapi":"POST /customers/migrate","href":"/api-reference/customers/migrate/post"},{"title":"Migrate devices tokens","openapi":"POST /customers/migrate/devices","href":"/api-reference/customers/migrate/devices/post"},{"title":"Migrate events","openapi":"POST /customers/migrate/events","href":"/api-reference/customers/migrate/events/post"},{"title":"Migrate transactions","openapi":"POST /customers/migrate/transactions","href":"/api-reference/customers/migrate/transactions/post"},{"title":"Revert migration","openapi":"DELETE /customers/migrate/revert","href":"/api-reference/customers/migrate/revert/delete"}]},{"group":"Maintenance","pages":[{"title":"Fulfill expired events","openapi":"POST /customers/fulfill_expired_events","href":"/api-reference/customers/fulfill_expired_events/post"}]}]},{"group":"Guides","pages":[{"title":"Integrate with Masivo","href":"/api-reference/guides/integrate-with-masivo"},{"title":"Register a customer","href":"/api-reference/guides/register-a-customer"},{"title":"Show customer data","href":"/api-reference/guides/show-customer-data"},{"title":"Validate rewards redemption","href":"/api-reference/guides/validate-rewards-redemption"},{"title":"Send an event","href":"/api-reference/guides/send-an-event"},{"title":"Submit reviews","href":"/api-reference/guides/submit-reviews"},{"title":"Redeem a coupon","href":"/api-reference/guides/redeem-a-coupon"},{"title":"Reverse a coupon","href":"/api-reference/guides/reverse-a-coupon"},{"title":"Modify customer balance arbitrarily","href":"/api-reference/guides/modify-customer-balance-arbitrarily"},{"title":"Migrate customers","href":"/api-reference/guides/migrate-customers"},{"title":"Setup webhooks","href":"/api-reference/guides/setup-webhooks"},{"title":"Integrate push notifications","href":"/api-reference/guides/integrate-push-notification"},{"title":"Integrate in-app messages","href":"/api-reference/guides/integrate-in-app-messages"},{"title":"Integrate deferred deep linking","href":"/api-reference/guides/integrate-deferred-deep-linking"},{"group":"Marketing automation","pages":[{"title":"FCM Token Management","href":"/api-reference/guides/fcm-token-management"},{"title":"Attribution Tracking","href":"/api-reference/guides/attribution-tracking"},{"title":"Customer Audience Enrollment","href":"/api-reference/guides/customer-audience-enrollment"},{"title":"Journey Triggers","href":"/api-reference/guides/journey-triggers"}]}]},{"group":"Resources","pages":[{"title":"Resource limits","href":"/api-reference/resources/resource-limits"}]}]}]}]},"title":"Update campaign - Masivo","buildId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","deploymentId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-BRm_l__d.js","utils-f1l1Oc-G.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BlhqDhJO.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DHCB7rsC.js","snippetPresets-CYXLx6Hv.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-B78P2dEq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C4YLPVAh.js","shallow-vlLnTDkQ.js","getApiPlaygroundDisplay-D_98hhvf.js","CodeSnippet-DtnZHGqq.js","CodeSnippets-CLFb8KJt.js","Page-kQh739Uz.js","getPastedJson-Cq-zlbnU.js","icon-sN3t983t.js","MethodPill-P_YQ2s09.js","DuplicateIcon-BVzyNsGJ.js","createIcon-B3jqgqC6.js","DynamicMarkdown-Crwq6WG_.js","SectionHeading-C7pGS2Bb.js","axios-vUo_bRtp.js","Markdown-BuPH8yuW.js","clsx-CCOYKgaU.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BnkC_6oA.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BM4S31-f.js"]}