*This integration is supported for both SMB and Enterprise businesses.
The information contained in this document is confidential, privileged, and only for the use of internal Birdeye users. This document may not be used, published or redistributed.
Integrating BirdEye with CDK Global
User Manual
Table of Contents
Introduction
Integration setup requirement
Trigger Supported
Information from CDK Global dashboard
Information from BirdEye dashboard
Integration Process
Business Integration Group
Create Integration Group (Curl Command)
Fetch information for all the triggers (Curl Command)
Update Trigger Information (Curl Command)
Find business integration group details (Curl Command)
Integration Mapping
Integration Mapping
Introduction
CDK Global is a dealership management software used by automotive, heavy truck, agriculture, construction, powersports, marine and RV dealerships. Integrating CDK Global with BirdEye will automate the process of sending out review requests to customers on a daily basis.
Once CDK Global is integrated with BirdEye, BirdEye will pull customer information from CDK Global from the sales and service files. BirdEye collects the first name, last name, email address and phone number of your customers and automatically sends them review requests based on the preferences set within the BirdEye account.
Integration Setup Requirement:
Trigger supported
BirdEye allows you to fetch data from your CRM using some predefined triggers. You can choose any combination from the list of available triggers and inform the support team about your selection. Here are the supported triggers for CDK Global:
Trigger Name | Trigger Description |
CDK FISales Closed Extract Trigger Service | This trigger is used to fetch recently closed sales data. |
CDK ServiceRO Details Closed Extract Trigger Service | This trigger is used to fetch recently Closed Repair Order data. |
Integration Process with CDK Global
To initiate this integration, the client must log in to their dealer’s eStore portal and complete the dealership authorization process using the following steps.
After the dealership authorization is completed, BirdEye will receive the order for integration. To complete the integration, you need to approve the vendor using the following steps.
Details required from the client
Trigger details
Dealer ID
Details required from the BirdEye dashboard
Business ID
Information from BirdEye Dashboard
For single location SMB account - Business ID
For multi-location account - Enterprise ID and Business IDs of all locations
Enterprise ID
Business IDs of all locations
Integration process
Before you integrate CDK Global with BirdEye, you will need to set up the following configurations:
1. Business Integration Group:
A business integration group is a configuration that supports the business hierarchy of individual businesses on the BirdEye platform. The properties that are common for all business integrations are entered at the group level. Setting up a business integration group allows you to associate multiple business locations with the Enterprise account. Below is the list of curl commands that you will need to run to set this up.
a) Create Integration Group (Curl Command)
Copy this Curl Command
curl -X PUT \
http://common-services.birdeye.com/integration/add/businessintegrationgroup \
-H 'cache-control: no-cache' \
-H 'content-type: application/json' \
-d '{
"parentBusinessNumber": 151980725935863,
"integrationSourceId": 61,
"integrationGroupTriggers": [
{
"triggerId": 72,
"triggerTypeId": 1
},
{
"triggerId": 73,
"triggerTypeId": 1
}
]
}'151980725935863 - Business ID: This is Enterprise Id for multi-location account and Business Id for a single location SMB account
72, 73 - Integration Trigger ID: Can be one or more triggers. Ask the client what trigger they would like to integrate with then run the curl command to fetch all possible triggers for CDK Global. Identify the trigger ID (s) and insert (use commas) in case of multiple trigger Ids.
b) Fetch information for all the triggers available for CDK Global (Curl Command)
Copy this Curl Command
curl -X GET https://common-services.birdeye.com/integration/trigger/integrationtriggers/sourceid/61 -H 'cache-control: no-cache' -H 'content-type: application/json'
Sample response: A sample response like this would appear after you run the curl command. The response will have the trigger name, description and the ID. This trigger Id will be utilized while creating the integration group. An integration can have one or more triggers. To use more than one trigger, enter comma separated values while creating the integration group.
[
{
"id": 72,
"triggerService": "cdkFISalesClosedExtractTriggerService",
"displayName": "CDK FI Sales recently Closed Extract Trigger Service",
"description": "This trigger is used to fetch recently closed sales data.",
"active": true,
"integrationTriggerType": {
"id": 1,
"name": "JOB"
},
"caseCreationTriggerType": {
"id": 1,
"name": "JOB"
},
"actionGroupId": 1
},
{
"id": 73,
"triggerService": "cdkServiceRODetailsClosedExtractTriggerService",
"displayName": "CDK Service RO Details Closed Extract Trigger Service",
"description": "This trigger is used to fetch Closed Repair Order data.",
"active": true,
"integrationTriggerType": {
"id": 1,
"name": "JOB"
},
"caseCreationTriggerType": {
"id": 1,
"name": "JOB"
},
"actionGroupId": 1
}
]72, 73 - Trigger ID
c) Update Trigger Information (Curl Command)
Copy this Curl Command
curl -X POST 'https://common-services.birdeye.com/integration/update/businessintegrationgroup?replaceTriggers=true' -H 'cache-control: no-cache' -H 'content-type: application/json' -d '{ "groupId": 14,"integrationGroupTriggers":[{"triggerId":72,"triggerTypeId":1}]}'replaceTriggers=true - To replace existing trigger(s), enter the value for replaceTriggers as To add new trigger(s) to the existing list, the value for replaceTriggers should be false
14 - The Group ID that was returned in the previous step will be entered here.
72 - Enter the Trigger ID (s) which need to be added or updated to the integration.
d) Find business integration group details (Curl Command)
Copy this Curl Command
curl -X GET https://common-services.birdeye.com/integration/businessintegrationgroup/151980725935863 -H 'Cache-Control: no-cache'
151980725935863 - Business ID: Enter the Business ID here to get the integration group details for a business.
[
{
"groupId": 14,
"integrationSourceType": {
"id": 61,
"integrationSource": “CDK”,
"sourceCategory": "Automotive",
"integrationType": "Birdeye API",
"integrationPlan": "Basic",
"oauthEnabled": false
},
"integrationGroupTriggers": [
{
"triggerId": 72,
"triggerTypeId": 1,
"actionIds": [
1
]
},
{
"triggerId": 73,
"triggerTypeId": 1,
"actionIds": [
1
]
}
]
}]14 - Group ID: A group ID will be returned in the sample response with the details of the existing triggers for a business.
2. Integration Mapping:
Once the Integration Group is created, the next step is to create the Integration Mapping.
Copy this Curl Command
curl -X PUT \http://common-services.birdeye.com/integration/add/businessintegrationmapping \
-H 'cache-control: no-cache' \
-H 'content-type: application/json' \
-d '{
"businessNumber": 151980725935863,
"integrationGroupId" : 14,
"active": true,
"integrationProperties": [
{
"propertyKey": "dealer.id",
"propertyValue": "76208069"
}
]
}'151980725935863 - Business Number: Enter the Business number here
14 - Group ID: Enter the Integration Group ID which was returned when the Integration group was created.
76208069 - CDK Dealer ID: The CDK Dealer ID corresponding to BirdEye location are shared by CDK Global in the email after the business signs the agreement.
Campaigns Tags
Campaign tags are used to set up campaigns within the BirdEye dashboard. These tags are either provided by the client or can be fetched from Kibana for already checkedIn contacts.
NextGen Campaign tags are:
make,makeDesc
Re-Authorise Business
Sometimes it happens the credentials entered were wrong during setup or are expired so we receive 401 Unauthorized Error while running the Integration and as a result Integration will be marked unauthorized. It will not run until the credentials are corrected and the business is authorized again which involves the steps as given in the below document.
Restriction Reason
Restriction reason is used to identify the contacts which have been opted-out(restricted) from sending a review request. This reason can be fetched from Kibana for contacts that are checked-in already.
Possible restriction reasons for CDK Global are:
Integration is beta
Description
The integration setup is currently set to beta.




