{"openapi":"3.0.0","paths":{"/v1/storefront/shop":{"get":{"description":"The shop: name, logo, currency and clock, the branch that fills online orders with its hours, whether it is open now, pickup and delivery with their fees, online payment, and the collections.","operationId":"getShop","parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"timeZone":{"type":"string"},"dateFormat":{"type":"string","enum":["d MMM yyyy","dd/MM/yyyy","MM/dd/yyyy","yyyy-MM-dd"]},"timeFormat":{"type":"string","enum":["12h","24h"]},"slug":{"type":"string"},"domain":{"nullable":true,"type":"string"},"whatsapp":{"nullable":true,"type":"string"},"name":{"type":"string"},"businessType":{"nullable":true,"type":"string"},"logoUrl":{"nullable":true,"type":"string"},"bannerUrl":{"nullable":true,"type":"string"},"currency":{"type":"string"},"phone":{"nullable":true,"type":"string"},"branch":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"address":{"nullable":true,"type":"string"},"phone":{"nullable":true,"type":"string"},"workingHours":{"minItems":7,"maxItems":7,"type":"array","items":{"type":"object","properties":{"open":{"type":"boolean"},"from":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"to":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"}},"required":["open","from","to"],"additionalProperties":false}},"closures":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"from":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"to":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"note":{"nullable":true,"type":"string","maxLength":120}},"required":["from","to","note"],"additionalProperties":false}}},"required":["id","name","address","phone","workingHours","closures"],"additionalProperties":false},"enabled":{"type":"boolean"},"closedUntil":{"nullable":true,"type":"string"},"closedOrders":{"type":"string","enum":["take","refuse"]},"outOfStock":{"type":"string","enum":["sold_out","hide"]},"sellsServices":{"type":"boolean"},"pickup":{"type":"boolean"},"delivery":{"nullable":true,"type":"object","properties":{"fee":{"type":"number"},"zones":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"fee":{"type":"number"}},"required":["name","fee"],"additionalProperties":false}}},"required":["fee","zones"],"additionalProperties":false},"payOnline":{"type":"boolean"},"payFirst":{"type":"boolean"},"collections":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"imageUrl":{"nullable":true,"type":"string"}},"required":["id","name","imageUrl"],"additionalProperties":false}}},"required":["timeZone","dateFormat","timeFormat","slug","domain","whatsapp","name","businessType","logoUrl","bannerUrl","currency","phone","branch","enabled","closedUntil","closedOrders","outOfStock","sellsServices","pickup","delivery","payOnline","payFirst","collections"],"additionalProperties":false}}}}},"security":[{"publishableKey":[]}],"summary":"Get the shop","tags":["Storefront"]}},"/v1/storefront/products":{"get":{"description":"Products on sale online, a page at a time: search by name, filter by collection, sort by name or newest. Pass nextCursor back as cursor for the next page.","operationId":"listProducts","parameters":[{"name":"limit","required":false,"in":"query","schema":{"default":50,"type":"integer","minimum":1,"maximum":200}},{"name":"cursor","required":false,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"q","required":false,"in":"query","schema":{"type":"string","maxLength":100}},{"name":"collection","required":false,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"sort","required":false,"in":"query","schema":{"type":"string","enum":["name","-name","newest","-newest"]}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"nullable":true,"type":"string"},"unitName":{"type":"string"},"category":{"nullable":true,"type":"string"},"imageUrl":{"nullable":true,"type":"string"},"priceTypes":{"type":"array","items":{"type":"object","properties":{"id":{"nullable":true,"type":"string"},"name":{"type":"string"}},"required":["id","name"],"additionalProperties":false}},"versions":{"type":"array","items":{"type":"object","properties":{"variantId":{"type":"string"},"name":{"nullable":true,"type":"string"},"imageUrl":{"nullable":true,"type":"string"},"sellingPrice":{"type":"number"},"prices":{"type":"array","items":{"type":"object","properties":{"priceListId":{"nullable":true,"type":"string"},"sellingPrice":{"type":"number"}},"required":["priceListId","sellingPrice"],"additionalProperties":false}},"inStock":{"nullable":true,"type":"boolean"},"sellingUnits":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"sellingPrice":{"type":"number"},"prices":{"type":"array","items":{"type":"object","properties":{"priceListId":{"nullable":true,"type":"string"},"sellingPrice":{"type":"number"}},"required":["priceListId","sellingPrice"],"additionalProperties":false}}},"required":["id","name","sellingPrice","prices"],"additionalProperties":false}}},"required":["variantId","name","imageUrl","sellingPrice","prices","inStock","sellingUnits"],"additionalProperties":false}},"addonGroups":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"mode":{"type":"string","enum":["one","many"]},"required":{"type":"boolean"},"options":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"sellingPrice":{"type":"number"},"preselected":{"type":"boolean"}},"required":["id","name","sellingPrice","preselected"],"additionalProperties":false}}},"required":["id","name","mode","required","options"],"additionalProperties":false}},"soldOut":{"type":"boolean"}},"required":["id","name","description","unitName","category","imageUrl","priceTypes","versions","addonGroups","soldOut"],"additionalProperties":false}},"nextCursor":{"nullable":true,"type":"string"}},"required":["items","nextCursor"],"additionalProperties":false}}}}},"security":[{"publishableKey":[]}],"summary":"List products","tags":["Storefront"]}},"/v1/storefront/products/{id}":{"get":{"description":"One product with its versions, selling units, prices, extras and stock.","operationId":"getProduct","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"nullable":true,"type":"string"},"unitName":{"type":"string"},"category":{"nullable":true,"type":"string"},"imageUrl":{"nullable":true,"type":"string"},"priceTypes":{"type":"array","items":{"type":"object","properties":{"id":{"nullable":true,"type":"string"},"name":{"type":"string"}},"required":["id","name"],"additionalProperties":false}},"versions":{"type":"array","items":{"type":"object","properties":{"variantId":{"type":"string"},"name":{"nullable":true,"type":"string"},"imageUrl":{"nullable":true,"type":"string"},"sellingPrice":{"type":"number"},"prices":{"type":"array","items":{"type":"object","properties":{"priceListId":{"nullable":true,"type":"string"},"sellingPrice":{"type":"number"}},"required":["priceListId","sellingPrice"],"additionalProperties":false}},"inStock":{"nullable":true,"type":"boolean"},"sellingUnits":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"sellingPrice":{"type":"number"},"prices":{"type":"array","items":{"type":"object","properties":{"priceListId":{"nullable":true,"type":"string"},"sellingPrice":{"type":"number"}},"required":["priceListId","sellingPrice"],"additionalProperties":false}}},"required":["id","name","sellingPrice","prices"],"additionalProperties":false}}},"required":["variantId","name","imageUrl","sellingPrice","prices","inStock","sellingUnits"],"additionalProperties":false}},"addonGroups":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"mode":{"type":"string","enum":["one","many"]},"required":{"type":"boolean"},"options":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"sellingPrice":{"type":"number"},"preselected":{"type":"boolean"}},"required":["id","name","sellingPrice","preselected"],"additionalProperties":false}}},"required":["id","name","mode","required","options"],"additionalProperties":false}},"soldOut":{"type":"boolean"}},"required":["id","name","description","unitName","category","imageUrl","priceTypes","versions","addonGroups","soldOut"],"additionalProperties":false}}}}},"security":[{"publishableKey":[]}],"summary":"Get a product","tags":["Storefront"]}},"/v1/storefront/orders":{"post":{"description":"Places an order as the online store’s checkout does: for pickup or delivery, paid now by link (payUrl) when the shop takes online payment, else at pickup or on delivery.","operationId":"createOrder","parameters":[{"name":"idempotency-key","required":true,"in":"header","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Any unique string (8–100 letters, digits, - or _). A retry with the same key gets the first answer instead of placing it twice.","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"customerName":{"type":"string","minLength":1,"maxLength":120},"customerPhone":{"type":"string"},"deliverTo":{"nullable":true,"type":"string","maxLength":300},"deliveryZone":{"type":"string","maxLength":60},"lines":{"minItems":1,"maxItems":50,"type":"array","items":{"type":"object","properties":{"variantId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"sellingUnitId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"priceListId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"addons":{"maxItems":30,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"quantity":{"type":"number","minimum":0,"maximum":1000000000},"note":{"nullable":true,"type":"string","maxLength":200}},"required":["variantId","quantity"]}},"note":{"nullable":true,"type":"string","maxLength":500},"fulfilment":{"type":"string","enum":["pickup","delivery"]},"payNow":{"default":false,"type":"boolean"}},"required":["customerName","customerPhone","lines","fulfilment"]}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"number":{"type":"string"},"total":{"type":"number"},"payUrl":{"nullable":true,"type":"string"},"waiting":{"type":"boolean"},"trackUrl":{"nullable":true,"type":"string"}},"required":["id","number","total","payUrl","waiting","trackUrl"],"additionalProperties":false}}}}},"security":[{"publishableKey":[]}],"summary":"Place an order","tags":["Storefront"]}},"/v1/storefront/orders/{id}":{"get":{"description":"Where an order placed online is: waiting for the shop, open, completed or cancelled, what is paid, and its delivery.","operationId":"getOrder","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"number":{"type":"string"},"status":{"type":"string","enum":["waiting","open","completed","cancelled"]},"total":{"type":"number"},"paid":{"type":"number"},"delivery":{"nullable":true,"type":"object","properties":{"status":{"type":"string","enum":["waiting","packed","on_the_way","delivered","failed"]},"trackUrl":{"nullable":true,"type":"string"}},"required":["status","trackUrl"],"additionalProperties":false},"createdAt":{"type":"string","format":"date-time"}},"required":["id","number","status","total","paid","delivery","createdAt"],"additionalProperties":false}}}}},"security":[{"publishableKey":[]}],"summary":"Get an order","tags":["Storefront"]}},"/v1/storefront/services":{"get":{"description":"The services customers can book, with their prices, how long they take and the branches that offer them, and the days bookings are open.","operationId":"listServices","parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"nullable":true,"type":"string"},"sellingPrice":{"nullable":true,"type":"number"},"priceMode":{"nullable":true,"type":"string","enum":["fixed","from","quote"]},"durationMinutes":{"type":"number"},"places":{"type":"array","items":{"type":"string","enum":["shop","visit","online"]}},"askFirst":{"nullable":true,"type":"string"},"imageUrl":{"nullable":true,"type":"string"},"options":{"type":"array","items":{"type":"object","properties":{"variantId":{"type":"string"},"name":{"type":"string"},"imageUrl":{"nullable":true,"type":"string"},"sellingPrice":{"nullable":true,"type":"number"}},"required":["variantId","name","imageUrl","sellingPrice"],"additionalProperties":false}},"priceTypes":{"type":"array","items":{"type":"object","properties":{"id":{"nullable":true,"type":"string"},"name":{"type":"string"}},"required":["id","name"],"additionalProperties":false}},"prices":{"type":"array","items":{"type":"object","properties":{"variantId":{"nullable":true,"type":"string"},"priceListId":{"nullable":true,"type":"string"},"sellingPrice":{"type":"number"}},"required":["variantId","priceListId","sellingPrice"],"additionalProperties":false}},"addonGroups":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"mode":{"type":"string","enum":["one","many"]},"required":{"type":"boolean"},"options":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"sellingPrice":{"type":"number"},"preselected":{"type":"boolean"}},"required":["id","name","sellingPrice","preselected"],"additionalProperties":false}}},"required":["id","name","mode","required","options"],"additionalProperties":false}},"branches":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"workingHours":{"minItems":7,"maxItems":7,"type":"array","items":{"type":"object","properties":{"open":{"type":"boolean"},"from":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"to":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"}},"required":["open","from","to"],"additionalProperties":false}}},"required":["id","name","workingHours"],"additionalProperties":false}}},"required":["id","name","description","sellingPrice","priceMode","durationMinutes","places","askFirst","imageUrl","options","priceTypes","prices","addonGroups","branches"],"additionalProperties":false}},"firstDay":{"type":"string"},"lastDay":{"type":"string"},"payOnline":{"type":"boolean"}},"required":["items","firstDay","lastDay","payOnline"],"additionalProperties":false}}}}},"security":[{"publishableKey":[]}],"summary":"List services","tags":["Storefront"]}},"/v1/storefront/services/times":{"get":{"description":"The start times free for a service on a day, at a branch that offers it.","operationId":"getFreeTimes","parameters":[{"name":"branchId","required":false,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"serviceId","required":true,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"variantId","required":false,"in":"query","schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"withServiceIds","required":false,"in":"query","schema":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"maxItems":50,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}]}},{"name":"date","required":true,"in":"query","schema":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string"},"durationMinutes":{"type":"number"},"slots":{"type":"array","items":{"type":"string"}},"times":{"type":"array","items":{"type":"object","properties":{"time":{"type":"string"},"booked":{"type":"boolean"}},"required":["time","booked"],"additionalProperties":false}},"branchId":{"type":"string"}},"required":["date","durationMinutes","slots","times","branchId"],"additionalProperties":false}}}}},"security":[{"publishableKey":[]}],"summary":"Get free times","tags":["Storefront"]}},"/v1/storefront/bookings":{"post":{"description":"Books one or more services at a free time, confirmed straight away unless the shop confirms bookings itself; payUrl when the services ask for payment when booking.","operationId":"createBooking","parameters":[{"name":"idempotency-key","required":true,"in":"header","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Any unique string (8–100 letters, digits, - or _). A retry with the same key gets the first answer instead of placing it twice.","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"branchId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"customerName":{"type":"string","minLength":1,"maxLength":120},"customerPhone":{"type":"string"},"date":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"startTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"place":{"type":"string","enum":["shop","visit","online"]},"note":{"nullable":true,"type":"string","maxLength":500},"services":{"minItems":1,"maxItems":10,"type":"array","items":{"type":"object","properties":{"serviceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"variantId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"priceListId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"addons":{"maxItems":30,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"answer":{"nullable":true,"type":"string","maxLength":300}},"required":["serviceId"]}},"payNow":{"type":"boolean"}},"required":["customerName","customerPhone","services"]}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"number":{"type":"string"},"status":{"type":"string","enum":["new","confirmed"]},"payUrl":{"nullable":true,"type":"string"}},"required":["number","status","payUrl"],"additionalProperties":false}}}}},"security":[{"publishableKey":[]}],"summary":"Book services","tags":["Storefront"]}}},"info":{"title":"Cashiar Storefront API","description":"Read a shop’s catalogue and services, and place orders and bookings, from your own website or app.","version":"1.0.0","contact":{}},"tags":[{"name":"Storefront","description":"A shop’s catalogue, orders and bookings."}],"servers":[{"url":"https://api.cashiar.app","description":"Production"}],"components":{"securitySchemes":{"publishableKey":{"scheme":"bearer","bearerFormat":"pk_live_…","type":"http","description":"The shop’s publishable key, from Settings, Developers in Cashiar. Safe to use in a browser."}},"schemas":{}}}