<!--
{
  "availability" : [
    "iOS: 10.0.0 -",
    "iPadOS: 10.0.0 -",
    "macCatalyst: 13.1.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SiriKit",
  "identifier" : "/documentation/Intents/INBookRestaurantReservationIntent",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Intents"
    ],
    "preciseIdentifier" : "c:objc(cs)INBookRestaurantReservationIntent"
  },
  "title" : "INBookRestaurantReservationIntent"
}
-->

# INBookRestaurantReservationIntent

A request to create a reservation at the specified restaurant.

```
class INBookRestaurantReservationIntent
```

## Overview

An [`INBookRestaurantReservationIntent`](/documentation/Intents/INBookRestaurantReservationIntent) object asks you to book the reservation time selected by the user. Maps sends this intent to your Intents extension when the user selects a reservation time from the available options. Use this intent object to obtain the details of the reservation, including the time slot and any selected special offers. Use those details to confirm the reservation with the restaurant and store the results in your system.

Booking a reservation is the last step in the reservation creation process. By the time the system delivers this intent to your Intents extension, the user has already had an opportunity to view a list of potential reservation times and configure the details of the reservation request. This intent object contains all of the final choices made by the user.

To handle this intent, the handler object in your Intents extension must adopt the [`INBookRestaurantReservationIntentHandling`](/documentation/Intents/INBookRestaurantReservationIntentHandling) protocol. Your handler should resolve and confirm any parameters and create an [`INBookRestaurantReservationIntentResponse`](/documentation/Intents/INBookRestaurantReservationIntentResponse) object with the status of the reservation.

### Additional Intent Attributes

The following table lists additional attributes of this intent object:

|Attribute                      |Description|
|-------------------------------|-----------|
|Supported by                   |Maps       |
|Always requires unlocked device|Yes        |

## Topics

### Initializing the Intent Object

[`init(restaurant:booking:partySize:bookingIdentifier:guest:selectedOffer:guestProvidedSpecialRequestText:)`](/documentation/Intents/INBookRestaurantReservationIntent/init(restaurant:booking:partySize:bookingIdentifier:guest:selectedOffer:guestProvidedSpecialRequestText:))

Initializes the intent object with the specified booking information.

### Getting the Restaurant Information

[`restaurant`](/documentation/Intents/INBookRestaurantReservationIntent/restaurant)

The restaurant to contact regarding the booking.

### Getting the Booking Details

[`bookingDateComponents`](/documentation/Intents/INBookRestaurantReservationIntent/bookingDateComponents)

The date and time of the reservation.

[`bookingIdentifier`](/documentation/Intents/INBookRestaurantReservationIntent/bookingIdentifier)

The unique identifier associated with the initial reservation data.

[`partySize`](/documentation/Intents/INBookRestaurantReservationIntent/partySize)

The total number of people in the user’s party.

[`guest`](/documentation/Intents/INBookRestaurantReservationIntent/guest)

The identity of the guest associated with the reservation.

### Getting Special Requests and Offers

[`guestProvidedSpecialRequestText`](/documentation/Intents/INBookRestaurantReservationIntent/guestProvidedSpecialRequestText)

Information about any special requests made by the user.

[`selectedOffer`](/documentation/Intents/INBookRestaurantReservationIntent/selectedOffer)

The special offer, if any, selected by the user.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)