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.
This integration is supported for both SMB & Enterprise businesses.
NOTE: If there is an enterprise business to be set up and there are unique sign-in required for every location, such integration should be set up as an SMB i.e an integration group should be created for every location.
Integrating Birdeye with Booker
User Manual - SUPPORT ARTICLE
Booker is an online booking software built for small businesses in the spa and salon industry. The Booker CRM software helps users with customer management, bookings, payments, and marketing. Birdeye can seamlessly integrate with your Booker account and help you automate the review solicitation process. Once Birdeye is integrated with Booker, Birdeye will fetch customer information from Booker.
Birdeye collects the first name, last name, email address and phone number of the clients and automatically sends them review requests based on the preferences set within the Birdeye account.
Table of Contents
Triggers Supported
Information required from the Business
Information from Birdeye dashboard
Fetch the Location ID from Booker account
Finding the Appointment Status List for the trigger
Login
Manage Triggers
Manage Properties
Manage Locations
Integration Requirements
Triggers Supported
Birdeye allows you to fetch data from your CRM using a predefined trigger. Here is the supported trigger for Booker:
Trigger Display Name | Trigger Name/Value | Trigger Description |
Booker Appointments Trigger | Appointment | This trigger is used to fetch customer data based on the appointment status of the appointments. |
Details required from the Booker dashboard
Trigger details
Booker Location ID
Details required from the Birdeye dashboard
Business ID in case of an SMB or Enterprise Business
Information from Birdeye Dashboard
For single location SMB account - Business ID
Login to your Birdeye account, go to Left Navigation Rail and click on ‘Settings’. Once the new page appears, click on ‘Integrations’ and select ‘API.’
You will find the ‘Business ID’ and ‘API key’ shown in the image.
For multi-location accounts - Enterprise ID and Business IDs of all locations
Enterprise ID
Business IDs of all locations
Login to your Birdeye account, go to Left Navigation Rail and click on ‘Settings’. Once the new page appears, click on ‘Profile’ and select ‘Business Profiles.’
To view Location ID, hover over the ‘Status’ of location.
Fetch the Location ID from the Booker account
Log in to your Booker account and click on the 'System Settings' tab on the top panel.
On the next screen, You can find the location ID under the ‘Location Info’ section.
Finding the Appointment Status List for the trigger
Log in to your Booker account, and on the bottom left of the panel, click on the ‘Key’ icon.
On the next screen, you will find a list of different customized appointment statuses, out of which you will have to choose those statuses for which you want to send review requests. For e.g. paid, paid/complete.
Integration Process
Before you can integrate Booker with Birdeye, you will need to set up the following configurations on the integrations support dashboard:
To set up native integration, we have an integration support dashboard, where we need to set up the integration and then follow these steps to complete the configuration.
Login
After successful login in the integration dashboard, you have to click on ‘BE integration’ and then click on ‘Add Integration’.
Search for the CRM in the search bar and select it. Click on ‘Next’.
Manage Triggers
The trigger is automatically selected as only one trigger is supported.
Note: To fetch information for all the triggers available using curl commands, use this command. To replace triggers, use this curl command.
Manage Properties
Here; you can manage group-level properties, which will be applied to all locations under a CRM.
Appointment status: Enter the comma-separated string of status for which the business wants to send review requests to the respective patients.
Note: This step will create a group for our integration. Alternatively, you can do it via curl commands.
For SMB accounts, you can access the curl command.
For Enterprise accounts, you can access the curl command.
Manage Locations
For Single Location/Multi-Location Accounts, select the drop-down and click on ‘Add.’
(In the case of Single Location accounts, it will give you only one option).
A drawer will appear on the right-hand side.
The Status, Frequency and Next RunTime will be set by default. You can make changes if required.
Status: It shows the integration status (Active or inactive).
Frequency: It is the number of times integration will sync with CRM (Days or Hours).
Next RunTime: It is the next scheduled time when the integrations will run.
Location ID: The client will provide the location ID during the initial setup.
Override Group Properties: With this, you can override the Customer Fetch Delay property added at the group level, specific to each location.
Click on ‘Next’ and click on ‘Save.’
Note:
For SMB: You can use ‘manage the locations’ using this curl command.
For Enterprise: You can use ‘manage the locations’ using this curl command.
Complete Integration within the Birdeye account
The rest of the setup should be completed within the business’ Birdeye account:
To complete the process, click on the 'Settings' tab located on the left navigation rail of your Birdeye dashboard. Click on the ‘Business Profile’ under the ‘Profile’ section.
Click on the specific location for which you have set up the integration.
Once you click on the particular location, it will redirect you to that location. Now, scroll down to the ‘CRM Integrations’, and click on the ‘Authorize Booker’ button to authorize the business.
You will be redirected to Booker’s sign-in page. Enter the ‘Account name’ of the business and click on the ‘Continue’ button.
On the next screen, you can log in using your account credentials.
Now, click the ‘Yes, Allow’ button to grant Birdeye access to your account.
You will be redirected to the Birdeye account. You will be able to see an ‘Authorized’ status next to ‘Booker’ under the ‘CRM integrations’ header.
Curl Commands
Before you can integrate Booker with Birdeye, you will need to set up the following configurations:
A business integration group is a configuration that supports the business hierarchy of individual businesses on the Birdeye platform. The common properties 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 you will need to run to set this up.
NOTE: In case of an enterprise business to be set up, if there are unique sign-in required for every location, such integration should be set up as an SMB, i.e. an integration group should be created for every location.
Create Integration Group (Curl Command)
Copy this Curl Command
curl-X PUT \
https://common-services.Birdeye.com/integration/add/businessintegrationgroup \
-H 'content-type: application/json' \
-d '{
"parentBusinessNumber": 152830732970740,
"integrationSourceId": 52,
"integrationGroupProperties": [
{
"propertyKey": "appointment.status",
"propertyValue": "Completed"
}
],
"integrationGroupTriggers": [
{
"triggerId": 73,
"triggerTypeId": 1
}
]
}'152830732970740 - Business ID - This is Enterprise ID for a multi-location account and Business ID for a single location SMB account
Completed - Appointment status - This is the comma-separated string of status for which the business wants to send review requests to the respective patients.
73 - Integration Trigger ID - This 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 Booker. Identify the trigger ID (s) and insert (use commas) in case of multiple trigger Ids.
Fetch information for all the triggers available for Booker (Curl Command)
Copy this Curl Command
curl -X GET https://common-services.Birdeye.com/integration/trigger/integrationtriggers/sourceid/52 -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 ID. This trigger ID will be utilized while creating the integration group. Integration can have one or more triggers. To use more than one trigger, enter comma-separated values while creating the integration group.
[
{
"id": 73,
"triggerService": "bookerAppointmentsTriggerService",
"displayName": "Booker Appointments Trigger",
"description": "This trigger is used to fetch customer data based on the appointment status of the appointments.",
"active": true,
"integrationTriggerType": {
"id": 1,
"name": "JOB"
},
"caseCreationTriggerType": {
"id": 1,
"name": "JOB"
},
"actionGroupId": 1
}
]73 - Trigger ID
Find business integration group details (Curl Command)
Copy this Curl Command
curl -X GET https://common-services.Birdeye.com/integration/businessintegrationgroup/152830732970740 -H 'Cache-Control: no-cache'
152830732970740 - Business ID: Enter the Business ID here to get the integration group details for a business.
Sample:
[ {
"groupId": 5908,
"integrationSourceType": {
"id": 52,
"integrationSource": "BOOKER",
"sourceCategory": "Spa",
"integrationType": "Birdeye API",
"integrationPlan": "Basic",
"oauthEnabled": true
},
"integrationGroupTriggers": [
{
"triggerId": 73,
"triggerTypeId": 1,
"actionIds": [
1
]
}
]
}
]5908 - Group ID: A group ID will be returned in the sample response with the details of the existing triggers for a business.
Trigger Information: Only required if client wants a change (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": 5908,"integrationGroupTriggers":[{"triggerId":73,"triggerTypeId":1}]}'replaceTriggers=true - To replace existing trigger(s), enter the value for replaceTriggers as true. To add a new trigger(s) to the existing list, the value for replaceTriggers should be false.
5908 - Group ID: The Group ID which was returned in the previous step will be entered here.
73 - Trigger ID: Enter the Trigger ID (s) which need to be added or updated to the integration.
Integration Mapping
Once the Integration Group is created, the next step is to create the Integration Mapping.
Copy this Curl Command
curl -X PUT \https://common-services.Birdeye.com/integration/add/businessintegrationmapping \
-H 'content-type: application/json' \
-d'{"businessNumber": 152830732970740,"integrationGroupId": 5908,"active": true,"integrationProperties": [{"propertyKey": "location.id","propertyValue": "39646"}]}'152830732970740 - Business ID: Enter the Business ID for the SMB Business.
5908 - Group ID: Enter the Group ID, which was returned when the Integration group was created.
39646 - Location ID - This is the location ID provided by the client during the initial setup.
Restriction Reason
Restriction reason is used to identify the contacts who 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 Booker are:
Appointment status is not on the allowed list
The customer is inactive.
Either Phone or Email should be valid for the creation of a customer. Email: null, Phone: null.
Integration is beta.
Description
Appointment status is not on the allowed list
The customer is inactive.
Either Phone or Email should be valid for the creation of a customer. Email: null, Phone: null.
Integration is beta.
Troubleshooting Steps
Appointment status is not on the allowed list.
Provide the Appointment status in the allowed list for which you want to send the review request.The customer is inactive.
Check whether the customer is active or not.Either Phone or Email should be valid for the creation of a customer. Email: null, Phone: null.
Check the email address and phone number.Integration is beta.
Please look up the key beta in kibana to know whether the integration is beta or not.























