Show / Hide Table of Contents

Bookings.Manage.All

Allows an app to read, write and manage bookings appointments, businesses, customers, services, and staff on behalf of the signed-in user.

Graph Methods

Type: A = Application Permission, D = Delegate Permission

Ver Type Method
V1 D DELETE /bookingBusinesses/{bookingBusinessesId}/customQuestions/{bookingCustomQuestionId}
V1 D DELETE /bookingBusinesses/{id}
V1 D DELETE /bookingBusinesses/{id}/appointments/{id}
V1 D DELETE /bookingBusinesses/{id}/customers/{id}
V1 D DELETE /bookingBusinesses/{id}/services/{id}
V1 D DELETE /bookingBusinesses/{id}/staffMembers/{id}
V1 D DELETE /solutions/bookingBusinesses/{bookingBusinessesId}/customQuestions/{bookingCustomQuestionId}
V1 D DELETE /solutions/bookingBusinesses/{id}
V1 D DELETE /solutions/bookingBusinesses/{id}/appointments/{id}
V1 D DELETE /solutions/bookingBusinesses/{id}/customers/{id}
V1 D DELETE /solutions/bookingBusinesses/{id}/services/{id}
V1 D DELETE /solutions/bookingBusinesses/{id}/staffMembers/{id}
V1 D GET /bookingBusinesses
V1 D GET /bookingBusinesses/{bookingBusinessesId}/customQuestions
V1 D GET /bookingBusinesses/{bookingBusinessesId}/customQuestions/{bookingCustomQuestionId}
V1 D GET /bookingBusinesses/{id}
V1 D GET /bookingBusinesses/{id}/appointments
V1 D GET /bookingBusinesses/{id}/appointments/{id}
V1 D GET /bookingBusinesses/{id}/calendarView?start={start-value}&end={end-value}
V1 D GET /bookingBusinesses/{id}/customers
V1 D GET /bookingBusinesses/{id}/customers/{id}
V1 D GET /bookingBusinesses/{id}/services
V1 D GET /bookingBusinesses/{id}/services/{id}
V1 D GET /bookingBusinesses/{id}/staffMembers
V1 D GET /bookingBusinesses/{id}/staffMembers/{id}
V1 D GET /bookingCurrencies
V1 D GET /bookingCurrencies/{id}
V1 D GET /solutions/bookingBusinesses
V1 D GET /solutions/bookingBusinesses/{bookingBusinessesId}/customQuestions
V1 D GET /solutions/bookingBusinesses/{bookingBusinessesId}/customQuestions/{bookingCustomQuestionId}
V1 D GET /solutions/bookingBusinesses/{id}
V1 D GET /solutions/bookingBusinesses/{id}/appointments
V1 D GET /solutions/bookingBusinesses/{id}/appointments/{id}
V1 D GET /solutions/bookingBusinesses/{id}/calendarView?start={start-value}&end={end-value}
V1 D GET /solutions/bookingBusinesses/{id}/customers
V1 D GET /solutions/bookingBusinesses/{id}/customers/{id}
V1 D GET /solutions/bookingBusinesses/{id}/services
V1 D GET /solutions/bookingBusinesses/{id}/services/{id}
V1 D GET /solutions/bookingBusinesses/{id}/staffMembers
V1 D GET /solutions/bookingBusinesses/{id}/staffMembers/{id}
V1 D GET /solutions/bookingCurrencies
V1 D GET /solutions/bookingCurrencies/{id}
V1 D PATCH /bookingBusinesses/{bookingBusinessesId}/customQuestions/{bookingCustomQuestionId}
V1 D PATCH /bookingBusinesses/{id}
V1 D PATCH /bookingBusinesses/{id}/appointments/{id}
V1 D PATCH /bookingBusinesses/{id}/customers/{id}
V1 D PATCH /bookingBusinesses/{id}/services/{id}
V1 D PATCH /bookingBusinesses/{id}/staffMembers/{id}
V1 D PATCH /solutions/bookingBusinesses/{bookingBusinessesId}/customQuestions/{bookingCustomQuestionId}
V1 D PATCH /solutions/bookingBusinesses/{id}
V1 D PATCH /solutions/bookingBusinesses/{id}/appointments/{id}
V1 D PATCH /solutions/bookingBusinesses/{id}/customers/{id}
V1 D PATCH /solutions/bookingBusinesses/{id}/services/{id}
V1 D PATCH /solutions/bookingBusinesses/{id}/staffMembers/{id}
V1 D POST /bookingBusinesses
V1 D POST /bookingBusinesses/{bookingBusinessesId}/customQuestions
V1 D POST /bookingBusinesses/{id}/appointments
V1 D POST /bookingBusinesses/{id}/appointments/{id}/cancel
V1 D POST /bookingBusinesses/{id}/customers
V1 D POST /bookingBusinesses/{id}/publish
V1 D POST /bookingBusinesses/{id}/services
V1 D POST /bookingBusinesses/{id}/staffMembers
V1 D POST /bookingBusinesses/{id}/unpublish
V1 D POST /solutions/bookingBusinesses
V1 D POST /solutions/bookingBusinesses/{bookingBusinessesId}/customQuestions
V1 D POST /solutions/bookingBusinesses/{id}/appointments
V1 D POST /solutions/bookingBusinesses/{id}/appointments/{id}/cancel
V1 D POST /solutions/bookingBusinesses/{id}/customers
V1 D POST /solutions/bookingBusinesses/{id}/publish
V1 D POST /solutions/bookingBusinesses/{id}/services
V1 D POST /solutions/bookingBusinesses/{id}/staffMembers
V1 D POST /solutions/bookingBusinesses/{id}/unpublish

