Configuring a third-party CMS for integration with Unica Content Integration

You can configure a third-party CMS for integration with Unica Content Integration. When you create partitions in Unica Centralized Offer Management, an entry for Content Integration resides in each partition. For example, if Unica Centralized Offer Management has three partitions, you can configure Content Integration for all the partitions of Unica Centralized Offer Management.

About this task

To create partitions in Unica Centralized Offer Management, see the Unica Centralized Offer Management Installation Guide.

To configure a third-party CMS for integration with Unica Content Integration, complete the following steps:

Procedure

  1. Select Settings > Configuration.
    The Configuration page appears.
  2. From the Configuration categories panel, select Offer > partitions > partition <n> > Content Integration > Data Sources > (System Configuration Template).
    • Offer - The name provided to Unica Centralized Offer Management application.
    • partition <n> - Here <n> represents the number of partitions. For example, if Unica Centralized Offer Management has two partitions, then partition <n> can be partition 1 or partition 2.
    The Create category from template page for (System Configuration Template) appears.
  3. Provide values for the following fields:
    • New category name - An appropriate name to identify the CMS that you want to configure. For example, HCL DX or Adobe Experience Manager.
      Note: From 12.1.1 onwards, the New category name value will be used for identifying the CMS in all applicable Unica products, like Centralized Offer Management, Plan, and Deliver. Earlier, the value of the System Identifier parameter was used.
    • System Identifier - A predefined system identifier. Each system is assigned a unique identifier in Unica Content Integration. System identifiers are case sensitive and must match with the one stipulated for the respective system.
      Note: The System Identifier name must match the systemId used in the respective Content Integration plugin. For more information on systemID, see Unica Content Integration Developer's Guide.
    • User credentials - Specify the user credential selection strategy for the target system. The available options are:
      • Default user - If you select Default user, the data source for Default user for credential account is used while calling APIs of the target CMS.
      • Logged-in user - If you select Logged-in user, the data source of Unica's signed-in user account is used while calling APIs of the target CMS.
      • Hierarchical - If you select Hierarchical, the data source of Unica's signed-in user account is considered first. If the Unica's signed-in user account does not contain a data source, the Default user for credential will be considered.
    • Default user for credential - The default Marketing Platform user having the target CMS credentials. The system uses this configuration when:
      • the User Credential strategy is the Default User.
      • the User Credential strategy is Hierarchical, but the logged-in user does not have the datasource associated. In such a case, the default user will be considered for credential selections.
    • Data source name for credentials - The data source assigned to the Marketing Platform account. This data source authenticates the target system's REST API, database, etc.
    • Anonymous Content Access - Select Yes if the target system accepts anonymous access to content or select No if the target system does not accept anonymous access to content.
      Note:
      • Content Integration framework works with the protected APIs of the target CMS system. However, in this release, the target CMS should be configured for allowing anonymous guest user access to the content URLs.
    • Additional parameters - From version 12.1.0.4 onwards, additional key-value parameters can be specified as per the requirement by each individual system. It can be left blank if no such parameters are required by the respective system.

      Each key-value pair must be specified on separate line. Key and value must be separated by a colon, followed by a space. For example:

      key1: value1
      key2: value2
    Note: If you have not provided credentials for the target system, or if the provided credentials are incorrect, the target system will decline the connection request. Before saving the changes, ensure that you have provided the credentials and that they are accurate.
  4. Click Save changes.
    A new entry, for example <CMSName>, appears under Data sources for the configured CMS. Expand the entry to see the following entries:
    • <CMSName> | HTTP Gateway - contains a configuration.
    • <CMSName> | HTTP Gateway | REST - contains a configuration.
    • <CMSName> | QOS - does not contain configurations.
    • <CMSName> | QOS | Retry Policy - contains configurations.
  5. To configure HTTP Gateway, complete the following steps:
    1. In the Configuration properties pane, expand <CMSName> and select HTTP Gateway.
      The Settings for 'HTTP Gateway' page appears.
    2. Select Edit settings.
      The (HTTP Gateway) Edit Settings page appears.
    3. For the Base URL field, specify the base location of the target system. Example: http://<hostname>:<port-number>.
    4. The Bypass proxy field is available from version 12.1.0.4, select Yes if you want to bypass proxy while connecting to the respective system. By default the value of this field is set to No, which means if the proxy server is configured, all the connections made to respective system will go through the proxy.
    5. The Content Base URL field is available from version 12.1.0.4, leave it blank if the content is hosted under the same base URL where the respective system is running.
    6. Click Save changes.
  6. To configure HTTP Gateway | REST, complete the following steps:
    1. In the Configuration properties pane, expand HTTP Gateway and select REST.
      The Settings for 'REST' page appears.
    2. Select Edit settings.
      The (REST) Edit Settings page appears.
    3. For the Authentication Type field, select from one of the following values:
      • Basic

        Select Basic if the target system’s API needs HTTP Basic Authentication. Credentials need to be set up accordingly under user’s data source.

      • Bearer Token

        Select Bearer Token if target system’s API needs Bearer token authentication. (Bearer token must be configured in the password field of the desired user datasource. Username set up in datasource is ignored for this authentication type.)

      • Unica Token

        The Unica Token option can be used if target system belongs to the Unica Product Suite. The Unica Token adds the necessary API token request headers during HTTP invocation. (User datasource assignment is not required for this authentication type since tokens are system generated.)

      • None

        Select None, if the target system APIs are not protected by authentication, or if the target system uses authentication mechanism other than the supported ones and authentication is completely handled by the plugin implementation.

    4. Click Save changes.
  7. To configure QOS | Retry Policy, complete the following steps:
    1. In the Configuration properties pane, expand QOS and select Retry Policy.
      The Settings for 'Retry Policy' page appears.
    2. Select Edit settings.
      The (Retry Policy) Edit Settings page appears.
    3. Provide values for the following fields:
      • Retry count

        Specify the number of times Content Integration should attempt to access target system.

      • Initial delay

        Specify the number of milliseconds to wait before making next attempt after failed access.

      • Delay multiplier

        Specify if the delay interval between subsequent attempts should be multiplied. Set this to 1 to keep a consistent delay between each attempt. Setting this value to greater than 1 increases the delay interval between each subsequent attempt. Similarly, setting this value to less than 1 decreases delay interval between subsequent attempts.

      Example

      If you provide the following values:
      • Retry count - 3
      • Initial delay - 1000
      • Delay multiplier - 1.2

      The first attempt will be made immediately to access the target system. If the first attempt fails, Content Integration will wait for 1000 ms (1 second) before making the second attempt. And if the second attempt also fails, Content Integration will wait for 1000 * 1.2 milliseconds (1.2 seconds) before making the third attempt. And if the third attempt also fails, Content Integration will stop making any further attempt and terminate the operation.

      Note:

      The Content Integration framework understands the settings explained earlier and automatically takes care of authentication, QOS, and other settings when the respective plugin is implemented using RESTful approach. For more information on RESTful approach, see the Unica Content Integration Developer's Guide.

      The earlier mentioned properties can still be used for non-RESTful implementations. The Plugin developer can access all the settings programmatically and use them for plugin implementation. For example, you can use Base URL to configure any URL, or location, as per the target system type. This allows you to specify jdbc:oracle:thin:@localhost:1521:xe as the Base URL, if the target system is a database and it is used inside the respective Content Integration plugin, when attempting a database connection.

    4. Click Save changes.

What to do next

Note:

Webhook Security

Any invocation to Content Integration Framework's Webhooks from external systems are protected by means of API security filters in Unica Platform. In addition to Unica's API security filters, certain environments, such as IBM Security Verify Access (formerly known as IBM Security Access Manager) provide their own security measures for application access. Hence, to enable Webhook invocation from external systems running outside the realm of IBM Security Verify Access, appropriate permissions must be set up for respective Webhook URL.