{"openapi":"3.1.0","info":{"title":"Orama public surface","version":"1","description":"What a business published, read by agents. Anonymous and read-only. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private."},"servers":[{"url":"/"}],"paths":{"/b/{slug}":{"get":{"summary":"The business's entry page","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"text/html":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The business's entry page","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/manifest.json":{"get":{"summary":"The release manifest","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Manifest"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The release manifest","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/agents.json":{"get":{"summary":"Machine-readable instructions for agents: ask, facts, MCP, pages","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"Machine-readable instructions for agents: ask, facts, MCP, pages","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/llms.txt":{"get":{"summary":"The release in llms.txt form","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"text/plain":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The release in llms.txt form","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/facts.json":{"get":{"summary":"Every published fact of the business in one read","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FactsSheet"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"Every published fact of the business in one read","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/facts.txt":{"get":{"summary":"The same facts as plain text","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"text/plain":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The same facts as plain text","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/search-index.json":{"get":{"summary":"The release's search index","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The release's search index","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/facet-vectors.json":{"get":{"summary":"The release's facet vectors","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The release's facet vectors","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/robots.txt":{"get":{"summary":"robots.txt","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"text/plain":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"robots.txt","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/sitemap.xml":{"get":{"summary":"The sitemap","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/xml":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The sitemap","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/n/{node}":{"get":{"summary":"One page, as HTML","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"node","in":"path","required":true,"description":"A page id (`pn_…`) from the manifest.","schema":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"text/html":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"One page, as HTML","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"node","in":"path","required":true,"description":"A page id (`pn_…`) from the manifest.","schema":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/n/{node}.json":{"get":{"summary":"One page, as JSON","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"node","in":"path","required":true,"description":"A page id (`pn_…`) from the manifest.","schema":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicNode"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"One page, as JSON","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"node","in":"path","required":true,"description":"A page id (`pn_…`) from the manifest.","schema":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/releases.json":{"get":{"summary":"Every release the business ever served, with digest, signature and times","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"Every release the business ever served, with digest, signature and times","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/ask":{"get":{"summary":"Ask a question (GET)","description":"The format follows the Accept header: application/json (default), text/plain or text/html. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"q","in":"query","required":true,"description":"The question (`query` and `question` are accepted as aliases). Exactly one of them.","schema":{"type":"string","minLength":1,"maxLength":1000}},{"name":"locale","in":"query","required":false,"description":"A language tag such as `en`.","schema":{"type":"string","pattern":"^[A-Za-z]{2,8}(-[A-Za-z0-9]{1,8})*$"}}],"responses":{"200":{"description":"A cited answer (or a refusal to answer) from what the business published.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskResponse"}},"text/plain":{"schema":{"type":"string"}},"text/html":{"schema":{"type":"string"}}}},"400":{"description":"The request is not valid (`invalid_request`, with a `reason`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"invalid_request"}}}}},"404":{"description":"No such business (`not_found`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"413":{"description":"The body is larger than the limit (`payload_too_large`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"payload_too_large"}}}}},"415":{"description":"The body is not JSON (`unsupported_media_type`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unsupported_media_type"}}}}},"429":{"description":"Too many questions (`rate_limited`, with `rule` and `retryAfterSeconds`; also a `Retry-After` header).","headers":{"Retry-After":{"schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"post":{"summary":"Ask a question (POST)","description":"Always answers JSON. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskRequest"}}}},"responses":{"200":{"description":"A cited answer (or a refusal to answer) from what the business published.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskResponse"}},"text/plain":{"schema":{"type":"string"}},"text/html":{"schema":{"type":"string"}}}},"400":{"description":"The request is not valid (`invalid_request`, with a `reason`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"invalid_request"}}}}},"404":{"description":"No such business (`not_found`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"413":{"description":"The body is larger than the limit (`payload_too_large`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"payload_too_large"}}}}},"415":{"description":"The body is not JSON (`unsupported_media_type`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unsupported_media_type"}}}}},"429":{"description":"Too many questions (`rate_limited`, with `rule` and `retryAfterSeconds`; also a `Retry-After` header).","headers":{"Retry-After":{"schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}}},"/b/{slug}/r/{release}":{"get":{"summary":"The business's entry page (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"text/html":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The business's entry page (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/manifest.json":{"get":{"summary":"The release manifest (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Manifest"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The release manifest (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/agents.json":{"get":{"summary":"Machine-readable instructions for agents: ask, facts, MCP, pages (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"Machine-readable instructions for agents: ask, facts, MCP, pages (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/llms.txt":{"get":{"summary":"The release in llms.txt form (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"text/plain":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The release in llms.txt form (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/facts.json":{"get":{"summary":"Every published fact of the business in one read (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FactsSheet"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"Every published fact of the business in one read (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/facts.txt":{"get":{"summary":"The same facts as plain text (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"text/plain":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The same facts as plain text (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/search-index.json":{"get":{"summary":"The release's search index (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The release's search index (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/facet-vectors.json":{"get":{"summary":"The release's facet vectors (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The release's facet vectors (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/robots.txt":{"get":{"summary":"robots.txt (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"text/plain":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"robots.txt (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/sitemap.xml":{"get":{"summary":"The sitemap (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/xml":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"The sitemap (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/n/{node}":{"get":{"summary":"One page, as HTML (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}},{"name":"node","in":"path","required":true,"description":"A page id (`pn_…`) from the manifest.","schema":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"text/html":{"schema":{"type":"string"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"One page, as HTML (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}},{"name":"node","in":"path","required":true,"description":"A page id (`pn_…`) from the manifest.","schema":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/n/{node}.json":{"get":{"summary":"One page, as JSON (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}},{"name":"node","in":"path","required":true,"description":"A page id (`pn_…`) from the manifest.","schema":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"The file, verified against the release it names.","headers":{"ETag":{"schema":{"type":"string"}},"X-Orama-Release":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicNode"}}}},"304":{"description":"Not modified (If-None-Match)."},"404":{"description":"Nothing published here, or a claim on it has expired (`not_found`, `claim_expired`). Not found means the business did not publish it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"head":{"summary":"One page, as JSON (a pinned release)","description":"Public and anonymous. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}},{"name":"node","in":"path","required":true,"description":"A page id (`pn_…`) from the manifest.","schema":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"}}],"responses":{"200":{"description":"Headers only."}}}},"/b/{slug}/r/{release}/ask":{"get":{"summary":"Ask a question (GET)","description":"The format follows the Accept header: application/json (default), text/plain or text/html. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}},{"name":"q","in":"query","required":true,"description":"The question (`query` and `question` are accepted as aliases). Exactly one of them.","schema":{"type":"string","minLength":1,"maxLength":1000}},{"name":"locale","in":"query","required":false,"description":"A language tag such as `en`.","schema":{"type":"string","pattern":"^[A-Za-z]{2,8}(-[A-Za-z0-9]{1,8})*$"}}],"responses":{"200":{"description":"A cited answer (or a refusal to answer) from what the business published.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskResponse"}},"text/plain":{"schema":{"type":"string"}},"text/html":{"schema":{"type":"string"}}}},"400":{"description":"The request is not valid (`invalid_request`, with a `reason`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"invalid_request"}}}}},"404":{"description":"No such business (`not_found`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"413":{"description":"The body is larger than the limit (`payload_too_large`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"payload_too_large"}}}}},"415":{"description":"The body is not JSON (`unsupported_media_type`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unsupported_media_type"}}}}},"429":{"description":"Too many questions (`rate_limited`, with `rule` and `retryAfterSeconds`; also a `Retry-After` header).","headers":{"Retry-After":{"schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"post":{"summary":"Ask a question (POST)","description":"Always answers JSON. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.","parameters":[{"name":"slug","in":"path","required":true,"description":"The business's slug.","schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}},{"name":"release","in":"path","required":true,"description":"A release id (`pr_…`) from `releases.json`; only recent past releases are served.","schema":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskRequest"}}}},"responses":{"200":{"description":"A cited answer (or a refusal to answer) from what the business published.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskResponse"}},"text/plain":{"schema":{"type":"string"}},"text/html":{"schema":{"type":"string"}}}},"400":{"description":"The request is not valid (`invalid_request`, with a `reason`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"invalid_request"}}}}},"404":{"description":"No such business (`not_found`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"not_found"}}}}},"410":{"description":"The pinned release is past its window (`gone`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"gone"}}}}},"413":{"description":"The body is larger than the limit (`payload_too_large`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"payload_too_large"}}}}},"415":{"description":"The body is not JSON (`unsupported_media_type`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unsupported_media_type"}}}}},"429":{"description":"Too many questions (`rate_limited`, with `rule` and `retryAfterSeconds`; also a `Retry-After` header).","headers":{"Retry-After":{"schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}}},"/.well-known/orama-keys.json":{"get":{"summary":"The public keys that sign releases","responses":{"200":{"description":"The keys.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/openapi.json":{"get":{"summary":"This document","responses":{"200":{"description":"OpenAPI 3.1.","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/mcp":{"post":{"summary":"Model Context Protocol endpoint","description":"Stateless streamable HTTP; no session id. Tools: `get_business` (Start here: every published fact of the business in one read — typed values, scope, conditions, the date each was confirmed. Use `ask` only for a question these facts do not answer. Pass releaseId (from an earlier result) to read that same release again. Not found means the business did not publish it: it is not a statement that the thing is untrue. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.) `get_page` (One page of the business, when the sheet points to it. The nodeId comes from get_business. Not found means the business did not publish it: it is not a statement that the thing is untrue. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.) `ask` (A cited answer, or not found, from the same published facts; use it for what the sheet does not answer or to combine several facts. Usually three to ten seconds; longer when the answer needs checking. A partial answer lists in `unpublished` what the business's published information does not state; report those as not published, never as no. Pass locale as a language tag such as \"en\" to choose the answer's language. Not found means the business did not publish it: it is not a statement that the thing is untrue. Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private.) A failed call returns a tool result with isError and one of the codes not_found, gone, claim_expired, client_rate, business_rate, business_concurrency, global_concurrency, budget_exhausted, unavailable.","requestBody":{"description":"A JSON-RPC 2.0 message of the Model Context Protocol (streamable HTTP, stateless).","required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"responses":{"200":{"description":"The JSON-RPC response.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"400":{"description":"Not a JSON-RPC body (`invalid_request`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"invalid_request"}}}}},"413":{"description":"The body is larger than the limit (`payload_too_large`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"payload_too_large"}}}}},"415":{"description":"The body is not JSON (`unsupported_media_type`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unsupported_media_type"}}}}},"429":{"description":"Too many calls from this client (`rate_limited`).","headers":{"Retry-After":{"schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"Temporarily unavailable (`unavailable`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"unavailable"}}}}}}},"get":{"summary":"Not used in stateless mode","responses":{"405":{"description":"No standalone stream.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"method_not_allowed"}}}}}}},"delete":{"summary":"Not used in stateless mode","responses":{"405":{"description":"No session to end.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem","example":{"error":"method_not_allowed"}}}}}}}}},"components":{"schemas":{"AskRequest":{"type":"object","properties":{"question":{"type":"string","minLength":1,"maxLength":1000},"locale":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,8}(-[A-Za-z0-9]{1,8})*$"}},"required":["question"],"additionalProperties":false},"AskResponse":{"type":"object","properties":{"profile":{"type":"string","const":"orama.ask/1"},"releaseId":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"},"slug":{"type":"string"},"pinned":{"type":"boolean"},"outcome":{"type":"string","enum":["answered","partial","not_found","conflict","expired","abstained"]},"reason":{"type":"string","enum":["provider_unavailable","timeout","malformed_output","validation_failed","release_changed","budget_exhausted","live_lookup_unavailable","no_support","not_relevant"]},"sentences":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":1000},"citations":{"minItems":1,"maxItems":10,"type":"array","items":{"type":"string","pattern":"^pc_[a-z2-7]{16,40}$"}},"part":{"type":"integer","minimum":0,"maximum":3},"facts":{"minItems":1,"maxItems":8,"type":"array","items":{"type":"integer","minimum":0,"maximum":200}}},"required":["text","citations"],"additionalProperties":false}},"citations":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^pc_[a-z2-7]{16,40}$"},"label":{"type":"string","minLength":1,"maxLength":200},"kind":{"type":"string","enum":["website_page","document","owner_statement","image"]},"url":{"type":"string","maxLength":2048,"format":"uri"},"observedAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"historical":{"type":"boolean"},"nodeId":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"},"fact":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"line":{"type":"string","minLength":1,"maxLength":500}},"required":["id","line"],"additionalProperties":false},"nodeUrl":{"type":"string","maxLength":300,"pattern":"^\\/b\\/([a-z0-9][a-z0-9-]*)\\/r\\/(pr_[a-z2-7]{16,40})\\/n\\/(pn_[a-z2-7]{16,40})$"},"asOf":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"expiresAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"ageSeconds":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","label","kind","historical","nodeId","nodeUrl"],"additionalProperties":false}},"uncertainty":{"type":"string","minLength":1,"maxLength":300},"unpublished":{"minItems":1,"maxItems":3,"type":"array","items":{"type":"string","minLength":1,"maxLength":120}},"served":{"type":"string","enum":["memory","model","facts"]},"coverage":{"type":"string","enum":["full","bounded"]},"notFound":{"type":"string","enum":["not_published","negative"]},"parts":{"minItems":2,"maxItems":3,"type":"array","items":{"type":"object","properties":{"outcome":{"type":"string","enum":["answered","partial","not_found","conflict","expired","abstained"]},"reason":{"type":"string","enum":["provider_unavailable","timeout","malformed_output","validation_failed","release_changed","budget_exhausted","live_lookup_unavailable","no_support","not_relevant"]},"notFound":{"type":"string","enum":["not_published","negative"]},"coverage":{"type":"string","enum":["full","bounded"]}},"required":["outcome"],"additionalProperties":false}},"facts":{"minItems":1,"maxItems":200,"type":"array","items":{"type":"object","properties":{"nodeId":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"},"key":{"type":"string","pattern":"^[a-z][a-zA-Z0-9]{0,63}$"},"value":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]},"scope":{"type":"string","minLength":1,"maxLength":300},"conditions":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":300}},"typed":{"anyOf":[{"type":"object","properties":{"amount":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"},"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"priceFrom":{"type":"boolean","const":true},"validUntil":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["amount","currency"],"additionalProperties":false},{"type":"object","properties":{"min":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"},"max":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"},"currency":{"type":"string","pattern":"^[A-Z]{3}$"}},"required":["min","max"],"additionalProperties":false},{"type":"object","properties":{"dayOfWeek":{"minItems":1,"maxItems":7,"type":"array","items":{"type":"string","enum":["Mo","Tu","We","Th","Fr","Sa","Su"]}},"opens":{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d$"},"closes":{"anyOf":[{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d$"},{"type":"string","const":"24:00"}]}},"required":["dayOfWeek","opens","closes"],"additionalProperties":false},{"type":"object","properties":{"dayOfWeek":{"minItems":1,"maxItems":7,"type":"array","items":{"type":"string","enum":["Mo","Tu","We","Th","Fr","Sa","Su"]}},"closed":{"type":"boolean","const":true}},"required":["closed"],"additionalProperties":false},{"type":"object","properties":{"percent":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"}},"required":["percent"],"additionalProperties":false},{"type":"object","properties":{"duration":{"type":"string","pattern":"^(?:PT\\d{1,4}[MH]|P\\d{1,4}[DWM])$"}},"required":["duration"],"additionalProperties":false}]},"confirmedAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"confirmedBy":{"type":"string","enum":["observation","owner","import","image"]},"freshness":{"type":"string","enum":["availability","price_offer","promotion_event","hours","delivery_returns","seasonal","descriptive","contact_address"]},"expiresAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"citationIds":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"string","pattern":"^pc_[a-z2-7]{16,40}$"}}},"required":["nodeId","key","value","citationIds"],"additionalProperties":false}},"notice":{"type":"string","const":"Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private."},"privacyNotice":{"type":"string","const":"Questions are processed by Orama's AI processors and kept without the asker's identity and with personal details removed, for as long as the business uses Orama."},"caution":{"type":"string","enum":["This answer was generated by AI from the information this business has published. For allergies, dietary or medical matters, please confirm directly with the business before relying on it.","Αυτή η απάντηση δημιουργήθηκε από τεχνητή νοημοσύνη με βάση τις πληροφορίες που έχει δημοσιεύσει αυτή η επιχείρηση. Για αλλεργίες, διατροφικά ή ιατρικά θέματα, παρακαλούμε επιβεβαιώστε απευθείας με την επιχείρηση πριν βασιστείτε σε αυτήν."]},"updating":{"type":"object","properties":{"since":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["since"],"additionalProperties":false},"notes":{"maxItems":1,"type":"array","items":{"type":"string","enum":["The business updated its information a moment ago; this answer may change.","Η επιχείρηση ενημέρωσε πριν λίγο τις πληροφορίες της· αυτή η απάντηση μπορεί να αλλάξει."]}}},"required":["profile","releaseId","slug","pinned","outcome","sentences","citations","notice"],"additionalProperties":false},"FactsSheet":{"type":"object","properties":{"profile":{"type":"string","const":"orama.facts/1"},"releaseId":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"},"slug":{"type":"string"},"name":{"type":"string","minLength":1,"maxLength":200},"generatedAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"notice":{"type":"string","const":"Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private."},"withheld":{"type":"integer","minimum":0,"maximum":9007199254740991},"facets":{"maxItems":64,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","pattern":"^[a-z][a-zA-Z0-9]{0,63}$"},"label":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":80}},"definition":{"type":"string","minLength":1,"maxLength":300},"listed":{"type":"boolean"}},"required":["key","label","definition","listed"],"additionalProperties":false}},"nodes":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"},"type":{"type":"string","enum":["business","offering","policy","location","contact","faq"]},"name":{"type":"string","minLength":1,"maxLength":200},"summary":{"type":"string","minLength":1,"maxLength":1000},"facts":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","pattern":"^[a-z][a-zA-Z0-9]{0,63}$"},"value":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]},"scope":{"type":"string","minLength":1,"maxLength":300},"conditions":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":300}},"asOf":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"expiresAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"typed":{"anyOf":[{"type":"object","properties":{"amount":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"},"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"priceFrom":{"type":"boolean","const":true},"validUntil":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["amount","currency"],"additionalProperties":false},{"type":"object","properties":{"min":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"},"max":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"},"currency":{"type":"string","pattern":"^[A-Z]{3}$"}},"required":["min","max"],"additionalProperties":false},{"type":"object","properties":{"dayOfWeek":{"minItems":1,"maxItems":7,"type":"array","items":{"type":"string","enum":["Mo","Tu","We","Th","Fr","Sa","Su"]}},"opens":{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d$"},"closes":{"anyOf":[{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d$"},{"type":"string","const":"24:00"}]}},"required":["dayOfWeek","opens","closes"],"additionalProperties":false},{"type":"object","properties":{"dayOfWeek":{"minItems":1,"maxItems":7,"type":"array","items":{"type":"string","enum":["Mo","Tu","We","Th","Fr","Sa","Su"]}},"closed":{"type":"boolean","const":true}},"required":["closed"],"additionalProperties":false},{"type":"object","properties":{"percent":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"}},"required":["percent"],"additionalProperties":false},{"type":"object","properties":{"duration":{"type":"string","pattern":"^(?:PT\\d{1,4}[MH]|P\\d{1,4}[DWM])$"}},"required":["duration"],"additionalProperties":false}]},"confirmedAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"confirmedBy":{"type":"string","enum":["observation","owner","import","image"]},"freshness":{"type":"string","enum":["availability","price_offer","promotion_event","hours","delivery_returns","seasonal","descriptive","contact_address"]},"label":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":80}},"historical":{"type":"boolean"},"citationIds":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"string","pattern":"^pc_[a-z2-7]{16,40}$"}}},"required":["key","value","historical","citationIds"],"additionalProperties":false}},"citations":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^pc_[a-z2-7]{16,40}$"},"label":{"type":"string","minLength":1,"maxLength":200},"kind":{"type":"string","enum":["website_page","document","owner_statement","image"]},"url":{"type":"string","maxLength":2048,"format":"uri"},"observedAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"historical":{"default":false,"type":"boolean"}},"required":["id","label","kind"],"additionalProperties":false}}},"required":["id","type","name","facts","citations"],"additionalProperties":false}}},"required":["profile","releaseId","slug","name","generatedAt","notice","withheld","nodes"],"additionalProperties":false},"Manifest":{"type":"object","properties":{"profile":{"type":"string","const":"orama.public-manifest/1"},"releaseId":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"},"slug":{"type":"string","minLength":3,"maxLength":63},"name":{"type":"string","minLength":1,"maxLength":200},"generatedAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"contentDigest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"entry":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"},"nodes":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"},"type":{"type":"string","enum":["business","offering","policy","location","contact","faq"]},"name":{"type":"string","minLength":1,"maxLength":200},"digest":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","type","name","digest"],"additionalProperties":false}},"files":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"path":{"type":"string","enum":["llms.txt","agents.json","robots.txt","sitemap.xml","search-index.json","facet-vectors.json"]},"contentType":{"type":"string","pattern":"^(text|application)\\/[a-z0-9.+-]+(; charset=utf-8)?$"},"digest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["path","contentType","digest","bytes"],"additionalProperties":false}},"facets":{"maxItems":64,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","pattern":"^[a-z][a-zA-Z0-9]{0,63}$"},"label":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":80}},"definition":{"type":"string","minLength":1,"maxLength":300},"listed":{"type":"boolean"}},"required":["key","label","definition","listed"],"additionalProperties":false}},"notice":{"type":"string","const":"Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private."},"publisher":{"type":"object","properties":{"verification":{"type":"string","enum":["dns","meta_tag","none"]},"domain":{"type":["string","null"]},"verifiedAt":{"anyOf":[{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"notice":{"type":"string"}},"required":["verification","domain","verifiedAt","notice"],"additionalProperties":false},"signature":{"type":"object","properties":{"profile":{"type":"string","const":"orama.signature/1"},"algorithm":{"type":"string","const":"Ed25519"},"keyId":{"type":"string"},"value":{"type":"string"},"signedAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"signs":{"type":"string","const":"contentDigest"},"keys":{"type":"string","const":"/.well-known/orama-keys.json"},"notice":{"type":"string"}},"required":["profile","algorithm","keyId","value","signedAt","signs","keys","notice"],"additionalProperties":false},"updating":{"type":"object","properties":{"since":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["since"],"additionalProperties":false}},"required":["profile","releaseId","slug","name","generatedAt","contentDigest","entry","nodes","files","notice"],"additionalProperties":false},"PublicNode":{"type":"object","properties":{"profile":{"type":"string","enum":["orama.public-node/1","orama.public-node/2","orama.public-node/3","orama.public-node/4"]},"releaseId":{"type":"string","pattern":"^pr_[a-z2-7]{16,40}$"},"id":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"},"type":{"type":"string","enum":["business","offering","policy","location","contact","faq"]},"schemaOrgType":{"type":"string","pattern":"^[A-Z][A-Za-z]{0,63}$"},"name":{"type":"string","minLength":1,"maxLength":200},"summary":{"type":"string","minLength":1,"maxLength":1000},"facets":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"key":{"type":"string","pattern":"^[a-z][a-zA-Z0-9]{0,63}$"},"value":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]},"citations":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"string","pattern":"^pc_[a-z2-7]{16,40}$"}},"historical":{"default":false,"type":"boolean"},"scope":{"type":"string","minLength":1,"maxLength":300},"conditions":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":300}},"asOf":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"typed":{"anyOf":[{"type":"object","properties":{"amount":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"},"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"priceFrom":{"type":"boolean","const":true},"validUntil":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["amount","currency"],"additionalProperties":false},{"type":"object","properties":{"min":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"},"max":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"},"currency":{"type":"string","pattern":"^[A-Z]{3}$"}},"required":["min","max"],"additionalProperties":false},{"type":"object","properties":{"dayOfWeek":{"minItems":1,"maxItems":7,"type":"array","items":{"type":"string","enum":["Mo","Tu","We","Th","Fr","Sa","Su"]}},"opens":{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d$"},"closes":{"anyOf":[{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d$"},{"type":"string","const":"24:00"}]}},"required":["dayOfWeek","opens","closes"],"additionalProperties":false},{"type":"object","properties":{"dayOfWeek":{"minItems":1,"maxItems":7,"type":"array","items":{"type":"string","enum":["Mo","Tu","We","Th","Fr","Sa","Su"]}},"closed":{"type":"boolean","const":true}},"required":["closed"],"additionalProperties":false},{"type":"object","properties":{"percent":{"type":"string","pattern":"^\\d{1,12}(?:\\.\\d{1,6})?$"}},"required":["percent"],"additionalProperties":false},{"type":"object","properties":{"duration":{"type":"string","pattern":"^(?:PT\\d{1,4}[MH]|P\\d{1,4}[DWM])$"}},"required":["duration"],"additionalProperties":false}]},"confirmedAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"confirmedBy":{"type":"string","enum":["observation","owner","import","image"]},"freshness":{"type":"string","enum":["availability","price_offer","promotion_event","hours","delivery_returns","seasonal","descriptive","contact_address"]},"expiresAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["key","value","citations"],"additionalProperties":false}},"links":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"rel":{"type":"string","pattern":"^[a-z][a-zA-Z0-9]{0,63}$"},"target":{"type":"string","pattern":"^pn_[a-z2-7]{16,40}$"},"citations":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","pattern":"^pc_[a-z2-7]{16,40}$"}}},"required":["rel","target"],"additionalProperties":false}},"citations":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^pc_[a-z2-7]{16,40}$"},"label":{"type":"string","minLength":1,"maxLength":200},"kind":{"type":"string","enum":["website_page","document","owner_statement","image"]},"url":{"type":"string","maxLength":2048,"format":"uri"},"observedAt":{"type":"string","format":"date-time","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])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"historical":{"default":false,"type":"boolean"}},"required":["id","label","kind"],"additionalProperties":false}},"notice":{"type":"string","const":"Published by this business and approved by its administrator. Orama does not verify that it is accurate or current, or that the publisher owns the business. Originals remain private."}},"required":["profile","releaseId","id","type","name","facets","links","citations","notice"],"additionalProperties":false},"Problem":{"type":"object","properties":{"error":{"type":"string","enum":["invalid_request","unsupported_media_type","payload_too_large","method_not_allowed","not_found","gone","rate_limited","unavailable"]},"reason":{"type":"string","enum":["question_empty","question_too_long","invalid_question","invalid_locale","invalid_json","unknown_field","question_missing","question_duplicate"]},"limit":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"rule":{"type":"string","enum":["rate","concurrency"]},"retryAfterSeconds":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["error"],"additionalProperties":false}}}}
