{"openapi":"3.1.0","info":{"title":"Nail Pro, Silverdale API","version":"1.0.0","summary":"Read-only business details and service prices for Nail Pro, a nail salon in Silverdale, WA.","description":"Public, read-only JSON API. No authentication or API key is needed. Errors use RFC 9457 problem details (application/problem+json) with `code` and `hint` members. Booking is not available through the API: send people to the booking page.","contact":{"name":"Nail Pro, Silverdale","email":"info@nailprosilverdale.com","url":"https://nailprosilverdale.com/developers/"}},"externalDocs":{"description":"API documentation","url":"https://nailprosilverdale.com/developers/"},"servers":[{"url":"https://nailprosilverdale.com"}],"security":[],"paths":{"/api/business":{"get":{"operationId":"getBusinessInfo","summary":"Get salon contact details and opening hours","description":"Returns the salon's name, phone, email, street address, weekly opening hours (Pacific Time), booking URL, and social profiles.","tags":["Business"],"responses":{"200":{"description":"Business details.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BusinessInfo"}}}},"405":{"description":"Method not allowed. The API is read-only; use GET.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/services":{"get":{"operationId":"listServices","summary":"List services and current prices","description":"Returns the full service menu (manicures, pedicures, acrylics, Gel-X, waxing, kids' services) grouped by category, with prices in US dollars. This is the same data shown on the services page.","tags":["Services"],"responses":{"200":{"description":"The service menu.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceMenu"}}}},"405":{"description":"Method not allowed. The API is read-only; use GET.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"502":{"description":"The content service is unavailable. Retry after the Retry-After delay.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}}},"components":{"schemas":{"BusinessInfo":{"type":"object","required":["name","url","phone","email","address","timeZone","hours","bookingUrl","servicesUrl","socials"],"properties":{"name":{"type":"string","examples":["Nail Pro, Silverdale"]},"url":{"type":"string","format":"uri"},"phone":{"type":"string","examples":["(360)-698-5063"]},"email":{"type":"string","format":"email"},"address":{"type":"string","examples":["3299 NW Randall Way, Ste 103, Silverdale, WA 98383"]},"timeZone":{"type":"string","description":"IANA time zone of the opening hours.","examples":["America/Los_Angeles"]},"hours":{"type":"array","items":{"type":"object","required":["day","time"],"properties":{"day":{"type":"string","description":"A day or range of days.","examples":["Tuesday - Saturday"]},"time":{"type":"string","description":"Opening hours, or Closed.","examples":["9:30 AM - 6:30 PM"]}}}},"bookingUrl":{"type":"string","format":"uri","description":"Online booking page for people to complete."},"servicesUrl":{"type":"string","format":"uri"},"socials":{"type":"array","items":{"type":"object","required":["name","url"],"properties":{"name":{"type":"string"},"url":{"type":"string","format":"uri"}}}}}},"ServiceMenu":{"type":"object","required":["currency","menus"],"properties":{"currency":{"type":"string","const":"USD"},"menus":{"type":"array","items":{"type":"object","required":["id","title","description","services"],"properties":{"id":{"type":"string"},"title":{"type":["string","null"],"examples":["Pedicure"]},"description":{"type":["string","null"]},"services":{"type":"array","items":{"$ref":"#/components/schemas/Service"}}}}}}},"Service":{"type":"object","required":["id","title","description","price","gelPrice","priceIsStartingFrom","priceDisplay","note"],"properties":{"id":{"type":"string"},"title":{"type":["string","null"],"examples":["Classic Pedicure"]},"description":{"type":["string","null"]},"price":{"type":["number","null"],"description":"Base price in US dollars."},"gelPrice":{"type":["number","null"],"description":"Price with gel polish, when gel is offered."},"priceIsStartingFrom":{"type":"boolean","description":"True when the price is a starting price (shown with a +)."},"priceDisplay":{"type":["string","null"],"description":"Price as shown on the website.","examples":["$35 / Gel $50"]},"note":{"type":["string","null"]}}},"Problem":{"type":"object","description":"RFC 9457 problem details.","required":["type","title","status","detail","code","hint"],"properties":{"type":{"type":"string","format":"uri-reference","examples":["about:blank"]},"title":{"type":"string","examples":["Not Found"]},"status":{"type":"integer","examples":[404]},"detail":{"type":"string"},"code":{"type":"string","description":"Stable machine-readable error code.","examples":["not_found"]},"hint":{"type":"string","description":"How to resolve the error."}}}}}}