蜜豆视频

[LIMITED AVAILABILITY]{class="badge informative" title="Restricted to Campaign Standard migrated users"}

Recommendations & limitations limitations

Permissions & security permissions

Product profiles mapping

In Campaign Standard, you were granted elevated admin role access to APIs regardless of your assigned product profile. Campaign v8 introduces a different set of product profiles, requiring mapping from Campaign Standard to Campaign v8 product profiles.

With the migration, two product profiles are added to your existing or pre-created technical accounts: Administrator and Message center (for accessing transactional APIs). Review the product profile mapping and assign the needed product profile if you do not want the Admin product profile mapped with your technical account.

Tenant ID

After migration, for any future integrations, it is recommended to use your Campaign v8 tenant ID in REST URLs, replacing your previous Campaign Standard tenant ID.

Key usage

Management of PKey values differs between Campaign Standard and Campaign v8. If you were storing PKeys with Campaign Standard, ensure your implementation dynamically forms subsequent API calls using PKeys or hrefs obtained from previous API calls.

Available APIs deprecated

For now, the REST APIs listed below are available for use:

  • Profiles
  • Services & subscriptions
  • Custom resources
  • Workflows
AVAILABILITY
For now, the Transactional messages REST API is not available.
The REST APIs listed below are deprecated and not available for use:
  • Marketing history
  • Organizational units
  • Privacy management

Filtering

  • To use your filters in REST API payloads, you need to edit them in Campaign v8 and provide a name to use in your payloads. To do so access the filter鈥檚 additional parameters from the Parameters tab, and provide the desired name in the Filter name in REST API field.

  • The 鈥渂y鈥 prefix required to use custom filters is no longer needed. The filter name should be used as-is in your requests.

    Example:

    GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServicesExt/<resourceName>/<customFilterName>?<customFilterparam>=<customFilterValue>

Dropped database fields

Some fields from the database are being dropped during migration. When using a dropped field, REST APIs will return blank values. In the future, all dropped fields will be deprecated and removed.

POST with linked resources

When using the following request body format, with 鈥渧ehicleOwner鈥 representing the link to 鈥渘ms:recipient鈥:

{
    "vehicleNumber": "20009",
    "vehicleName": "Model E",
    "vehicleOwner":{
        "firstName":"tester 11",
        "lastName":"Smith 11"
    }
}

The link information is ignored. Consequently, a new record is generated under 鈥渃usVehicle鈥 containing only 鈥渧ehicleNumber鈥 and 鈥渧ehicleName鈥 values. However, the link remains null, resulting in 鈥渧ehicleOwner鈥 being set to null.

In Campaign v8, when the same request body structure is used and the 鈥渧ehicle鈥 is linked to a profile, an error occurs. This error occurs because the 鈥渇irstName鈥 property is not recognized as valid for 鈥渃usVehicle.鈥. However, a request body comprising only the attributes without the link functions without any issues.

PATCH operations

  • Campaign v8 does not support PATCH with an empty request body: it returns a 204 No Content status.
  • While Campaign Standard supports PATCH on elements/attributes within a schema, note that PATCH operations on location are not supported in Campaign v8. Attempting a PATCH on location will result in a 500 Internal Server Error with an error message indicating that the 鈥榸ipCode鈥 property is not valid for the 鈥榩rofile鈥 resource.

REST responses

The section below lists minor differencies between Campaign Standard and v8 REST responses.

  • For single GET records, the response includes the href in the response.
  • When queried with the attribute, Campaign v8 provides Count and Pagination in the reponse.
  • After POST operations, values from linked resources are returned in the response.

Error codes and messages

The section below lists the differences between Campaign Standard and Campaign v8 error codes and messages.

Scenario
Campaign Standard
Campaign v8
Use an Invalid PKey in request Body
500 - 鈥極5iRp40EGA鈥 attribute unknown (see definition of 鈥楶rofiles (nms:recipient)鈥 schema). XTK-170036 Unable to parse expression 鈥楡id = @O5iRp40EGA鈥.
404 - Unable to decrypt PKey. (PKey=@jksad)
Use an Invalid PKey in URI
500 - 鈥極5iRp40EGA鈥 attribute unknown (see definition of 鈥楶rofiles (nms:recipient)鈥 schema). XTK-170036 Unable to parse expression 鈥楡id = @O5iRp40EGA鈥.
404 - Unable to decrypt PKey. (PKey=@jksad) Unsupported endpoint. (endpoint=rest/profileAndServices/profile/@jksad)
Using two different raw Pkeys in the URI and request body
500 - RST-360011 An error has occurred - please contact your administrator. RST-360012 Inconsistent operation on resource 鈥榮ervice鈥 鈥 Cannot update key 鈥楽VC3鈥 to 鈥楽VC4鈥.
500 - An error has occurred - please contact your administrator.
Using PKey in the URI and a different raw PKey in the request body
500 - A 鈥楽ervice鈥 with the same key 鈥楽VC4鈥 already exists. PGS-220000 PostgreSQL error: ERROR: duplicate key value violates unique constraint 鈥渘msservice_name鈥 DETAIL: Key (sname)=(SVC4) already exists.
500 - An error has occurred - please contact your administrator.
Using non-existing raw-id in URI
404 - RST-360011 An error has occurred - please contact your administrator. Unable to find document with path 鈥楽ervice鈥 from key 鈥榓dobe_nl:0鈥 (document with schema 鈥榮ervice鈥 and name 鈥榓dobe_nl鈥)
404 - Unable to find document with path 鈥楽ervice鈥 from key 鈥榓dobe_nl鈥 (document with schema 鈥榮ervice鈥 and name 鈥榓dobe_nl鈥)
Using non-existing raw-id in request body
404 - RST-360011 An error has occurred - please contact your administrator. Unable to find document with path 鈥楽ervice鈥 from key 鈥榓dobe_nl鈥 (document with schema 鈥榮ervice鈥 and name 鈥榓dobe_nl鈥)
404 - Unable to find document with path 鈥楽ervice鈥 from key 鈥榓dobe_nl鈥 (document with schema 鈥榮ervice鈥 and name 鈥榓dobe_nl鈥)
-
500 - RST-360011 An error has occurred - please contact your administrator.
500 - An error has occurred - please contact your administrator.
Insert a profile/service with invalid gender (or anything) enum value
500 - RST-360011 An error has occurred - please contact your administrator. The value 鈥榠nvalid鈥 is not valid for the 鈥榥msgender鈥 enumeration of the 鈥楡gender鈥 field
500 -An error has occurred - please contact your administrator.

Profile - Timezone

With Campaign Standard, timezone is displayed as part of the JSON response of profileAndServices/profile REST API calls.

With Campaign v8, timezone is only shown to user as part of profileAndServicesExt/profile REST API calls. It is not part of profileAndServices/profile REST API calls since it is being added in an extended schema.

Workflows - External Signal triggering

Campaign Standard Workflow GET API returns parameter names such as the workflow instance variables and their data types (boolean, string, etc.). This is used to create appropriately formatted JSON request body when triggering the signal via a POST API call.

Campaign v8 does not support advertising workflow instance variables, but expects developers to know what those are. As such, post-migration, parameters information in POST request body will need to be constructed without the availability of parameters information in GET API response.

recommendation-more-help
7167b251-0f24-48cd-a4e0-234fe2acbdea