Delegate Permission

Id 7f36b48e-542f-4d3b-9bcb-8406f0ab9fdb
Consent Type User
Display String Manage bookings information
Description Allows an app to read, write and manage bookings appointments, businesses, customers, services, and staff on behalf of the signed-in user.

Resources

bookingAppointment

Property Type Description
additionalInformation String Additional information that is sent to the customer when an appointment is confirmed.
anonymousJoinWebUrl String The URL of the meeting to join anonymously.
customers bookingCustomerInformation collection A collection of customer properties for an appointment. An appointment will contain a list of customer information and each unit will indicate the properties of a customer who is part of that appointment. Optional.
customerTimeZone String The time zone of the customer. For a list of possible values, see dateTimeTimeZone.
duration Duration The length of the appointment, denoted in ISO8601 format.
endDateTime dateTimeTimeZone The date, time, and time zone that the appointment ends.
filledAttendeesCount Int32 The current number of customers in the appointment
id String The ID of the bookingAppointment. Read-only.
isLocationOnline Boolean If true, indicates that the appointment will be held online. Default value is false.
joinWebUrl String The URL of the online meeting for the appointment.
maximumAttendeesCount Int32 The maximum number of customers allowed in an appointment. If maximumAttendeesCount of the service is greater than 1, pass valid customer IDs while creating or updating an appointment. To create a customer, use the Create bookingCustomer operation.
optOutOfCustomerEmail Boolean If true indicates that the bookingCustomer for this appointment does not wish to receive a confirmation for this appointment.
postBuffer Duration The amount of time to reserve after the appointment ends, for cleaning up, as an example. The value is expressed in ISO8601 format.
preBuffer Duration The amount of time to reserve before the appointment begins, for preparation, as an example. The value is expressed in ISO8601 format.
price Double The regular price for an appointment for the specified bookingService.
priceType bookingPriceType A setting to provide flexibility for the pricing structure of services. Possible values are: undefined, fixedPrice, startingAt, hourly, free, priceVaries, callUs, notSet, unknownFutureValue.
reminders bookingReminder collection The collection of customer reminders sent for this appointment. The value of this property is available only when reading this bookingAppointment by its ID.
selfServiceAppointmentId String An additional tracking ID for the appointment, if the appointment has been created directly by the customer on the scheduling page, as opposed to by a staff member on the behalf of the customer. Only supported for appointment if maxAttendeeCount is 1.
serviceId String The ID of the bookingService associated with this appointment.
serviceLocation location The location where the service is delivered.
serviceName String The name of the bookingService associated with this appointment.
This property is optional when creating a new appointment. If not specified, it is computed from the service associated with the appointment by the serviceId property.
serviceNotes String Notes from a bookingStaffMember. The value of this property is available only when reading this bookingAppointment by its ID.
smsNotificationsEnabled Boolean If true, indicates SMS notifications will be sent to the customers for the appointment. Default value is false.
staffMemberIds String collection The ID of each bookingStaffMember who is scheduled in this appointment.
startDateTime dateTimeTimeZone The date, time, and time zone that the appointment begins.

bookingBusiness

