Skip to main content

Send booking email from another system

When using Bambuser's native booking solution, you have two options to send email notifications to customers

1: Let Bambuser send booking emails

If you let Bambuser to send booking emails, the setup is quite simple. However, there is a limitation in terms of how much you can customize the email templates as well as from what domain the email gets sent (will always be bookings@bambuser.net).

2: Send booking email from another system

With this option, you have the full control on how your those emails are structured. This is achieved by a webhook sent from our side to your backend to pass appointment data. It's then up to you to compose an email with your branding and sender's address. The article below explains how the setup works.

Requirements

Endpoint - You will need to setup and provide us with an URL to which we will push the webhook with appointment data to.

Setup

Set up your endpoint

Example:

  • URL: https://your-company-api.com/webhooks/bambuserAppointments
  • Headers: Authorization: Bearer APIKEYFORBAMBUSERTOACCESSYOURAPI

Subscribe to Appoinments webhook

Follow below steps to subscribe to Appoinments webhook. The webhook payload contains all needed information to compose your own emails.

  1. Loging to your BamHub
  2. Navigate to Settings -> Integrations -> Webhook
  3. Click "Add New Webhook" button on the top right
  4. Select "appointment" topic and add your name and URL of your endpoint

Example response:

Note that action can be any of the following:

  • confirmation
  • cancellation
  • rescheduled
{
"action": "confirmation",
"collection": "appointment",
"payload": {
"appointment": {
"serviceName": "Virtual Consultation",
"confirmationNumber": "RSVSS14900651",
"addToCalendarUrl": "",
"startDateTime": "2023-05-08T15:00:00+02:00",
"endDateTime": "2023-05-08T15:45:00+02:00"
},
"agent": {
"email": "Joe.doe@example.com",
"name": "Joe",
"dashboardUrl": "https://lcx.bambuser.com/YOUR_ORG_ID/one-to-one/call-bookings",
"meetingUrl": "https://lcx.bambuser.com/YOUR_ORG_ID/one-to-one/agent-tool?connectId=huTHJpoM2kBdvr0bBQRh",
"meetingDateTime": "Monday, May 8, 2023 at 3:00:00 PM GMT+2",
"addToGoogleCalendarUrl": "https://google.com/calendar/event?action=TEMPLATE&eid=RSVSS32821651&text=Virtual+Consultation&dates=20230508T150000Z%2F20230508T154500Z&details=https%3A%2F%2Flcx.bambuser.com%2FYOUR_ORG_ID%2Fone-to-one%2Fcall-bookings&location=https%3A%2F%2Flcx.bambuser.com%2FYOUR_ORG_ID%2Fone-to-one%2Fcall-bookings&trp=true",
"locale": "en-US"
},
"shopper": {
"email": "anders.svensson@example.com",
"firstName": "Anders",
"lastName": "Svensson",
"meetingUrl": "https://example.com?bambuserConnectId=abc12",
"meetingDateTime": "måndag 8 maj 2023 15:00:00 CEST",
"addToGoogleCalendarUrl": "https://google.com/calendar/event?action=TEMPLATE&eid=RSVSS32821651&text=Virtual+Consultation&dates=20230508T150000Z%2F20230508T154500Z&details=https%3A%2F%2Fexample.com%3FbambuserConnectId%3Dabc123&location=https%3A%2F%2Fexample.com%3FbambuserConnectId%3Dabc123&trp=true",
"locale": "sv-SE"
}
},
"eventId": "81aada7b807ec0625e2d94a9f1d68cd9b5b3cbc4"
}