MCP-Server

Pinoyshki Bakery

com.pinoyshki/bakery
Commerce & Retail Öffentlich und erreichbar MCP 2025-11-25

Was dieses MCP kann

Lets users browse a bakery menu, validate pickup or catering orders, and obtain a checkout link after confirmation.

cake_options
Design a custom cake
Custom decorated cakes for any occasion (a birthday, anniversary, graduation, baby shower, retirement, holiday or office party): the cake sizes and prices (with candles and a card), flavors, the earliest day, what the bakery does not make, photos of past cakes, and the design questions to settle. A cake is ordered through check_order with its cake details.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', 'properties': {'guests': {'type': 'integer', 'minimum': 1, 'description': 'Optional: how many people, to suggest a size.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['view', 'sizes'], 'properties': {'name': {'type': 'string'}, 'note': {'type': 'string'}, 'view': {'const': 'cake'}, 'sizes': {'type': 'array', 'items': {'type': 'object', 'properties': {'size': {'type': 'string'}, 'label': {'type': 'string'}, 'price': {'type': 'string'}, 'suggested': {'type': 'boolean'}, 'price_cents': {'type': 'integer'}}}}, 'title': {'type': 'string'}, 'photos': {'type': 'array', 'items': {'type': 'object', 'properties': {'photo': {'type': 'string'}, 'caption': {'type': 'string'}}}}, 'flavors': {'type': 'array', 'items': {'type': 'string'}}, 'not_offered': {'type': 'array', 'items': {'type': 'string'}}, 'allowed_dates': {'type': 'array', 'items': {'type': 'string'}}, 'earliest_date': {'type': ['string', 'null']}}}
check_order
Check an order
Step 1 of 2 to order: checks a basket of one or more menu items against the bakery's ordering rules. Saves nothing and makes no link. Returns the lane (same day on Toast, or catering on Shopify), the priced lines, the subtotal, any problems, and the dates and times the bakery can serve. Rules it applies: closed Mondays and blocked dates; Toast = only counter-menu items, up to 6 piroshki and pinoyshki (other items not limited), pickup, today while open or scheduled up to 14 days ahead with a time in that day's hours; catering = 3 days' notice for up to 24 full-size or 4 dozen bite-size piroshki and pinoyshki (other items not limited, pickup), a week ahead (by Saturday) for more, any delivery and custom cakes; delivery within 15 miles on orders over $100 or with a cake of $75 or more. The result may list 'Still needed' questions: combo_offer (a combo, in combo hours), sold_out_choice (what to do if a piroshki is sold out, for a later day) and cake_details (what is still undecided about a custom cake).
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', 'required': ['items'], 'properties': {'zip': {'type': 'string', 'description': 'Delivery ZIP code (delivery is within 15 miles).'}, 'date': {'type': 'string', 'description': "The date as YYYY-MM-DD ('today' also works). Work it out from the customer's words using today's date in Seattle (Pacific time). If their words could mean two dates, like 'next Friday' said earlier in the same week, ask them which before calling. Needed for catering and for a Toast pickup on a later day."}, 'time': {'type': 'string', 'description': "12-hour time like '1:00 pm'. Needed for catering and for a Toast pickup on a later day."}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'quantity'], 'properties': {'cake': {'type': 'object', 'properties': {'card': {'type': 'boolean', 'description': 'A card to go with the cake.'}, 'size': {'type': 'string', 'description': "A size from cake_options, like '10-15'."}, 'design': {'type': 'string', 'description': 'The design concept the customer agreed to.'}, 'flavor': {'type': 'string', 'description': 'Vanilla, Chocolate, Red Velvet, Ube, or the custom flavor asked for.'}, 'guests': {'type': 'integer', 'minimum': 1, 'description': 'How many people; picks the size.'}, 'candles': {'type': 'boolean'}, 'occasion': {'type': 'string'}, 'allergens': {'type': 'string', 'description': "Allergies or dietary needs, or 'none'."}, 'recipient': {'type': 'string', 'description': 'Who it is for (with their age, for a birthday).'}, 'inscription': {'type': 'string', 'description': "What it says, or 'none'."}}, 'description': 'Only on the decorated cake (see cake_options): what was decided with the customer. Leave out what is not decided yet.', 'additionalProperties': False}, 'name': {'type': 'string', 'description': 'Item name from the menu.'}, 'note': {'type': 'string', 'description': 'Optional note for this line, like a cake inscription.'}, 'size': {'type': 'string', 'description': "Catering sizes: 'full' (default), 'dozen', 'half dozen' or 'individual' (bite-size). Same-day items are always 'full'."}, 'combo': {'enum': ['small', 'large', 'none'], 'type': 'string', 'description': "Toast orders, piroshki and pinoyshki, when the pickup time is in combo hours (Tue to Fri, 11 am to 4 pm): 'small' = fries + a 12oz drink, 'large' = large fries, borscht + a drink, 'none' = the customer said no. check_order offers it (combo_offer) with each item's prices and drinks."}, 'backups': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 3, 'description': "Toast orders, with if_unavailable 'closest': up to 3 counter-menu piroshki or pinoyshki the customer would take instead, in order of preference."}, 'quantity': {'type': 'integer', 'maximum': 500, 'minimum': 1}, 'combo_drink': {'type': 'string', 'description': "The combo's drink, as check_order listed it (like '12oz Coke' or 'Small Juice'). Default: any 12oz soda."}, 'if_unavailable': {'enum': ['closest', 'remove', 'cancel'], 'type': 'string', 'description': "Toast orders, piroshki and pinoyshki only: what the bakery does if this one is sold out when the order is made. 'closest' (default) swaps in the closest piroshki, 'remove' leaves it out, 'cancel' cancels the order. Worth asking for a scheduled day, since the counter menu changes."}}}, 'maxItems': 60, 'minItems': 1, 'description': 'What to order. Use item names exactly as get_menu or search_menu gave them.'}, 'notes': {'type': 'string', 'description': 'Optional note for the bakery.'}, 'channel': {'enum': ['today', 'catering'], 'type': 'string', 'description': "Optional. 'today' = the counter menu on Toast: same day, or a scheduled pickup up to 14 days ahead (up to 6 full-size, pickup only, paid on Toast); 'catering' = ordered 3 or more days ahead, paid on Shopify. Left out, the basket and date decide: catering is preferred from 3 days out when every item is on the catering menu."}, 'utensils': {'type': 'boolean', 'description': 'Catering: include utensils. Default true.'}, 'staff_tip': {'type': 'integer', 'maximum': 50, 'minimum': 0, 'description': 'Toast orders: the tip for the bakery staff in whole dollars, shared by the staff who bake, pack and hand over the order. 0 (the default) unless the customer picks one; offer $1, $3 or $5 or any whole amount.'}, 'fulfillment': {'enum': ['pickup', 'delivery'], 'type': 'string', 'description': 'Default pickup. Delivery is catering, week-ahead only.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['view', 'ok', 'lines', 'subtotal_cents', 'problems'], 'properties': {'ok': {'type': 'boolean', 'description': 'True when the order is allowed as asked.'}, 'view': {'const': 'quote'}, 'when': {'type': 'string'}, 'lines': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'quantity'], 'properties': {'cake': {'type': 'string', 'description': "The cake's flavor, message and design, in words, or empty."}, 'name': {'type': 'string'}, 'note': {'type': 'string'}, 'combo': {'type': 'string', 'description': "The line's combo upgrade, in words, or empty."}, 'photo': {'type': ['string', 'null']}, 'quantity': {'type': 'integer'}, 'line_cents': {'type': 'integer'}, 'size_label': {'type': 'string'}, 'price_cents': {'type': ['integer', 'null']}, 'if_unavailable': {'type': 'string', 'description': "The line's backup choice on Toast, in words."}}}}, 'title': {'type': 'string'}, 'today': {'type': 'string', 'description': "Today's date in Seattle, like 'Thursday, September 24'."}, 'channel': {'type': ['string', 'null']}, 'problems': {'type': 'array', 'items': {'type': 'object', 'properties': {'code': {'type': ['string', 'null']}, 'soft': {'type': 'boolean', 'description': 'True when something is still needed (a date, a time) rather than broken.'}, 'message': {'type': 'string'}}}}, 'tip_offer': {'type': 'object', 'description': 'Toast orders: the staff tip choices in whole dollars and the suggested one.'}, 'lane_label': {'type': 'string'}, 'date_choices': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Present when the date asked for could mean either of these; ask the customer which.'}, 'allowed_dates': {'type': 'array', 'items': {'type': 'string'}}, 'allowed_times': {'type': 'array', 'items': {'type': 'string'}}, 'earliest_date': {'type': ['string', 'null']}, 'subtotal_cents': {'type': 'integer', 'description': 'Before tax, with the staff tip; the checkout page shows the final total.'}, 'staff_tip_cents': {'type': 'integer', 'description': 'The tip for the bakery staff, 0 when none.'}, 'delivery_allowed': {'type': ['boolean', 'null']}, 'allowed_date_labels': {'type': 'array', 'items': {'type': 'string'}, 'description': "allowed_dates with weekdays, like 'Fri Oct 2'."}}}
get_menu
Browse the Pinoyshki menu
Pinoyshki Bakery's menu with prices and photos, from the bakery's live data. lane 'today' is today's counter menu (what can be ordered on Toast for pickup today or a later day; sold-out items are left off); lane 'catering' is the catalogue for ordering 3 days to a week ahead, with sizes (full-size, bite-size dozen, half dozen).
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', 'properties': {'lane': {'enum': ['today', 'catering'], 'type': 'string', 'description': "Default 'today'."}, 'section': {'type': 'string', 'description': "Optional section filter, like 'Pastries' or 'Vegan'. 'Piroshki' and 'Pinoyshki' both show the whole family (pinoyshki are piroshki with Filipino fillings); customers asking for either nearly always want both."}, 'only_this_family': {'type': 'boolean', 'description': 'Only when the customer asked for just piroshki or just pinoyshki: keep the section filter to that word.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['view', 'title', 'sections'], 'properties': {'lane': {'type': 'string'}, 'note': {'type': 'string'}, 'view': {'const': 'menu'}, 'hours': {'type': 'object'}, 'title': {'type': 'string'}, 'sections': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'items'], 'properties': {'name': {'type': 'string'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'lane', 'available'], 'properties': {'lane': {'enum': ['today', 'catering'], 'type': 'string'}, 'name': {'type': 'string', 'description': 'Exact item name; use it as-is in check_order.'}, 'photo': {'type': ['string', 'null']}, 'price': {'type': 'string', 'description': "Price as shown to customers, like '$9.05' or 'Full-Size $9.05 / Bite-Size Dozen $29.00'."}, 'sizes': {'type': 'array', 'items': {'type': 'object', 'properties': {'size': {'type': 'string'}, 'label': {'type': 'string'}, 'price': {'type': 'string'}, 'price_cents': {'type': 'integer'}}}}, 'section': {'type': 'string'}, 'allergens': {'type': ['array', 'null'], 'items': {'type': 'string'}, 'description': "Allergens the bakery lists; null means not listed, never 'none'."}, 'available': {'type': 'boolean', 'description': 'False means sold out today.'}, 'lane_label': {'type': 'string'}, 'description': {'type': ['string', 'null']}, 'price_cents': {'type': ['integer', 'null']}, 'allergen_note': {'type': ['string', 'null']}, 'dietary_labels': {'type': 'array', 'items': {'type': 'string'}}}}}}}}, 'closed_weekdays': {'type': 'array'}}}
search_menu
Search the Pinoyshki menu
Find menu items by a few words (a filling, a pastry, 'vegan', 'ube'), across today's counter menu and catering. Each match comes with its price, a short description, a photo URL and the allergens the bakery lists. Custom cakes are not in it; they are designed with cake_options.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', 'required': ['query'], 'properties': {'lane': {'enum': ['all', 'today', 'catering'], 'type': 'string', 'description': "Default 'all'."}, 'query': {'type': 'string', 'description': 'A few words to look for.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['view', 'title', 'sections'], 'properties': {'lane': {'type': 'string'}, 'note': {'type': 'string'}, 'view': {'const': 'menu'}, 'hours': {'type': 'object'}, 'title': {'type': 'string'}, 'sections': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'items'], 'properties': {'name': {'type': 'string'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'lane', 'available'], 'properties': {'lane': {'enum': ['today', 'catering'], 'type': 'string'}, 'name': {'type': 'string', 'description': 'Exact item name; use it as-is in check_order.'}, 'photo': {'type': ['string', 'null']}, 'price': {'type': 'string', 'description': "Price as shown to customers, like '$9.05' or 'Full-Size $9.05 / Bite-Size Dozen $29.00'."}, 'sizes': {'type': 'array', 'items': {'type': 'object', 'properties': {'size': {'type': 'string'}, 'label': {'type': 'string'}, 'price': {'type': 'string'}, 'price_cents': {'type': 'integer'}}}}, 'section': {'type': 'string'}, 'allergens': {'type': ['array', 'null'], 'items': {'type': 'string'}, 'description': "Allergens the bakery lists; null means not listed, never 'none'."}, 'available': {'type': 'boolean', 'description': 'False means sold out today.'}, 'lane_label': {'type': 'string'}, 'description': {'type': ['string', 'null']}, 'price_cents': {'type': ['integer', 'null']}, 'allergen_note': {'type': ['string', 'null']}, 'dietary_labels': {'type': 'array', 'items': {'type': 'string'}}}}}}}}, 'closed_weekdays': {'type': 'array'}}}
show_item
Show a menu item
One menu item with its photo, description, sizes and prices, and the allergens the bakery lists. The photo is included in the result.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', 'required': ['name'], 'properties': {'lane': {'enum': ['today', 'catering'], 'type': 'string', 'description': 'Optional: only this menu.'}, 'name': {'type': 'string', 'description': "The item's name."}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['view', 'item'], 'properties': {'also': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'lane', 'available'], 'properties': {'lane': {'enum': ['today', 'catering'], 'type': 'string'}, 'name': {'type': 'string', 'description': 'Exact item name; use it as-is in check_order.'}, 'photo': {'type': ['string', 'null']}, 'price': {'type': 'string', 'description': "Price as shown to customers, like '$9.05' or 'Full-Size $9.05 / Bite-Size Dozen $29.00'."}, 'sizes': {'type': 'array', 'items': {'type': 'object', 'properties': {'size': {'type': 'string'}, 'label': {'type': 'string'}, 'price': {'type': 'string'}, 'price_cents': {'type': 'integer'}}}}, 'section': {'type': 'string'}, 'allergens': {'type': ['array', 'null'], 'items': {'type': 'string'}, 'description': "Allergens the bakery lists; null means not listed, never 'none'."}, 'available': {'type': 'boolean', 'description': 'False means sold out today.'}, 'lane_label': {'type': 'string'}, 'description': {'type': ['string', 'null']}, 'price_cents': {'type': ['integer', 'null']}, 'allergen_note': {'type': ['string', 'null']}, 'dietary_labels': {'type': 'array', 'items': {'type': 'string'}}}}}, 'item': {'type': 'object', 'required': ['name', 'lane', 'available'], 'properties': {'lane': {'enum': ['today', 'catering'], 'type': 'string'}, 'name': {'type': 'string', 'description': 'Exact item name; use it as-is in check_order.'}, 'photo': {'type': ['string', 'null']}, 'price': {'type': 'string', 'description': "Price as shown to customers, like '$9.05' or 'Full-Size $9.05 / Bite-Size Dozen $29.00'."}, 'sizes': {'type': 'array', 'items': {'type': 'object', 'properties': {'size': {'type': 'string'}, 'label': {'type': 'string'}, 'price': {'type': 'string'}, 'price_cents': {'type': 'integer'}}}}, 'section': {'type': 'string'}, 'allergens': {'type': ['array', 'null'], 'items': {'type': 'string'}, 'description': "Allergens the bakery lists; null means not listed, never 'none'."}, 'available': {'type': 'boolean', 'description': 'False means sold out today.'}, 'lane_label': {'type': 'string'}, 'description': {'type': ['string', 'null']}, 'price_cents': {'type': ['integer', 'null']}, 'allergen_note': {'type': ['string', 'null']}, 'dietary_labels': {'type': 'array', 'items': {'type': 'string'}}}}, 'view': {'const': 'item'}}}
start_checkout
Get the checkout link
Step 2 of 2 to order, for a basket check_order has allowed: checks the same order again and returns the link the customer pays on, on the bakery's own domain. The same order sent again within 15 minutes gets the same link back; an empty basket gets no link. Toast: a Pinoyshki page that shows the order while it finishes the cart on Toast (with the staff tip and the pickup day and time), then takes them to Toast's checkout (good for a week; opened after its pickup time it remakes the cart for the next pickup time). Catering: it checks the order again and opens Shopify's checkout with the date, time and pickup or delivery filled in (good for a week). No payment happens here. If a rule is broken it returns the problems instead of a link.
Eingabeschema
{'type': 'object', 'required': ['items'], 'properties': {'zip': {'type': 'string', 'description': 'Delivery ZIP code (delivery is within 15 miles).'}, 'date': {'type': 'string', 'description': "The date as YYYY-MM-DD ('today' also works). Work it out from the customer's words using today's date in Seattle (Pacific time). If their words could mean two dates, like 'next Friday' said earlier in the same week, ask them which before calling. Needed for catering and for a Toast pickup on a later day."}, 'time': {'type': 'string', 'description': "12-hour time like '1:00 pm'. Needed for catering and for a Toast pickup on a later day."}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'quantity'], 'properties': {'cake': {'type': 'object', 'properties': {'card': {'type': 'boolean', 'description': 'A card to go with the cake.'}, 'size': {'type': 'string', 'description': "A size from cake_options, like '10-15'."}, 'design': {'type': 'string', 'description': 'The design concept the customer agreed to.'}, 'flavor': {'type': 'string', 'description': 'Vanilla, Chocolate, Red Velvet, Ube, or the custom flavor asked for.'}, 'guests': {'type': 'integer', 'minimum': 1, 'description': 'How many people; picks the size.'}, 'candles': {'type': 'boolean'}, 'occasion': {'type': 'string'}, 'allergens': {'type': 'string', 'description': "Allergies or dietary needs, or 'none'."}, 'recipient': {'type': 'string', 'description': 'Who it is for (with their age, for a birthday).'}, 'inscription': {'type': 'string', 'description': "What it says, or 'none'."}}, 'description': 'Only on the decorated cake (see cake_options): what was decided with the customer. Leave out what is not decided yet.', 'additionalProperties': False}, 'name': {'type': 'string', 'description': 'Item name from the menu.'}, 'note': {'type': 'string', 'description': 'Optional note for this line, like a cake inscription.'}, 'size': {'type': 'string', 'description': "Catering sizes: 'full' (default), 'dozen', 'half dozen' or 'individual' (bite-size). Same-day items are always 'full'."}, 'combo': {'enum': ['small', 'large', 'none'], 'type': 'string', 'description': "Toast orders, piroshki and pinoyshki, when the pickup time is in combo hours (Tue to Fri, 11 am to 4 pm): 'small' = fries + a 12oz drink, 'large' = large fries, borscht + a drink, 'none' = the customer said no. check_order offers it (combo_offer) with each item's prices and drinks."}, 'backups': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 3, 'description': "Toast orders, with if_unavailable 'closest': up to 3 counter-menu piroshki or pinoyshki the customer would take instead, in order of preference."}, 'quantity': {'type': 'integer', 'maximum': 500, 'minimum': 1}, 'combo_drink': {'type': 'string', 'description': "The combo's drink, as check_order listed it (like '12oz Coke' or 'Small Juice'). Default: any 12oz soda."}, 'if_unavailable': {'enum': ['closest', 'remove', 'cancel'], 'type': 'string', 'description': "Toast orders, piroshki and pinoyshki only: what the bakery does if this one is sold out when the order is made. 'closest' (default) swaps in the closest piroshki, 'remove' leaves it out, 'cancel' cancels the order. Worth asking for a scheduled day, since the counter menu changes."}}}, 'maxItems': 60, 'minItems': 1, 'description': 'What to order. Use item names exactly as get_menu or search_menu gave them.'}, 'notes': {'type': 'string', 'description': 'Optional note for the bakery.'}, 'channel': {'enum': ['today', 'catering'], 'type': 'string', 'description': "Optional. 'today' = the counter menu on Toast: same day, or a scheduled pickup up to 14 days ahead (up to 6 full-size, pickup only, paid on Toast); 'catering' = ordered 3 or more days ahead, paid on Shopify. Left out, the basket and date decide: catering is preferred from 3 days out when every item is on the catering menu."}, 'utensils': {'type': 'boolean', 'description': 'Catering: include utensils. Default true.'}, 'staff_tip': {'type': 'integer', 'maximum': 50, 'minimum': 0, 'description': 'Toast orders: the tip for the bakery staff in whole dollars, shared by the staff who bake, pack and hand over the order. 0 (the default) unless the customer picks one; offer $1, $3 or $5 or any whole amount.'}, 'fulfillment': {'enum': ['pickup', 'delivery'], 'type': 'string', 'description': 'Default pickup. Delivery is catering, week-ahead only.'}, 'customer_name': {'type': 'string', 'description': 'Optional: the name the order is for.'}, 'customer_email': {'type': 'string', 'description': 'Optional: an email for the bakery.'}, 'customer_phone': {'type': 'string', 'description': 'Optional: a phone number for the bakery.'}}, 'additionalProperties': False}
Ausgabeschema
{'if': {'properties': {'view': {'const': 'checkout'}}}, 'then': {'required': ['url']}, 'type': 'object', 'required': ['view', 'ok', 'lines', 'subtotal_cents'], 'properties': {'ok': {'type': 'boolean', 'description': 'True when the order is allowed as asked.'}, 'url': {'type': 'string', 'description': 'The link the customer opens to pay. Give it to them as-is.'}, 'view': {'enum': ['checkout', 'quote']}, 'when': {'type': 'string'}, 'lines': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'quantity'], 'properties': {'cake': {'type': 'string', 'description': "The cake's flavor, message and design, in words, or empty."}, 'name': {'type': 'string'}, 'note': {'type': 'string'}, 'combo': {'type': 'string', 'description': "The line's combo upgrade, in words, or empty."}, 'photo': {'type': ['string', 'null']}, 'quantity': {'type': 'integer'}, 'line_cents': {'type': 'integer'}, 'size_label': {'type': 'string'}, 'price_cents': {'type': ['integer', 'null']}, 'if_unavailable': {'type': 'string', 'description': "The line's backup choice on Toast, in words."}}}}, 'title': {'type': 'string'}, 'today': {'type': 'string', 'description': "Today's date in Seattle, like 'Thursday, September 24'."}, 'button': {'type': 'string'}, 'channel': {'type': ['string', 'null']}, 'pays_on': {'type': 'string'}, 'problems': {'type': 'array', 'items': {'type': 'object', 'properties': {'code': {'type': ['string', 'null']}, 'soft': {'type': 'boolean', 'description': 'True when something is still needed (a date, a time) rather than broken.'}, 'message': {'type': 'string'}}}}, 'tip_offer': {'type': 'object', 'description': 'Toast orders: the staff tip choices in whole dollars and the suggested one.'}, 'lane_label': {'type': 'string'}, 'date_choices': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Present when the date asked for could mean either of these; ask the customer which.'}, 'allowed_dates': {'type': 'array', 'items': {'type': 'string'}}, 'allowed_times': {'type': 'array', 'items': {'type': 'string'}}, 'earliest_date': {'type': ['string', 'null']}, 'subtotal_cents': {'type': 'integer', 'description': 'Before tax, with the staff tip; the checkout page shows the final total.'}, 'staff_tip_cents': {'type': 'integer', 'description': 'The tip for the bakery staff, 0 when none.'}, 'delivery_allowed': {'type': ['boolean', 'null']}, 'allowed_date_labels': {'type': 'array', 'items': {'type': 'string'}, 'description': "allowed_dates with weekdays, like 'Fri Oct 2'."}}}
Geändert
start_checkout
2. October 2026 02:41
Geändert
check_order
2. October 2026 02:41
Geändert
cake_options
2. October 2026 02:41
Geändert
show_item
2. October 2026 02:41
Geändert
search_menu
2. October 2026 02:41
Geändert
get_menu
2. October 2026 02:41
Geändert
start_checkout
30. September 2026 02:40
Geändert
check_order
30. September 2026 02:40
Geändert
start_checkout
28. September 2026 02:40
Geändert
check_order
28. September 2026 02:40
Hinzugefügt
cake_options
28. September 2026 02:40
Geändert
search_menu
28. September 2026 02:40
Geändert
get_menu
28. September 2026 02:40
Hinzugefügt
start_checkout
26. September 2026 02:40
Hinzugefügt
check_order
26. September 2026 02:40
Hinzugefügt
show_item
26. September 2026 02:40
Hinzugefügt
search_menu
26. September 2026 02:40
Hinzugefügt
get_menu
26. September 2026 02:40