Use of this API requires a partner API Key. To obtain such a key, contact your Booxi representative.
Prior to use, consult Booxi's API fair use policy.
Also, your partner API key and webhook endpoint must have been configured/authorized for a module in order to access its linked data.
Remember that the URL at which you access the API depends on your hosting region. This article presents examples from a North American hosting only.
API documentation links:
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. 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; however, these criteria 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 |
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 |
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 |
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.