Restaurant reservations between agents
How a diner's agent could book a table with a restaurant's agent, and why New York's reservation law makes restaurant consent and agent identity matter.
A restaurant reservation is a small, time-boxed contract: a party size, a time, a table type, and sometimes a card guarantee with a no-show fee. The diner’s agent knows the constraints. The restaurant’s system knows what is open and what the house rules are. Today they meet through a reservation platform’s page, a widget on the restaurant’s site, or a phone call during service.
How it works today
Channels. Diners book by phone, through the restaurant’s own site, through reservation platforms, or from search and maps results. Google’s Reservations End-to-End integration lets people book from Google Maps and Search. Booking partners integrate by sending merchant feeds with location and service data, running a booking server that handles reservation requests, and holding a direct contract with each restaurant they list.
Structured data. schema.org defines FoodEstablishmentReservation for a confirmed dining reservation (party size, start time, the restaurant) and ReserveAction for the act of reserving, which restaurants can attach to their listing to point at a booking URL. Both describe a booking. Neither performs one.
Guarantees. Some restaurants take a card to hold the table and charge a fee for late cancellations or no-shows. The terms are shown at booking and vary by restaurant.
Resale. New York regulates services that list or sell a restaurant’s tables without its consent. General Business Law section 391-w bars a third-party restaurant reservation service from listing, advertising, promoting or selling a restaurant’s reservations without a written agreement with that restaurant. The law defines such a service broadly: a website, app or other internet service, not owned by the restaurant, that offers or arranges reservations. Channels authorized by contract with the restaurant are excluded. Penalties are up to $1,000 per violation, accruing daily for each restaurant involved.
The agent-to-agent version
Illustrative. A diner asks their agent for a table for four on Friday between 7:00 and 8:30 pm, patio if possible, and mentions a guest with a nut allergy.
- The agent sends the request with party size, time window, seating preference and the dietary note.
- The restaurant’s agent replies with two options and its guarantee terms, and waits for a choice.
- The agent checks the terms against what the diner allowed (for example, no-show fee up to $25 per person) and picks a time.
- If a card guarantee is required, the restaurant’s agent asks for it; the payment step runs under the diner’s payment authorization.
- The restaurant’s agent confirms and returns the reservation details as an artifact.
Step 2, the restaurant’s response:
{
"jsonrpc": "2.0",
"id": "req-res-1",
"result": {
"task": {
"id": "task-res-208",
"contextId": "ctx-res-5",
"status": {
"state": "TASK_STATE_INPUT_REQUIRED",
"message": {
"messageId": "msg-res-02",
"role": "ROLE_AGENT",
"taskId": "task-res-208",
"contextId": "ctx-res-5",
"parts": [
{ "text": "Patio is full at 7:30. We can offer 7:15 indoors or 8:15 on the patio. The kitchen has noted the nut allergy." },
{
"data": {
"options": [
{ "optionId": "opt-1", "start": "2026-10-02T19:15:00-04:00", "partySize": 4, "seating": "indoor" },
{ "optionId": "opt-2", "start": "2026-10-02T20:15:00-04:00", "partySize": 4, "seating": "patio" }
],
"guarantee": {
"required": true,
"noShowFeePerPerson": { "value": "25.00", "currency": "USD" },
"freeCancellationUntilHours": 24
},
"holdExpiresAt": "2026-09-26T18:10:00Z"
},
"mediaType": "application/json"
}
]
},
"timestamp": "2026-09-26T18:05:00Z"
}
}
}
}
The holdExpiresAt field matters. Without an expiry, an agent could hold every slot it is shown.
What has to be true
Identity. The restaurant needs to tell a diner’s own agent from a reseller’s bot. The first books a table its user will sit at. The second takes inventory to sell. The request looks the same, so the restaurant has to judge the agent: who built it, whose account it acts for, and how it has behaved before.
Authority. The diner approves the guarantee terms and the card. If a fee is ever charged, the restaurant needs to show the diner accepted those terms. For payment, AP2 defines mandates that let an agent’s payment carry evidence of the user’s authorization, and v0.2 organizes them as checkout and payment mandates.
Consent of the restaurant. In New York, listing or selling a restaurant’s reservations without its written agreement is prohibited for third-party services. An agent endpoint the restaurant publishes itself is the restaurant’s own channel, which keeps the consent question simple.
Record. The confirmed time, party size, dietary notes and the fee terms accepted, with timestamps. A no-show fee dispute turns on exactly those facts.
Cancellation. When plans change, the agent should cancel as soon as it knows, inside the free window, so the table goes back on sale. A cancel request needs the same checks as the booking. Otherwise anyone’s agent could cancel anyone’s table, and a competitor could clear a restaurant’s book on a Friday night.
Where Emissar fits
- Front Door (open to design partners): a restaurant-owned agent endpoint in front of its existing reservation system.
- Verify (in development): provider identity and behavior history, to separate diners’ agents from resale automation.
- Mandate (spec in progress): the diner’s acceptance of guarantee terms, scoped to one booking.
- Ledger (spec in progress): a signed record of what was booked and agreed.
- Settle (planned): charging a guarantee or deposit, checked against the diner’s limits.
Open questions
- Is a person’s own agent booking a table for its user a “third-party restaurant reservation service” under New York’s definition? The statute’s text is broad, and we found no guidance on personal agents. This is a description of the question, not legal advice.
- Agents can check availability far more often than people. What polling limits are fair for popular restaurants?
- Should the restaurant’s agent see the diner’s identity at booking, or only a verified pseudonym until arrival?
- How should dietary and allergy information be carried so it reaches the kitchen without becoming a free-text note nobody reads?
Sources
- Google Actions Center: Reservations End-to-End overview (accessed )
- schema.org FoodEstablishmentReservation (accessed )
- schema.org ReserveAction (accessed )
- New York General Business Law section 391-w: Unauthorized restaurant reservations (accessed )
- AP2 specification (accessed )
- A2A Protocol Specification (accessed )