Property Type Description
address physicalAddress The street address of the business. The address property, together with phone and webSiteUrl, appear in the footer of a business scheduling page. The attribute type of physicalAddress is not supported in v1.0. Internally we map the addresses to the type others.
businessHours bookingWorkHours collection The hours of operation for the business.
businessType String The type of business.
defaultCurrencyIso String The code for the currency that the business operates in on Microsoft Bookings.
displayName String The name of the business, which interfaces with customers. This name appears at the top of the business scheduling page.
email String The email address for the business.
id String A unique programmatic identifier for the business. Read-only.
isPublished Boolean The scheduling page has been made available to external customers. Use the publish and unpublish actions to set this property. Read-only.
languageTag String The language of the self-service booking page.
phone String The telephone number for the business. The phone property, together with address and webSiteUrl, appear in the footer of a business scheduling page.
publicUrl String The URL for the scheduling page, which is set after you publish or unpublish the page. Read-only.
schedulingPolicy bookingSchedulingPolicy Specifies how bookings can be created for this business.
webSiteUrl String The URL of the business web site. The **w

bookingCurrency

Property Type Description
id String A 3-character currency code, based on ISO 4217. For example, the currency code for the US dollar is USD, and for the Australian dollar is AUD. Read-only.
symbol String The currency symbol. For example, the currency symbol for the US dollar and for the Australian dollar is $.

bookingCustomer

Property Type Description
addresses physicalAddress collection Addresses associated with the customer. The attribute type of physicalAddress is not supported in v1.0. Internally we map the addresses to the type others.
displayName String The name of the customer.
emailAddress String The SMTP address of the customer.
id String The ID of the customer. Read-only.
phones phone collection Phone numbers associated with the customer, including home, business and mobile numbers.

bookingCustomerInformation

Property Type Description
customerId String The ID of the bookingCustomer for this appointment. If no ID is specified when an appointment is created, then a new bookingCustomer object is created. Once set, you should consider the customerId immutable.
customQuestionAnswers bookingQuestionAnswer collection It consists of the list of custom questions and answers given by the customer as part of the appointment
emailAddress String The SMTP address of the bookingCustomer who is booking the appointment
location location Represents location information for the bookingCustomer who is booking the appointment.
name String The customer's name.
notes String Notes from the customer associated with this appointment. You can get the value only when reading this bookingAppointment by its ID. You can set this property only when initially creating an appointment with a new customer. After that point, the value is computed from the customer represented by the customerId.
phone String The customer's phone number.
timeZone String The time zone of the customer. For a list of possible values, see dateTimeTimeZone.

bookingCustomQuestion

Property Type Description
answerInputType answerInputType The expected answer type. The possible values are: text, radioButton, unknownFutureValue.
answerOptions String collection List of possible answer values.
displayName String The question.
id String The ID of the custom question. Inherited from entity.

bookingNamedEntity

Property Type Description
displayName String A name for the derived entity, which interfaces with customers.
id String The ID for the derived entity. Read-only.

bookingQuestionAssignment

Property Type Description
isRequired Boolean The ID of the custom question.
questionId String Indicates whether it is mandatory to answer the custom question.

bookingReminder

Property Type Description
message String The message in the reminder.
offset Duration The amount of time before the start of an appointment that the reminder should be sent. It's denoted in ISO 8601 format.
recipients bookingReminderRecipients The persons who should receive the reminder. Possible values are: allAttendees, staff, customer, unknownFutureValue.

bookingSchedulingPolicy

Property Type Description
allowStaffSelection Boolean True if to allow customers to choose a specific person for the booking.
maximumAdvance Duration Maximum number of days in advance that a booking can be made. It follows the ISO 8601 format.
minimumLeadTime Duration The minimum amount of time before which bookings and cancellations must be made. It follows the ISO 8601 format.
sendConfirmationsToOwner Boolean True to notify the business via email when a booking is created or changed. Use the email address specified in the email property of the bookingBusiness entity for the business.
timeSlotInterval Duration Duration of each time slot, denoted in ISO 8601 format.

bookingService

