In this page, you will learn how to connect Campaign Classic to Microsoft Dynamics CRM 365.
Possible deployments are:
Data synchronization is carried out via a dedicated workflow activity. Learn more.
To connect Microsoft Dynamics 365 to work with Adobe Campaign via Web API, you need to apply the following steps:
In Microsoft Dynamics CRM:
In Campaign Classic:
When connecting Adobe Campaign with Microsoft Dynamics, you cannot:
To generate the access token and keys to setup the account, you need to login to Microsoft Azure Directory using a Global administrator credentials. Then follow the steps outlined below.
To get the Client ID, you need to register an App in Azure Active Directory. Client ID is the same as Application ID.
http://localhostfor Sign-on URL.
Once you save, you get an Application ID which is the Client Identifier for Campaign.
Learn more in this page.
The client secret is the key which is unique to the Client ID. To get the certificate key identifier, follow the steps below:
Navigate to Azure Active Directory > App Registrations and select the Application which was created earlier.
Click on Certificates and Secret.
Click on Upload certificate and then browse and upload your public certificate generated.
To generate the certificate you can use openssl.
- openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout '<'private key name'>' -out '<'public certificate name'>
Click on the manifest link to get the certificate key identifier and the key ID.
You need to configure the Required Permissions for the app that was created.
The App user is the user that the application registered above will use. Any changes made to Microsoft Dynamics using the App registered above will be done via this user.
Step 1: Create a non-interactive user on azure active directory
Step 2: Assign a proper license to the created user
Step 3: Create an application user on Dynamics CRM
From Microsoft Azure, navigate to Settings > Security > Users.
Click on drop down, select Application users and click New.
Use the same username as the user created on active directory above
Using the same name throws duplicate key error, so until we get a confirmation as whether this step is needed, use a different username and proceed.
Assign the Application ID for the application you created earlier.
Click on Manage Roles and choose the System administrator role to the user.
To connect Microsoft Dynamics 365 and Campaign, you need to create and configure a dedicated External Account in Campaign.
Navigate to Administration > Platform > External accounts.
Create a new external account, select the type Microsoft Dynamics CRM and the Enable option.
Select the Web API deployment type:
Adobe Campaign Classic supports the Dynamics 365 REST interface with OAuth protocol for authentication with a Certificate or Password Credentials.
Use the settings defined previously in Azure Directory to configure the external account.
Microsoft Dynamics CRM External account configuration is detailed in this section.
Click the Microsoft CRM configuration wizard… link: Adobe Campaign automatically detects the tables from the Microsoft Dynamics data template.
Select the tables to be recovered.
Click Next to start creating the corresponding schema.
To approve the configuration, you must disconnect/reconnect to the Adobe Campaign console.
You can check that the matching data schema becomes available in Adobe Campaign.
Click the Synchronizing enumerations… link to start synchronizing enumerations between Adobe Campaign and Microsoft Dynamics.
Campaign and Microsoft Dynamics are now connected. You can set up data synchronization between the two systems. Learn more in the Data synchronization section.
Watch this video to learn how to integrate Dynamics 365 with Adobe Campaign Classic, in the context of an Office 365 deployment.
For Microsoft Dynamics 365 supported/unsupported attribute types are listed below:
|Basic types : boolean, datetime, decimal, float, double, integer, bigint , string||Yes|
|Money (as double)||Yes|
|memo, entityname , primarykey, uniqueidentifier (as strings)||Yes|
|Status, picklist (we store the possible values in enumerations), state (string)||Yes|
|owner (as string)||Yes|
|Lookup (only single entity reference lookups)||Yes|