Booking Requests
Booking requests that need host approval: creating a request, its statuses and handling on the restaurant side.
A booking request (request reservation) is a booking that requires host approval before it becomes a full booking. Handy for moderating bookings from external channels: the partner creates a request, the restaurant approves or rejects it.
Base path: /api/rsv/admin/restaurants/{restaurantId}/requests.
| Method | Path | Purpose |
|---|---|---|
POST | /requests | Create a request |
GET | /requests | List of requests |
GET | /requests/{requestId} | Get a request |
PUT | /requests/{requestId} | Update a request |
POST | /requests/{requestId}/approve | Approve a request (→ booking) |
DELETE | /requests/{requestId} | Delete/reject a request |
Create a request
POST /requests
Body — CreateRequestReservationContract. The set of fields matches booking creation
(see Create & Manage): reservationTime, groupSize,
customerName, phone, email, customerProfile, additionals, etc.
curl -X POST https://api.hostmeapp.com/api/rsv/admin/restaurants/123/requests \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{ "reservationTime": "2026-07-02T19:00:00", "groupSize": 2, "customerName": "Anna Smirnova", "phone": "+16175550188", "specialRequests": "Anniversary", "source": "partner-widget" }'List of requests
GET /requests
Returns the restaurant’s requests. Path parameter — restaurantId (integer).
curl https://api.hostmeapp.com/api/rsv/admin/restaurants/123/requests \ -H "Authorization: Bearer $TOKEN"Get a request
GET /requests/{requestId}
| Parameter | In | Type |
|---|---|---|
restaurantId * | path | integer |
requestId * | path | string |
Approve
POST /requests/{requestId}/approve
Approves the request, turning it into a full booking. Response — BookingContract
(the created booking).
| Parameter | In | Type |
|---|---|---|
restaurantId * | path | integer |
requestId * | path | string |
curl -X POST https://api.hostmeapp.com/api/rsv/admin/restaurants/123/requests/REQ_ID/approve \ -H "Authorization: Bearer $TOKEN"Update a request
PUT /requests/{requestId}
Updates the request data before approval (same body as when creating).
Delete/reject
DELETE /requests/{requestId}
Deletes the request (rejection).
| Parameter | In | Type |
|---|---|---|
restaurantId * | path | integer |
requestId * | path | string |
curl -X DELETE https://api.hostmeapp.com/api/rsv/admin/restaurants/123/requests/REQ_ID \ -H "Authorization: Bearer $TOKEN"When to use requests vs. direct bookings
| Scenario | What to use |
|---|---|
| The booking must be approved manually (by the host) | Requests (/requests) → approve |
| The booking is created already confirmed | Direct booking creation |
| You need to see your app’s requests | Partner Bookings (pendingOnly, approvalRequired) |