Update Push/Message Center Campaign Properties
Use this interface to update an existing push or message center campaign object.
The response returns the campaign object, which includes the campaign ID and its other properties (showing the new values for those updated per the request).
The links array contains the campaign object’s related API operations, specific to the campaign name where applicable.
Note: The Responsys Advanced API is generally available for all Responsys customers.
Service URL:
/rest/api/push/v1.3/campaigns/{campaignName}
Required Path Parameters:
campaignName
- Name of the campaign to update.
Request Method:
PUT
Request Header:
Authorization=<AUTH_TOKEN>
Content-Type=application/json
Request Body - Required Properties:
-
For Push Campaigns, refer to Push Campaigns Object Properties Reference.
-
For Message Center Campaigns, refer to Message Center Campaigns Object Properties Reference for more information.
Use the Get Email Campaign Properties API to obtain the campaign’s current properties.
Responsys users may have modified the campaign after it was created by the API, and therefore the properties might not match those returned in the Create Push/Message Center Campaign response body.
.Copy the campaign properties from the response body of the Get Campaign Properties request, and then use the copy to create the request body for update payload:
Modify the properties as needed for your updates, as needed.
Leave the other properties in the request body, unmodified.
Sample Request Body
Update a push campaign.
{
"campaignMetadata": {
"folderName": "<folderName>",
"description": "<description>",
"marketingStrategy": "<marketingStrategy>",
"marketingProgram": "<marketingProgram>",
"appName": "<appName>"
},
"dataSource": {
"dataSourceTables": [
{
"folder": "<dataSourceFolderName>",
"type": "<dataSourceType>",
"alias": "<dataSourceAlias>",
"name": "<dataSourceName>",
"columns": [
{
"alias": "<columnAlias>",
"defaultValue": null,
"name": "<columnName>",
"lookupKey": false
},
]
},
],
"dynamicVariables": {
"columns": [
{
"alias": "<dynamicVariableAlias>",
"defaultValue": null
}
]
}
},
"message": {
"title": "<title>",
"textMessage": "<textMessage>",
"iosMedialUrl": "<iosMediaUrl>",
"androidImageUrl": "<androidImageUrl>",
"deepLinkUrl": "<deepLinkUrl>"
},
"launchSettings": {
"progressEmailAddresses": [
"<progressEmailAddress>"
],
"skipAlertEnabled": true,
"skipAlertPercent": 10,
"sentAlertEnabled": false,
"sentAlertPercent": null,
"startAlertEnabled": false,
"emptyAlertEnabled": false,
"failureEmailAddresses": [
"<failureEmailAddress>"
],
"skippedLaunchEmailAddresses": [
"<skippedLaunchEmailAddress>"
],
"launchThrottleRate": <launchThrottleRate>
},
"targeting": {
"filterNames": "<filterNames>",
"audienceName": "<audienceName>",
"allRecipients": <allRecipients>
}
}
Sample Response Body
{
"campaignMetadata": {
"folderName": "<folderName>",
"description": "<description>",
"marketingStrategy": "<marketingStrategy>",
"marketingProgram": "<marketingProgram>",
"appName": "<appName>",
"channelListName": "<channelListName>",
"type": "Push",
"campaignName": "<campaignName>"
},
"dataSource": {
"dataSourceTables": [
{
"folder": "<dataSourceFolderName>",
"type": "<dataSourceType>",
"alias": "<dataSourceAlias>",
"name": "<dataSourceName>",
"columns": [
{
"alias": "<columnAlias>",
"defaultValue": null,
"name": "<columnName>",
"lookupKey": false
},
]
},
],
"dynamicVariables": {
"columns": [
{
"alias": "<dynamicVariableAlias>",
"defaultValue": null
}
]
}
},
"message": {
"title": "<title>",
"textMessage": "<textMessage>",
"iosMedialUrl": "<iosMediaUrl>",
"androidImageUrl": "<androidImageUrl>",
"deepLinkUrl": "<deepLinkUrl>"
},
"launchSettings": {
"progressEmailAddresses": [
"<progressEmailAddress>"
],
"skipAlertEnabled": true,
"skipAlertPercent": 10,
"sentAlertEnabled": false,
"sentAlertPercent": null,
"startAlertEnabled": false,
"emptyAlertEnabled": false,
"failureEmailAddresses": [
"<failureEmailAddress>"
],
"skippedLaunchEmailAddresses": [
"<skippedLaunchEmailAddress>"
],
"launchThrottleRate": <launchThrottleRate>
},
"targeting": {
"filterNames": "<filterNames>",
"audienceName": "<audienceName>",
"allRecipients": <allRecipients>
},
"links": [
{
"rel": "self",
"href": "/pushapi/rest/api/push/v1.3/campaigns/<campaignName>/",
"method": "PUT"
},
{
"rel": "getPushCampaign",
"href": "/pushapi/rest/api/push/v1.3//campaigns/<campaignName>",
"method": "GET"
},
{
"rel": "deletePushCampaign",
"href": "/rest/api/push/v1.3//campaigns/<campaignName>",
"method": "DELETE"
},
{
"rel": "createPushCampaign",
"href": "/pushapi/rest/api/push/v1.3//campaigns/<campaignName>",
"method": "POST"
}
]
}
Update a message center campaign.
{
"campaignMetadata": {
"folderName": "<folderName>",
"description": "<campaignDescription>",
"marketingStrategy": "<marketingStrategy>",
"marketingProgram":" <marketingProgram>",
"appName": "<appName>",
"purpose": "<campaignPurpose>"
},
"message": {
"textMessage": "<textMessage>",
"deepLinkUrl": "<deepLinkUrl>",
"destinationMessageCenter": "<messageCenterName>",
"subject": "<messageSubject>",
"messageIconUrl": "<messageIconURL>",
"relativeExpiryDateOffset": "<expiryDateOffset>",
"badgeOption": "<badgeOption>",
"expiryDate": "<expiryDate>",
"badgeCount": "<badgeCount>",
"richMessagePath": "<richMessagePath>",
"richMessageExternalUrl": "<richMessageExternalURL>"
},
"dataSource": {
"dataSourceTables": [
{
"folder": "<dataSourceFolderName>",
"type": "<dataSourceType>",
"alias": "<dataSourceAlias>",
"name": "<dataSourceName>",
"columns": [
{
"alias": "<columnAlias>",
"defaultValue": null,
"name": "<columnName>",
"lookupKey": false
}
]
}
],
"dynamicVariables": {
"columns": [
{
"alias": "<dynamicVariableAlias>",
"defaultValue": null
}
]
}
},
"targeting": {
"filterNames": [
],
"audienceName": "<audienceName>",
"allRecipients": true
},
"launchSettings": {
"progressEmailAddresses": [
"<progressEmailAddress1>",
"<progressEmailAddress2>"
],
"skipAlertEnabled": true,
"skipAlertPercent": <skipAlertPercent>,
"sentAlertEnabled": false,
"sentAlertPercent": null,
"startAlertEnabled": false,
"emptyAlertEnabled": false,
"failureEmailAddresses": [
"<failureEmailAddress1>",
"<failureEmailAddress2>"
],
"skippedLaunchEmailAddresses": [
"<skippedLaunchEmailAddress>"
],
"launchThrottleRate": <launchThrottleRate>
}
}
Sample Response Body
{
"campaignMetadata": {
"folderName": "<folderName>",
"description": "<campaignDescription>",
"marketingStrategy": "<marketingStrategy>",
"marketingProgram": "<marketingProgram>",
"appName": "<appName>",
"channelListName": "<channelListName>",
"type": "MessageCenter",
"campaignName": "<campaignName>",
"purpose": "<campaignPurpose>"
},
"message": {
"textMessage": "<textMessage>",
"deepLinkUrl": "<deepLinkUrl>",
"destinationMessageCenter": "<messageCenterName>",
"subject": "<messageSubject> ",
"messageIconUrl": "<messageIconURL>",
"relativeExpiryDateOffset": "<expiryDateOffset>",
"badgeOption": "<badgeOption>",
"badgeCount": "<badgeCount>"
},
"dataSource": {
"dataSourceTables": [
{
"folder": "<dataSourceFolderName>",
"type": "<dataSourceType>",
"alias": "<dataSourceAlias>",
"name": "<dataSourceName>",
"columns": [
{
"alias": "<columnAlias>",
"defaultValue": <defaultValue>,
"name": "<columnName>",
"lookupKey": false
}
]
}
],
"dynamicVariables": {
"columns": [
{
"alias": "<dynamicVariableAlias>",
"defaultValue": null
}
]
}
},
"targeting": {
"filterNames": [
],
"audienceName": <audienceName>,
"allRecipients": true
},
"launchSettings": {
"progressEmailAddresses": [
"<progressEmailAddress1>",
"<progressEmailAddress2>"
],
"skipAlertEnabled": true,
"skipAlertPercent": <skipAlertPercent>,
"sentAlertEnabled": false,
"sentAlertPercent": null,
"startAlertEnabled": false,
"emptyAlertEnabled": false,
"failureEmailAddresses": [
"<failureEmailAddress1>",
"<failureEmailAddress2>"
],
"skippedLaunchEmailAddresses": [
"<skippedLaunchEmailAddress>"
],
"launchThrottleRate": <launchThrottleRate>
},
"links": [
{
"rel": "self",
"href": "/pushapi/rest/api/push/v1.3/campaigns/<campaignName>",
"method": "GET"
},
{
"rel": "deletePushCampaign",
"href": "//pushapi/rest/api/push/v1.3/campaigns/<campaignName>",
"method": "DELETE"
},
{
"rel": "updatePushCampaign",
"href": "//pushapi/rest/api/push/v1.3/campaigns/<campaignName>",
"method": "PUT"
},
{
"rel": "createPushCampaign",
"href": "//pushapi/rest/api/push/v1.3/campaigns/messagecenter/<campaignName>",
"method": "POST"
}
]
}
Sample Response Body - Failure
400 Bad Request
Invalid campaign type: Requests fail if the campaign specified in the request is not a push campaign. The error resembles:
{
"type": "",
"title": "Invalid request parameters",
"errorCode": "INVALID_PARAMETER",
"detail": "Invalid Campaign Type.",
"errorDetails": []
}
Invalid request parameters: Requests fail from a variety of potential bad inputs, such as multiple targeting inputs, invalid email addresses. invalid media URLs, and invalid data source properties. The error resembles:
{
"type": "",
"title": "Invalid request parameters",
"errorCode": "INVALID_PARAMETER",
"errorDetails": {
"targeting": [
"Multiple Targeting options not allowed"
],
"campaignMetadata": [],
"launchSettings": [
"Progress Email Address [abcgmail.com] is not valid",
"Failure Email Address [abcgmail.com] is not valid",
"Failure Email Address [test2gmail.com] is not valid"
],
"message": [
"Invalid Android Image Url"
],
"dataSource": [
"Channel list [Push_App_List_APP] not found or Invalid",
"Data Source Column name [API_KEY_1] not found in datasource [Push_App_List_APP]",
"Data Source Column name [RIID_] not found in datasource [Push_App_List_APP]",
"Duplicate data source alias [api_key_alias] not allowed"
]
}
}
Invalid request parameters: Requests fail if the campaign purpose property contains a different value than the value during campaign creation. The error resembles:
{
"type": "",
"title": "Invalid request parameters",
"errorCode": "INVALID_PARAMETER",
"errorDetails": "Campaign purpose (purpose) cannot be updated"
}