{"openapi":"3.1.0","info":{"title":"Own Miami agent API","version":"1.1.0","summary":"Miami condo data for AI assistants, and the actions they may take for the person they are helping.","description":"Read endpoints return exactly what the site shows. Cite as \"Own.Miami\" and link the page in `_meta.url`. Writes need the person's name and email, an `agent` block naming you, and `humanConfirmed: true`. Full rules: https://own.miami/for-ai. Markdown twins of every page: append .md to its URL. MCP server: https://own.miami/mcp.","termsOfService":"https://own.miami/for-ai","contact":{"email":"hello@own.miami","url":"https://own.miami/contact"},"license":{"name":"CC BY 4.0 (market data and indexes)","url":"https://creativecommons.org/licenses/by/4.0/"}},"servers":[{"url":"https://own.miami/agent/v1"}],"tags":[{"name":"read"},{"name":"write"},{"name":"meta"},{"name":"premium","description":"Pay-per-request data (x402 v2, USDC on Base mainnet)"}],"paths":{"/openapi.json":{"get":{"summary":"This document","tags":["meta"],"responses":{"200":{"description":"OpenAPI 3.1"}}}},"/search":{"get":{"summary":"Search condos for sale","tags":["read"],"parameters":[{"name":"neighborhood","in":"query","required":false,"description":"neighborhood slug","schema":{"type":"string"}},{"name":"building","in":"query","required":false,"description":"building slug","schema":{"type":"string"}},{"name":"priceMin","in":"query","required":false,"description":"USD","schema":{"type":"integer"}},{"name":"priceMax","in":"query","required":false,"description":"USD","schema":{"type":"integer"}},{"name":"bedsMin","in":"query","required":false,"description":"","schema":{"type":"integer"}},{"name":"bathsMin","in":"query","required":false,"description":"","schema":{"type":"number"}},{"name":"sqftMin","in":"query","required":false,"description":"","schema":{"type":"integer"}},{"name":"waterfront","in":"query","required":false,"description":"1 for waterfront only","schema":{"type":"string"}},{"name":"flag","in":"query","required":false,"description":"a listing flag key (e.g. airbnb_ok, no_special_assessment)","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"newest | price_asc | price_desc | ppsf_asc | dom","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"","schema":{"type":"integer"}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/buildings/{slug}":{"get":{"summary":"A building","tags":["read"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/buildings/{slug}/listings":{"get":{"summary":"Units in a building","tags":["read"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}},{"name":"tab","in":"query","required":false,"description":"for-sale | pending | sold","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"","schema":{"type":"integer"}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/listings/{mls}":{"get":{"summary":"One listing","tags":["read"],"parameters":[{"name":"mls","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/neighborhoods/{slug}":{"get":{"summary":"A neighborhood","tags":["read"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/neighborhoods/{slug}/market-report":{"get":{"summary":"A neighborhood market report","tags":["read"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}},{"name":"month","in":"query","required":false,"description":"YYYY-MM","schema":{"type":"string"}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/financeability":{"get":{"summary":"Financeability Index","tags":["read"],"parameters":[{"name":"neighborhood","in":"query","required":false,"description":"neighborhood slug","schema":{"type":"string"}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/compare":{"get":{"summary":"Compare buildings","tags":["read"],"parameters":[{"name":"b","in":"query","required":false,"description":"comma-separated building slugs (2–4)","schema":{"type":"string"}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/deed-sales":{"get":{"summary":"Countywide recorded condo sales (deeds)","tags":["read"],"parameters":[],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/condo-ownership":{"get":{"summary":"Countywide condo ownership mix by tax-roll year","tags":["read"],"parameters":[],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/public-record-prices":{"get":{"summary":"Public-record house and condo resale prices by year","tags":["read"],"parameters":[],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/layers":{"get":{"summary":"Miami Layers","tags":["read"],"parameters":[],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/layers/{slug}/top-buildings":{"get":{"summary":"Top buildings for a layer","tags":["read"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}},{"name":"neighborhood","in":"query","required":false,"description":"neighborhood slug","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"score | nearest | density","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1 to 50 (default 20)","schema":{"type":"integer","minimum":1,"maximum":50}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/buildings/{slug}/layers":{"get":{"summary":"A building's layer stats","tags":["read"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/developers":{"get":{"summary":"Developer brands with the Developer Score","tags":["read"],"parameters":[],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/developers/{slug}":{"get":{"summary":"One developer brand","tags":["read"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/market-index":{"get":{"summary":"Buyer/Seller Market Index","tags":["read"],"parameters":[{"name":"neighborhood","in":"query","required":false,"description":"neighborhood slug","schema":{"type":"string"}}],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/contact":{"get":{"summary":"The partner agent","tags":["read"],"parameters":[],"responses":{"200":{"description":"The same data the page shows, plus `_meta` (provenance) and `actions`. Dataset reads also carry `citation` (source line, canonical page, methodology).","content":{"application/json":{"schema":{"type":"object","properties":{"_meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}},"additionalProperties":true}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/tour-requests":{"post":{"summary":"Request a showing","tags":["write"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["human","agent","humanConfirmed"],"properties":{"human":{"type":"object","required":["name","email"],"properties":{"name":{"type":"string","maxLength":120},"email":{"type":"string","format":"email"},"phone":{"type":"string","description":"Optional. E.164 or US 10-digit. Only with consent — see the TCPA text on /for-ai."},"contactPref":{"type":"string","enum":["email","phone","whatsapp","text"]},"consent":{"type":"object","properties":{"contact":{"type":"boolean"},"sms":{"type":"boolean"},"textVersion":{"type":"string","enum":["tcpa-v1"]}}}}},"agent":{"type":"object","required":["vendor","name"],"properties":{"vendor":{"type":"string","description":"Who you are: openai, anthropic, google, microsoft, perplexity, … (free text is normalised)"},"name":{"type":"string","description":"The assistant or model name as you present it"},"userAgent":{"type":"string"},"conversationRef":{"type":"string","description":"An opaque reference you can use to find the conversation again. Never send a transcript."}}},"humanConfirmed":{"type":"boolean","const":true,"description":"You attest the person asked for this action."},"listingKey":{"type":"string"},"buildingSlug":{"type":"string"},"preferredTimes":{"type":"array","maxItems":3,"items":{"type":"object","properties":{"date":{"type":"string","format":"date"},"window":{"type":"string","enum":["morning","afternoon","evening"]}}}},"message":{"type":"string","maxLength":2000}}}}}},"responses":{"201":{"description":"Submitted. The person receives a confirmation email; poll statusUrl for progress.","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"requestId":{"type":"string"},"status":{"type":"string"},"statusUrl":{"type":"string"},"statusToken":{"type":"string"},"confirmationEmailSent":{"type":"boolean"},"contact":{"type":"object"}}}}}},"400":{"description":"400","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"409":{"description":"409","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"422":{"description":"422","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/questions":{"post":{"summary":"Ask about a listing or building","tags":["write"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["human","agent","humanConfirmed","message"],"properties":{"human":{"type":"object","required":["name","email"],"properties":{"name":{"type":"string","maxLength":120},"email":{"type":"string","format":"email"},"phone":{"type":"string","description":"Optional. E.164 or US 10-digit. Only with consent — see the TCPA text on /for-ai."},"contactPref":{"type":"string","enum":["email","phone","whatsapp","text"]},"consent":{"type":"object","properties":{"contact":{"type":"boolean"},"sms":{"type":"boolean"},"textVersion":{"type":"string","enum":["tcpa-v1"]}}}}},"agent":{"type":"object","required":["vendor","name"],"properties":{"vendor":{"type":"string","description":"Who you are: openai, anthropic, google, microsoft, perplexity, … (free text is normalised)"},"name":{"type":"string","description":"The assistant or model name as you present it"},"userAgent":{"type":"string"},"conversationRef":{"type":"string","description":"An opaque reference you can use to find the conversation again. Never send a transcript."}}},"humanConfirmed":{"type":"boolean","const":true,"description":"You attest the person asked for this action."},"listingKey":{"type":"string"},"buildingSlug":{"type":"string"},"message":{"type":"string","maxLength":2000}}}}}},"responses":{"201":{"description":"Submitted. The person receives a confirmation email; poll statusUrl for progress.","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"requestId":{"type":"string"},"status":{"type":"string"},"statusUrl":{"type":"string"},"statusToken":{"type":"string"},"confirmationEmailSent":{"type":"boolean"},"contact":{"type":"object"}}}}}},"400":{"description":"400","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"409":{"description":"409","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"422":{"description":"422","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/interest":{"post":{"summary":"Register interest","tags":["write"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["human","agent","humanConfirmed"],"properties":{"human":{"type":"object","required":["name","email"],"properties":{"name":{"type":"string","maxLength":120},"email":{"type":"string","format":"email"},"phone":{"type":"string","description":"Optional. E.164 or US 10-digit. Only with consent — see the TCPA text on /for-ai."},"contactPref":{"type":"string","enum":["email","phone","whatsapp","text"]},"consent":{"type":"object","properties":{"contact":{"type":"boolean"},"sms":{"type":"boolean"},"textVersion":{"type":"string","enum":["tcpa-v1"]}}}}},"agent":{"type":"object","required":["vendor","name"],"properties":{"vendor":{"type":"string","description":"Who you are: openai, anthropic, google, microsoft, perplexity, … (free text is normalised)"},"name":{"type":"string","description":"The assistant or model name as you present it"},"userAgent":{"type":"string"},"conversationRef":{"type":"string","description":"An opaque reference you can use to find the conversation again. Never send a transcript."}}},"humanConfirmed":{"type":"boolean","const":true,"description":"You attest the person asked for this action."},"developmentSlug":{"type":"string"},"buildingSlug":{"type":"string"},"message":{"type":"string","maxLength":2000}}}}}},"responses":{"201":{"description":"Submitted. The person receives a confirmation email; poll statusUrl for progress.","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"requestId":{"type":"string"},"status":{"type":"string"},"statusUrl":{"type":"string"},"statusToken":{"type":"string"},"confirmationEmailSent":{"type":"boolean"},"contact":{"type":"object"}}}}}},"400":{"description":"400","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"409":{"description":"409","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"422":{"description":"422","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/alerts":{"post":{"summary":"Set up a listing alert (confirmed by the person by email)","tags":["write"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["human","agent","humanConfirmed","filters"],"properties":{"human":{"type":"object","required":["email"],"properties":{"name":{"type":"string"},"email":{"type":"string","format":"email"}}},"agent":{"type":"object","required":["vendor","name"],"properties":{"vendor":{"type":"string","description":"Who you are: openai, anthropic, google, microsoft, perplexity, … (free text is normalised)"},"name":{"type":"string","description":"The assistant or model name as you present it"},"userAgent":{"type":"string"},"conversationRef":{"type":"string","description":"An opaque reference you can use to find the conversation again. Never send a transcript."}}},"humanConfirmed":{"type":"boolean","const":true,"description":"You attest the person asked for this action."},"filters":{"type":"object","description":"The site search vocabulary — same names as /search query parameters."},"frequency":{"type":"string","enum":["instant","daily","weekly"],"default":"daily"}}}}}},"responses":{"200":{"description":"A confirmation email was sent; the alert starts when the person clicks it.","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"outcome":{"type":"string","const":"confirmation_sent"},"preview":{"type":"object","properties":{"count":{"type":"integer"},"name":{"type":"string"}}}}}}}},"400":{"description":"400","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/concierge":{"post":{"summary":"Ask the grounded concierge","tags":["write"],"description":"Requires an agent key (x-agent-key). The answer is composed by a model but every number is verified against the database and the text is fair-housing screened; recommendations carry page URLs to cite.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["agent","message"],"properties":{"agent":{"type":"object","required":["vendor","name"],"properties":{"vendor":{"type":"string","description":"Who you are: openai, anthropic, google, microsoft, perplexity, … (free text is normalised)"},"name":{"type":"string","description":"The assistant or model name as you present it"},"userAgent":{"type":"string"},"conversationRef":{"type":"string","description":"An opaque reference you can use to find the conversation again. Never send a transcript."}}},"message":{"type":"string","maxLength":600},"context":{"type":"object","properties":{"listingKey":{"type":"string"},"buildingSlug":{"type":"string"},"neighborhoodSlug":{"type":"string"}}},"conversationId":{"type":"string","description":"From a previous answer, to continue the thread"}}}}}},"responses":{"200":{"description":"Answer text, recommendations (listings/buildings with URLs), confidence, conversationId","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"400","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"401":{"description":"401","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"503":{"description":"503","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/premium":{"get":{"summary":"Premium data for sale (free): products, prices, network, how to pay","tags":["premium"],"responses":{"200":{"description":"Catalog","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/premium/buildings/{slug}/due-diligence":{"get":{"summary":"Condo building due-diligence report (public records) — $1.00 per call (x402, USDC)","description":"Everything the public record says about one Miami condo building, sourced and dated, with a deterministic risk summary a buyer can act on. Identity chain: recorded condo name and parent folios (Property Appraiser), the association entity and its Sunbiz status / annual reports, the DBPR condominium project, managing entity and developer of record, and the developer brand. Financing: Financeability Index (0–100) with its 12/24-month aggregates from recorded mortgages and deeds — bank-financed share of sales, lowest / median down payment, lending mix by purpose, programme, rate type and sworn occupancy, institutional vs private share, distinct-lender count, LTV bands, satisfactions, loans and recorded sales by year, turnover — plus FHA / VA approvals and the Property Appraiser ownership mix (owner-occupied, entity, foreign, largest owner). Health: City of Miami 40/50-year recertification status, other verified official records, and when county records / DBPR / the docket were last searched. Legal & regulatory: civil cases involving the association by own.miami case type (construction defect, insurance, disputes, collections…) with reviewed summaries, and DBPR complaint / discipline counts. Risk summary: score, level and flags with plain-language explanations and what to ask the association next. Each section carries its as-of date; data refresh nightly to weekly by source. Aggregates only — no individual loans, lenders, party names or case numbers; no MLS data (prices, listings, $/sqft — free at own.miami). JSON by default, `?format=md` for a markdown report.\n\nPaid per request with the x402 protocol (v2, scheme exact, USDC on Base mainnet). You are charged only when the response is 2xx; validation errors (400/404) are free and never ask for payment.","tags":["premium"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9-]{1,80}$","description":"Building slug (lower-case, as in own.miami URLs, e.g. /buildings/<slug>). Path parameter.","in":"path"}},{"name":"format","in":"query","required":false,"schema":{"type":"string","enum":["json","md"],"default":"json","description":"json (default) or md for a markdown report","in":"query"}}],"x-payment-info":{"protocol":"x402","x402Version":2,"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xcB5e685a8D2A93dDe1C80CaC45345E26Bf0c91Cf","priceUsd":1},"responses":{"200":{"description":"The paid data. `PAYMENT-RESPONSE` carries the settlement receipt (transaction hash).","headers":{"PAYMENT-RESPONSE":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object"},"example":{"product":"building_due_diligence","version":1,"asOf":"2026-10-04","building":{"slug":"example-bay-tower","name":"Example Bay Tower","url":"https://own.miami/buildings/example-bay-tower","address":"100 NE Example St","city":"Miami","postalCode":"33137","neighborhood":{"slug":"edgewater","name":"Edgewater"}},"riskSummary":{"level":"moderate","score":84,"coverage":"high","rulesVersion":"dd-risk-2026-10-04","headline":"Moderate public-record risk (84/100): 2026 recertification in progress; 1 active material lawsuit involving the association.","flags":[{"id":"recert_in_progress","severity":"medium","points":10,"title":"2026 recertification in progress","explanation":"A 2026 recertification plan is open with the City of Miami…","action":"Ask whether the inspection found required repairs…"}],"positives":[{"id":"banks_lending","severity":"positive","points":0,"title":"Banks are lending here — Financeability 78/100 (strong)","explanation":"…","action":null}],"gaps":[]},"identity":{"recordedCondoName":"EXAMPLE BAY TOWER CONDO","parcels":{"parentFolios":["0132310000000"],"residentialUnits":{"value":240,"source":"Miami-Dade Property Appraiser (residential condo folios)"}},"associations":[{"legalName":"EXAMPLE BAY TOWER CONDOMINIUM ASSOCIATION, INC.","sunbizDocNumber":"N00000000000","status":"ACTIVE","dateFiled":"2015-03-02","lastAnnualReportYear":2026,"primary":true,"umbrella":false}],"dbpr":{"managingEntity":{"name":"Example Bay Tower Condominium Association, Inc.","licenseNumber":"0000","status":"Current, Active"},"project":{"name":"Example Bay Tower, a Condominium","recordedDate":"2016-11-18","status":"Approved,Recorded"},"developerOfRecord":{"name":"EXAMPLE BAY DEVELOPER LLC"}},"developerBrand":{"name":"Example Development Group","slug":"example-development-group","role":"lead"}},"physical":{"yearBuilt":{"value":2017,"source":"own.miami research"},"ageYears":9,"declarationRecorded":"2016-11-18","withheld":[]},"financing":{"available":true,"financeability":{"index":78,"tier":"strong","confidence":"high","mortgages":21,"institutional":18,"purchase":11,"sales":19,"financedSharePct":58,"minDownPct":10,"medianDownPct":20,"avgDownPct":22.4},"lending":{"primaryLoans":39,"institutional":33,"privateLender":4,"institutionalSharePct":85,"distinctInstitutionalLenders":14,"trend":"steady","occupancy":{"primary":12,"second_home":9,"investment":6,"unknown":12}},"recordedSales":{"last12":19,"turnover12Pct":7.9,"byYear":[{"year":2025,"sales":22,"medianRecordedPrice":715000}]},"governmentPrograms":[{"program":"va","expirationDate":null,"note":null}],"ownership":{"ownerOccupiedShare":0.41,"entityOwnedShare":0.33,"foreignOwnedShare":0.22,"topOwnerShare":0.03}},"health":{"verifiedClean":{"checkedAt":"2026-09-21T03:30:00Z","clean":false},"recertification":{"cycleYear":2026,"certificationStatus":"Pending","planStatus":"In Review","severity":"watch"}},"legal":{"checked":true,"materialActive":1,"materialStructuralActive":0,"disputesActive":0,"collectionsRecent":3,"byType":[{"label":"Insurance claim","category":"material","open":1,"closed":0}],"dbpr":{"complaints36m":1,"open":0,"disciplined36m":0}},"freshness":[{"section":"financing","asOf":"2026-10-04","note":"Financeability recomputed nightly…"}],"sources":[{"id":"dbpr","name":"Florida DBPR — Division of Condominiums…","url":"https://www.myfloridalicense.com/wl11.asp"}],"caveats":["Public records lag reality…"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"402":{"description":"Payment required (x402 v2). The base64 JSON `PAYMENT-REQUIRED` header lists `accepts` (scheme exact, USDC on the network below, amount in atomic units, payTo); the body mirrors it. Retry with a `PAYMENT-SIGNATURE` header.","headers":{"PAYMENT-REQUIRED":{"schema":{"type":"string"},"description":"base64-encoded PaymentRequired JSON"}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"string","const":"PAYMENT_REQUIRED"},"x402Version":{"type":"integer"},"accepts":{"type":"array","items":{"type":"object"}},"resource":{"type":"object"}}}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"502":{"description":"502","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"503":{"description":"PREMIUM_DISABLED (payments are off — nothing is served free) or PAYMENT_UNAVAILABLE (facilitator down; retry later)","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/premium/compare/due-diligence":{"get":{"summary":"Side-by-side due diligence for 2–4 condo buildings — $2.50 per call (x402, USDC)","description":"The public-record sections of 2–4 buildings side by side — risk score and top findings, identity chain completeness, Financeability Index, bank-financed share, lowest down payment, FHA/VA, owner-occupancy and ownership concentration, recorded turnover, recertification, litigation (material / structural / disputes / collections) and DBPR complaints — with a ranking per metric, plain-language highlights and an overall order. Built from the same reports as building_due_diligence (same sources, same as-of dates); no MLS prices. `b` = comma-separated slugs. `?format=md` for markdown.\n\nPaid per request with the x402 protocol (v2, scheme exact, USDC on Base mainnet). You are charged only when the response is 2xx; validation errors (400/404) are free and never ask for payment.","tags":["premium"],"parameters":[{"name":"b","in":"query","required":true,"schema":{"type":"string","description":"2–4 building slugs, comma-separated (e.g. \"icon-bay,paraiso-bay\")","in":"query"}},{"name":"format","in":"query","required":false,"schema":{"type":"string","enum":["json","md"],"default":"json","description":"json (default) or md","in":"query"}}],"x-payment-info":{"protocol":"x402","x402Version":2,"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xcB5e685a8D2A93dDe1C80CaC45345E26Bf0c91Cf","priceUsd":2.5},"responses":{"200":{"description":"The paid data. `PAYMENT-RESPONSE` carries the settlement receipt (transaction hash).","headers":{"PAYMENT-RESPONSE":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object"},"example":{"product":"building_due_diligence_compare","version":1,"asOf":"2026-10-04","buildings":[{"slug":"example-bay-tower","name":"Example Bay Tower","riskLevel":"moderate","riskScore":84,"financeabilityIndex":78,"materialLitigationActive":1},{"slug":"example-park-residences","name":"Example Park Residences","riskLevel":"low","riskScore":100,"financeabilityIndex":64,"materialLitigationActive":0}],"rankings":[{"metric":"riskScore","label":"Public-record risk score (100 = nothing adverse)","better":"higher","ranking":[{"slug":"example-park-residences","value":100,"rank":1},{"slug":"example-bay-tower","value":84,"rank":2}]}],"highlights":["Public-record risk score (100 = nothing adverse): Example Park Residences leads (100) vs Example Bay Tower 84."],"overall":[{"slug":"example-park-residences","name":"Example Park Residences","rank":1,"why":"low risk (100/100), Financeability 64 — no adverse public record found"}]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"402":{"description":"Payment required (x402 v2). The base64 JSON `PAYMENT-REQUIRED` header lists `accepts` (scheme exact, USDC on the network below, amount in atomic units, payTo); the body mirrors it. Retry with a `PAYMENT-SIGNATURE` header.","headers":{"PAYMENT-REQUIRED":{"schema":{"type":"string"},"description":"base64-encoded PaymentRequired JSON"}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"string","const":"PAYMENT_REQUIRED"},"x402Version":{"type":"integer"},"accepts":{"type":"array","items":{"type":"object"}},"resource":{"type":"object"}}}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"502":{"description":"502","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"503":{"description":"PREMIUM_DISABLED (payments are off — nothing is served free) or PAYMENT_UNAVAILABLE (facilitator down; retry later)","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/premium/datasets/financeability":{"get":{"summary":"Miami condo financeability dataset (every building) — $10.00 per call (x402, USDC)","description":"One row per published Miami condo building (or one neighborhood with `?neighborhood=<slug>`): Financeability Index, tier and confidence; 12-month mortgages, regulated-lender loans, bank-financed purchases, recorded sales and financed share; lowest / median / average down payment (24 m); 24-month lending mix (purpose, programme, ARM, investment / second-home occupancy, private-lender share, distinct institutional lenders, median purchase loan, satisfactions, trend); recorded sales and turnover; FHA / VA approval with expiry; Property Appraiser ownership mix and median last recorded sale. Read from Miami-Dade recorded mortgages and deeds, Property Appraiser sales history and HUD / VA lists; recomputed nightly (`asOf` per row). Aggregates only — no individual loans, lenders or parties; no MLS data. Methodology: https://own.miami/methodology#financeability-index. JSON by default, `?format=csv` for a spreadsheet.\n\nPaid per request with the x402 protocol (v2, scheme exact, USDC on Base mainnet). You are charged only when the response is 2xx; validation errors (400/404) are free and never ask for payment.","tags":["premium"],"parameters":[{"name":"neighborhood","in":"query","required":false,"schema":{"type":"string","pattern":"^[a-z0-9-]{1,80}$","description":"Optional neighborhood slug (e.g. \"edgewater\", \"brickell\"); omit for all of Miami","in":"query"}},{"name":"format","in":"query","required":false,"schema":{"type":"string","enum":["json","csv"],"default":"json","description":"json (default) or csv","in":"query"}}],"x-payment-info":{"protocol":"x402","x402Version":2,"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xcB5e685a8D2A93dDe1C80CaC45345E26Bf0c91Cf","priceUsd":10},"responses":{"200":{"description":"The paid data. `PAYMENT-RESPONSE` carries the settlement receipt (transaction hash).","headers":{"PAYMENT-RESPONSE":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object"},"example":{"product":"financeability_dataset","version":1,"asOf":"2026-10-04","scope":{"neighborhood":{"slug":"edgewater","name":"Edgewater"}},"summary":{"buildings":61,"withLendingRead":58,"financeable":23,"medianIndex":47,"fhaApproved":2,"vaApproved":11},"rows":[{"building":{"slug":"example-bay-tower","name":"Example Bay Tower","url":"https://own.miami/buildings/example-bay-tower","address":"100 NE Example St","city":"Miami","postalCode":"33137","neighborhood":{"slug":"edgewater","name":"Edgewater"}},"residentialUnits":240,"asOf":"2026-10-04","financeability":{"index":78,"tier":"strong","confidence":"high","institutional":18,"financedSharePct":58,"minDownPct":10},"lending":{"primaryLoans":39,"institutionalSharePct":85,"trend":"steady"},"recordedSales":{"last12":19,"turnover12Pct":7.9},"governmentPrograms":[{"program":"va","expirationDate":null}],"ownership":{"ownerOccupiedShare":0.41,"topOwnerShare":0.03}}]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"402":{"description":"Payment required (x402 v2). The base64 JSON `PAYMENT-REQUIRED` header lists `accepts` (scheme exact, USDC on the network below, amount in atomic units, payTo); the body mirrors it. Retry with a `PAYMENT-SIGNATURE` header.","headers":{"PAYMENT-REQUIRED":{"schema":{"type":"string"},"description":"base64-encoded PaymentRequired JSON"}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"string","const":"PAYMENT_REQUIRED"},"x402Version":{"type":"integer"},"accepts":{"type":"array","items":{"type":"object"}},"resource":{"type":"object"}}}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"502":{"description":"502","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"503":{"description":"PREMIUM_DISABLED (payments are off — nothing is served free) or PAYMENT_UNAVAILABLE (facilitator down; retry later)","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/premium/developers/{slug}/track-record":{"get":{"summary":"Developer track record from public records — $2.50 per call (x402, USDC)","description":"How a Miami condo developer’s buildings have held up, from the public record: every building credited to the brand (lead / joint-venture partner, via the DBPR developer-of-record LLCs), whether each is delivered (DBPR project recorded, units split at the Property Appraiser, recorded resales), units, recording dates, and per building the due-diligence risk score, Financeability Index, recertification status, construction-defect / structural / developer lawsuits on the civil docket (open and closed) and DBPR complaints. Roll-up: defect-litigation rate across delivered buildings, risk-level distribution, unit-weighted risk score, recertification problems, DBPR discipline, financeability median, plus a plain-language verdict. For pre-construction buyers vetting a developer. No prices or Developer Score (MLS-derived); no party names or case numbers. `?format=md` for markdown.\n\nPaid per request with the x402 protocol (v2, scheme exact, USDC on Base mainnet). You are charged only when the response is 2xx; validation errors (400/404) are free and never ask for payment.","tags":["premium"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9-]{1,80}$","description":"Developer slug (lower-case, as in own.miami URLs, e.g. /buildings/<slug>). Path parameter.","in":"path"}},{"name":"format","in":"query","required":false,"schema":{"type":"string","enum":["json","md"],"default":"json","description":"json (default) or md","in":"query"}}],"x-payment-info":{"protocol":"x402","x402Version":2,"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xcB5e685a8D2A93dDe1C80CaC45345E26Bf0c91Cf","priceUsd":2.5},"responses":{"200":{"description":"The paid data. `PAYMENT-RESPONSE` carries the settlement receipt (transaction hash).","headers":{"PAYMENT-RESPONSE":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object"},"example":{"product":"developer_track_record","version":1,"asOf":"2026-10-04","developer":{"slug":"example-development-group","name":"Example Development Group","url":"https://own.miami/developers/example-development-group"},"portfolio":{"buildings":9,"lead":7,"partner":2,"delivered":7,"preDeliveryOrUnverified":2,"residentialUnits":2140,"firstDeclaration":"2006-04-12","lastDeclaration":"2021-08-30"},"record":{"buildingsWithDefectOrDeveloperLitigation":2,"docketChecked":7,"defectLitigationRatePct":29,"riskLevels":{"low":4,"moderate":2,"elevated":1,"high":0},"unitWeightedRiskScore":86,"financeabilityMedian":61},"verdict":["2 of 7 delivered, docket-checked buildings (29%) have had a construction-defect, structural or developer lawsuit (0 open, 3 closed)."]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"402":{"description":"Payment required (x402 v2). The base64 JSON `PAYMENT-REQUIRED` header lists `accepts` (scheme exact, USDC on the network below, amount in atomic units, payTo); the body mirrors it. Retry with a `PAYMENT-SIGNATURE` header.","headers":{"PAYMENT-REQUIRED":{"schema":{"type":"string"},"description":"base64-encoded PaymentRequired JSON"}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"string","const":"PAYMENT_REQUIRED"},"x402Version":{"type":"integer"},"accepts":{"type":"array","items":{"type":"object"}},"resource":{"type":"object"}}}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"429":{"description":"429","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"502":{"description":"502","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}},"503":{"description":"PREMIUM_DISABLED (payments are off — nothing is served free) or PAYMENT_UNAVAILABLE (facilitator down; retry later)","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}},"/requests/{id}":{"get":{"summary":"Status of a request","tags":["read"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"token","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"id, type, status (new | acknowledged | scheduled | completed | canceled), createdAt, handledAt — no personal data","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"404","content":{"application/json":{"schema":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}}}}}}}}},"components":{"schemas":{"Human":{"type":"object","required":["name","email"],"properties":{"name":{"type":"string","maxLength":120},"email":{"type":"string","format":"email"},"phone":{"type":"string","description":"Optional. E.164 or US 10-digit. Only with consent — see the TCPA text on /for-ai."},"contactPref":{"type":"string","enum":["email","phone","whatsapp","text"]},"consent":{"type":"object","properties":{"contact":{"type":"boolean"},"sms":{"type":"boolean"},"textVersion":{"type":"string","enum":["tcpa-v1"]}}}}},"Agent":{"type":"object","required":["vendor","name"],"properties":{"vendor":{"type":"string","description":"Who you are: openai, anthropic, google, microsoft, perplexity, … (free text is normalised)"},"name":{"type":"string","description":"The assistant or model name as you present it"},"userAgent":{"type":"string"},"conversationRef":{"type":"string","description":"An opaque reference you can use to find the conversation again. Never send a transcript."}}},"Error":{"type":"object","required":["error","code"],"properties":{"error":{"type":"string"},"code":{"type":"string"},"hint":{"type":"string"},"retryAfter":{"type":"integer"},"requestId":{"type":"string"},"statusUrl":{"type":"string"}}},"WriteResult":{"type":"object","properties":{"ok":{"type":"boolean"},"requestId":{"type":"string"},"status":{"type":"string"},"statusUrl":{"type":"string"},"statusToken":{"type":"string"},"confirmationEmailSent":{"type":"boolean"},"contact":{"type":"object"}}},"Meta":{"type":"object","description":"Provenance: cite `source` and link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string"},"attribution":{"type":"string"},"license":{"type":"string"},"methodology":{"type":"string"},"forAi":{"type":"string"},"generatedAt":{"type":"string","format":"date-time"}}},"Actions":{"type":"array","description":"What you can do next for the person, with the exact call.","items":{"type":"object","properties":{"action":{"type":"string"},"description":{"type":"string"},"method":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"}}}},"Citation":{"type":"object","description":"How to cite a dataset read: name the source line, link `url`.","properties":{"source":{"type":"string"},"url":{"type":"string","format":"uri"},"methodology":{"type":"string","format":"uri"}}}}},"x-error-codes":["AGENT_ATTESTATION_REQUIRED","HUMAN_CONFIRMATION_REQUIRED","EMAIL_INVALID","EMAIL_DISPOSABLE","NAME_REQUIRED","TARGET_REQUIRED","MESSAGE_REQUIRED","CONSENT_REQUIRED","PHONE_INVALID","FAIR_HOUSING_SCREEN","DUPLICATE_REQUEST","FILTERS_REQUIRED","FILTERS_TOO_BROAD","RATE_LIMITED","NOT_FOUND","KEY_INVALID","PAYMENT_REQUIRED","PREMIUM_DISABLED","PAYMENT_UNAVAILABLE","FACILITATOR_ERROR","SETTLEMENT_FAILED"]}