Property Type Description
additionalInformation String Additional information that is sent to the customer when an appointment is confirmed.
customQuestions bookingQuestionAssignment collection Contains the set of custom questions associated with a particular service.
defaultDuration Duration The default length of the service, represented in numbers of days, hours, minutes, and seconds. For example, P11D23H59M59.999999999999S.
defaultLocation location The default physical location for the service.
defaultPrice Double The default monetary price for the service.
defaultPriceType bookingPriceType The default way the service is charged. Possible values are: undefined, fixedPrice, startingAt, hourly, free, priceVaries, callUs, notSet, unknownFutureValue.
defaultReminders bookingReminder collection The default set of reminders for an appointment of this service. The value of this property is available only when reading this bookingService by its ID.
description String A text description for the service.
displayName String A service name.
id String The ID of that service, in a GUID format. Read-only.
isAnonymousJoinEnabled Boolean True if the URL to join the appointment anonymously (anonymousJoinWebUrl) will be generated for the appointment booked for this service.
isHiddenFromCustomers Boolean True means this service is not available to customers for booking.
isLocationOnline Boolean True indicates that the appointments for the service will be held online. Default value is false.
languageTag String The language of the self-service booking page.
maximumAttendeesCount Int32 The maximum number of customers allowed in a service. If maximumAttendeesCount of the service is greater than 1, pass valid customer IDs while creating or updating an appointment. To create a customer, use the Create bookingCustomer operation.
notes String Additional information about this service.
postBuffer Duration The time to buffer after an appointment for this service ends, and before the next customer appointment can be booked.
preBuffer Duration The time to buffer before an appointment for this service can start.
schedulingPolicy bookingSchedulingPolicy The set of policies that determine how appointments for this type of service should be created and managed.
smsNotificationsEnabled Boolean True indicates SMS notifications can be sent to the customers for the appointment of the service. Default value is false.
staffMemberIds String collection Represents those staff members who provide this service.
webUrl String The URL a customer uses to access the service.

bookingStaffMember

Property Type Description
availabilityIsAffectedByPersonalCalendar Boolean True means that if the staff member is a Microsoft 365 user, the Bookings API would verify the staff member's availability in their personal calendar in Microsoft 365, before making a booking.
displayName String The name of the staff member, as displayed to customers. Required.
emailAddress String The email address of the staff member. This can be in the same Microsoft 365 tenant as the business, or in a different email domain. This email address can be used if the sendConfirmationsToOwner property is set to true in the scheduling policy of the business. Required.
id String The ID of the staff member, in a GUID format. Read-only.
isEmailNotificationEnabled Boolean True indicates that a staff member will be notified via email when a booking assigned to them is created or changed.
role bookingStaffRole The role of the staff member in the business. Possible values are: guest, administrator, viewer, externalGuest, unknownFutureValue, scheduler, teamMember. Note that you must use the Prefer: include-unknown-enum-members request header to get the following values from this evolvable enum: scheduler, teamMember. Required.
timeZone String The time zone of the staff member. For a list of possible values, see dateTimeTimeZone.
useBusinessHours Boolean True means the staff member's availability is as specified in the businessHours property of the business. False means the availability is determined by the staff member's workingHours property setting.
workingHours bookingWorkHours collection The range of hours each day of the week that the staff member is available for booking. By default, they are initialized to be the same as the **b

bookingWorkHours

Property Type Description
day String The day of the week represented by this instance. Possible values are: sunday, monday, tuesday, wednesday, thursday, friday, saturday.
timeSlots bookingWorkTimeSlot collection A list of start/end times during a day.

dateTimeTimeZone

Property Type Description
dateTime String A single point of time in a combined date and time representation ({date}T{time}; for example, 2017-08-29T04:00:00.0000000).
timeZone String Represents a time zone, for example, "Pacific Standard Time". See below for more possible values.

Location

Property Type Description
address physicalAddress The street address of the location.
coordinates outlookGeoCoordinates The geographic coordinates and elevation of the location.
displayName String The name associated with the location.
locationEmailAddress String Optional email address of the location.
locationUri String Optional URI representing the location.
locationType locationType The type of location. The possible values are: default, conferenceRoom, homeAddress, businessAddress,geoCoordinates, streetAddress, hotel, restaurant, localBusiness, postalAddress. Read-only.
uniqueId String For internal use only.
uniqueIdType locationUniqueIdType For internal use only.

phone

Property Type Description
number string The phone number.
type phoneType The type of phone number. The possible values are: home, business, mobile, other, assistant, homeFax, businessFax, otherFax, pager, radio.

physicalAddress

Property Type Description
city String The city.
countryOrRegion String The country or region. It's a free-format string value, for example, "United States".
postalCode String The postal code.
state String The state.
street String The street.
In This Article
Back to top Created by merill | Submit feedback