{"openapi":"3.0.3","info":{"title":"Dennis Ow, Lyon RE Roseville — MiddleVerse Business API","description":"Professional real estate agent Dennis Ow with Windermere Real Estate specializes in homes for sale in Windermere Signature Properties, CA. Get free home evaluations, daily property updates, area market reports, and more.\n\nMachine-readable API for Dennis Ow, Lyon RE Roseville on MiddleVerse. Live profile: https://middleverse.ai/b/dennis-ow-lyon-re-roseville-roseville","version":"1.0.0","contact":{"name":"MiddleVerse","url":"https://middleverse.ai"}},"servers":[{"url":"https://middleverse.ai","description":"Production"}],"tags":[{"name":"Dennis Ow, Lyon RE Roseville","description":"Real Estate Agent"}],"paths":{"/api/v1/b/dennis-ow-lyon-re-roseville-roseville":{"get":{"tags":["Dennis Ow, Lyon RE Roseville"],"operationId":"getBusiness","summary":"Get Dennis Ow, Lyon RE Roseville profile, products, services, and hours","responses":{"200":{"description":"Business profile with products, services, hours, and links","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BusinessResponse"}}}},"404":{"description":"Business not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/api/v1/b/dennis-ow-lyon-re-roseville-roseville/products":{"get":{"tags":["Dennis Ow, Lyon RE Roseville"],"operationId":"getProducts","summary":"List products offered by Dennis Ow, Lyon RE Roseville","responses":{"200":{"description":"Product list","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductsResponse"}}}},"404":{"description":"Business not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/api/v1/b/dennis-ow-lyon-re-roseville-roseville/services":{"get":{"tags":["Dennis Ow, Lyon RE Roseville"],"operationId":"getServices","summary":"List services offered by Dennis Ow, Lyon RE Roseville","responses":{"200":{"description":"Service list","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServicesResponse"}}}},"404":{"description":"Business not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/api/v1/b/dennis-ow-lyon-re-roseville-roseville/availability":{"get":{"tags":["Dennis Ow, Lyon RE Roseville"],"operationId":"getAvailability","summary":"Get Dennis Ow, Lyon RE Roseville business hours and booked slots","parameters":[{"name":"startDate","in":"query","required":false,"schema":{"type":"string","format":"date"},"description":"Range start (YYYY-MM-DD, default today)"},{"name":"endDate","in":"query","required":false,"schema":{"type":"string","format":"date"},"description":"Range end (YYYY-MM-DD, default +30 days)"}],"responses":{"200":{"description":"Business hours and already-booked slots","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AvailabilityResponse"}}}},"404":{"description":"Business not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"schemas":{"Error":{"type":"object","properties":{"success":{"type":"boolean"},"error":{"type":"string"}}},"Business":{"type":"object","properties":{"slug":{"type":"string"},"name":{"type":"string"},"canonicalUrl":{"type":"string","format":"uri","description":"Canonical MiddleVerse profile URL"},"businessId":{"type":"string","format":"uri","description":"Stable Schema.org business entity ID"},"description":{"type":"string","nullable":true},"category":{"type":"string","nullable":true},"schemaType":{"type":"string","description":"Resolved Schema.org LocalBusiness type"},"phone":{"type":"string","nullable":true},"email":{"type":"string","nullable":true},"address":{"type":"object","nullable":true},"city":{"type":"string","nullable":true},"state":{"type":"string","nullable":true},"zip_code":{"type":"string","nullable":true},"coordinates":{"type":"object","nullable":true},"claimed":{"type":"boolean"},"verified":{"type":"boolean"}}},"Product":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string","nullable":true},"category":{"type":"string","nullable":true},"price":{"type":"number","nullable":true},"sale_price":{"type":"number","nullable":true},"currency":{"type":"string","nullable":true}}},"Service":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string","nullable":true},"category":{"type":"string","nullable":true},"price":{"type":"number","nullable":true},"currency":{"type":"string","nullable":true},"duration_minutes":{"type":"integer","nullable":true},"bookable_online":{"type":"boolean","nullable":true}}},"Links":{"type":"object","properties":{"self":{"type":"string"},"profile":{"type":"string"},"bookings":{"type":"string"},"products":{"type":"string"},"services":{"type":"string"},"openapi":{"type":"string"}}},"BusinessResponse":{"type":"object","properties":{"success":{"type":"boolean"},"business":{"$ref":"#/components/schemas/Business"},"products":{"type":"array","items":{"$ref":"#/components/schemas/Product"}},"services":{"type":"array","items":{"$ref":"#/components/schemas/Service"}},"hours":{"type":"object","nullable":true},"links":{"$ref":"#/components/schemas/Links"}}},"ProductsResponse":{"type":"object","properties":{"success":{"type":"boolean"},"business":{"type":"string"},"count":{"type":"integer"},"products":{"type":"array","items":{"$ref":"#/components/schemas/Product"}},"links":{"$ref":"#/components/schemas/Links"}}},"ServicesResponse":{"type":"object","properties":{"success":{"type":"boolean"},"business":{"type":"string"},"count":{"type":"integer"},"services":{"type":"array","items":{"$ref":"#/components/schemas/Service"}},"links":{"$ref":"#/components/schemas/Links"}}},"AvailabilityResponse":{"type":"object","properties":{"success":{"type":"boolean"},"business":{"type":"string"},"businessHours":{"type":"object","nullable":true},"bookedSlots":{"type":"array","items":{"type":"object"}},"status":{"type":"string"},"links":{"$ref":"#/components/schemas/Links"}}}}}}