v50

latestOpenAPI 3.0.0Proprietaryraw.githubusercontent.com2026-06-1841147599.2 KB
Profiles

Update a campaign

Updates an existing campaign under the brand of the specified profile. Cannot update campaigns that have already been submitted to TCR.

put/v3/profiles/{profileId}/campaigns/{campaignId}

Path parameters

profileIdstring uuid required

Profile ID from route

campaignIdstring uuid required

Campaign ID from route

Headers

Idempotency-Keystring

Unique key to ensure idempotent request processing. Must be 1-255 alphanumeric characters, hyphens, or underscores. Responses are cached for 24 hours per key per customer.

x-profile-idstring uuid

Profile UUID to scope the request to a child profile. Only organization API keys can use this header. The profile must belong to the calling organization.

Request body

sandboxboolean

Sandbox flag - when true, the operation is simulated without side effects Useful for testing integrations without actual execution

Example request

{
  "campaign": {
    "name": "Customer Notifications Updated",
    "description": "Updated appointment reminders and account notifications",
    "type": "App",
    "useCases": [
      {
        "messagingUseCaseUs": "ACCOUNT_NOTIFICATION",
        "sampleMessages": [
          "Hi {name}, your appointment is confirmed for {date} at {time}.",
          "Your order #{order_id} has been shipped. Track at {url}"
        ]
      }
    ],
    "messageFlow": "User signs up on website and opts in to receive SMS notifications",
    "privacyPolicyLink": null,
    "termsAndConditionsLink": null,
    "optinMessage": null,
    "optoutMessage": null,
    "helpMessage": null,
    "optinKeywords": null,
    "optoutKeywords": null,
    "helpKeywords": null
  },
  "sandbox": false
}

Response

Campaign updated successfully

successboolean

Indicates whether the request was successful