prepare_order
Prepare an order
Resolve a natural-language food order (one or more items) to concrete menu items and return a summary plus a confirmation token. Does NOT place the order. Call place_order with the returned token to actually place it. Delivery is as soon as possible by default; pass 'date' to ask for a later time instead. Each call covers one delivery, so an order for more than one day means one call per day. The restaurant may still refuse a time it is not open for.
輸入參數dateitems必填notescutleryclientIdvendorIdbringTerminaldeliveryAddress必填
place_order
Place the order
Place an order previously staged by prepare_order. Requires the confirmationToken returned by prepare_order. This causes a real order to be sent to the vendor.
輸入參數confirmationToken必填
check_order
Check an order
Check the current status of an order the user has already placed, using the order number returned by place_order. Reports whether the restaurant has accepted it, whether it is on its way, and whether it has finished (delivered or declined). There is no background tracking and no notification: call this again when the user asks, and only until the order is reported as finished.
輸入參數orderId必填clientId
list_vendors
List restaurants
Find restaurants (vendors) available for ordering. This is the discovery entry point: each card shows the clientId and vendorId that list_menu and prepare_order need. Call it with no arguments to list every restaurant — that is the normal case. Returns a complete, self-contained HTML document of vendor cards (logo, address, phone, delivery fee) — restaurants open today first in colour, those closed today greyed out at the bottom. Present the returned HTML to the user by opening it as an HTML artifact; do not paste the markup into the chat.
輸入參數city
Sign the user out. By default signs out of every restaurant; pass a clientId to sign out of one, and an account label to sign out just that account.
輸入參數labelclientId
Start signing the user in to a restaurant so they can place orders. Browsing the menu never needs this — only ordering and saving an address do. Returns a URL the user must open in a browser to sign in with Google or Apple; afterwards they copy the 'code' value from the address bar and you call submit_login_code. Each restaurant has its own login, so this must be done per restaurant.
輸入參數clientId
submit_login_code
Finish signing in
Complete a sign-in started by login, using the 'code' value the user copied from the browser address bar. On success the user can place orders from that restaurant.
輸入參數code必填labelclientId
list_accounts
List signed-in accounts
Show which accounts are signed in, per restaurant, and which one is active. Useful when the user keeps separate work and personal accounts.
無需輸入參數。
switch_account
Switch account
Choose which signed-in account to order with at a restaurant, e.g. to switch between work and personal. The account must already be signed in via login.
輸入參數label必填clientId