The following article presents different ways to retrieve client records using the Booxi API.
Please take note that this implementation requires a partner API Key. If you haven’t been provided with such a key, please contact your Booxi representative.
Furthermore, your partner API key and webhook endpoint must have been configured/authorized for a module in order to access its linked data.
Be reminded that the URL you should use depends on your hosting region.
North America | Europe |
api.booxi.com | api.booxi.eu |
Client Records
Client records can be retrieved using their unique Booxi clientId, their contact information (name, phone or email) or from an external ID defined in the client module. Take note that each method uses a different endpoint.
When searching for a client record using its external ID, the search will be performed in all merchants authorized by the partner API key, with or without a shared clientele as long as they use the same client module.
Limitations
- If your query results in too many records, only the first matching clients will be returned.
- Query can be performed by using an externalId, clientId or contact information but these criterias cannot be mixed.
Retrieving Client Records From an External ID
To retrieve client records from an external ID, use the merchant API GET /client/ by providing the moduleID to look into (the client module ID) and the client externalId to search for.
Request URL for North America
https://api.booxi.com/booking/v1/client?moduleId="YOUR_MODULE_ID"&externalId="CUSTOMER_ID"
cURL
curl -X GET
"https://api.booxi.com/booking/v1/client/?moduleId="YOUR_MODULE_ID"&externalId="CLIENT_ID"
-H "accept: application/json"
-H "Booxi-PartnerKey: YOUR_PARTNER_KEY"
GET /client swagger information can be found at the following links:
For North America | For Europe |
GET /client | GET /client |
Retrieving a Client’s Record From its Client ID
To retrieve the client’s record, use the merchant API GET /client/{clientId} by providing a Booxi clientId.
Request URL for North America
https://api.booxi.com/booking/v1/client/{clientId}
cURL
curl -X GET
"https://api.booxi.com/booking/v1/client/{clientId}"
-H "accept: application/json"
-H "Booxi-PartnerKey: YOUR_PARTNER_KEY"
GET /client/{clientId} swagger information can be found at the following links:
For North America | For Europe |
GET /client/{clientId} | GET /client/{clientId} |
Retrieving a Client’s Record From its Contact Info
To retrieve the client’s record from its contact information, use the merchant API GET /client by using one of the following parameters:
By Name
To search by name, you must provide a valid merchant ID and the client’s first and last name. The client must belong to the merchant or be part of a shared clientele associated with the merchant you are searching for.
Request URL for North America
https://api.booxi.com/booking/v1/client?merchantId=YOUR_ID&firstName=FIRST&lastName=LAST
cURL
curl -X GET
"https://api.booxi.com/booking/v1/client?merchantId=YOUR_ID&firstName=FIRST%lastName=LAST"
-H "accept: application/json"
-H "Booxi-PartnerKey: YOUR_PARTNER_KEY"
By Phone Number
To search by phone number, you must provide a valid merchant ID and the client’s phone number. The client must belong to the merchant or be part of a shared clientele associated with the merchant you are searching for.
Request URL for North America
https://api.booxi.com/booking/v1/client?merchantId=YOUR_ID&phoneNumber=PHONE_NUMBER
cURL
curl -X GET
"https://api.booxi.com/booking/v1/client?merchantId=YOUR_ID&phoneNumber=PHONE_NUMBER"
-H "accept: application/json"
-H "Booxi-PartnerKey: YOUR_PARTNER_KEY"
By eMail Address
To search by email address, you must provide a valid merchant ID and the client’s email address. The client must belong to the merchant or be part of a shared clientele associated with the merchant you are searching for.
Request URL for North America
https://api.booxi.com/booking/v1/client?merchantId=YOUR_ID&email=EMAIL
cURL
curl -X GET
"https://api.booxi.com/booking/v1/client?merchantId=YOUR_ID&email=EMAIL"
-H "accept: application/json"
-H "Booxi-PartnerKey: YOUR_PARTNER_KEY"
GET /client/ swagger information can be found at the following links:
For North America | For Europe |
GET /client/ | GET /client/ |
Use Cases
Link Booxi Clients with Customers from your eCom or CRM Platform
- Using the GET /client/{clientId}/moduleLink/{moduleId} endpoint, check if the externalId associated with a client in Booxi corresponds to a customer ID in your database.
- If the externalID cannot be matched, create a new customer in your eCom or CRM platform and use the PUT /client/{clientId}/moduleLink/{moduleId} endpoint to update the client module link by assigning its externalId and custom metadata.
- When a new booking is captured, validate that the client can be found in your eCom or CRM platform, if not, once again create a new customer and update the client in Booxi using the API.
Limitations
- The authentication method requires a secure environment.
- The endpoint must not be exposed on a webpage but rather server side.
References
For more information about Booxi APIs and their usage, please refer to the following links:
Europe: https://api.booxi.eu/doc/booking.html
Americas: https://api.booxi.com/doc/booking.html
Where to find API keys:
- Your Merchant API key can be found in the back office, section My Business / Details.
- Your Partner API key must be requested to your Booxi Account Manager. The Partner API key must only be used in server-side (backend) code to keep it a secret.