{"openapi":"3.1.0","info":{"title":"Patearn /v1","description":"Entitled, metered, provenance-stamped Indian-equity read API.\n\n**PIT semantics (AUD-38/D104):** `/universe`, `/securities/{symbol}/credibility` and `/attention` accept `as_of=YYYY-MM-DD` and serve what was KNOWABLE on that date — credibility by the two-tier knowable rule (the period's REAL public clock — concall held / transcript published — when captured, basis EVENT; else the month's last calendar day, basis MODELED; the served row carries `knowable_from` + `knowable_basis`), attention by resolving to the last computed event batch on-or-before the date. The same `as_of` always returns the same answer, so clients can run their own leak audits. Every response is additionally stamped with `_meta.as_of` + per-class provenance, with or without the parameter.","version":"v1.0"},"servers":[{"url":"/v1"}],"paths":{"/meta/health":{"get":{"tags":["meta"],"summary":"Health","operationId":"health_meta_health_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/coverage":{"get":{"tags":["compliance"],"summary":"Coverage","operationId":"coverage_coverage_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/universe":{"get":{"tags":["compliance"],"summary":"Universe","description":"Universe-construction policy + survivorship spine.\n\nPIT semantics (AUD-38): `as_of` replays MEMBERSHIP on a past date; the policy text,\ndisclosures and archive floor/ceiling always describe the CURRENT spine.","operationId":"universe_universe_get","parameters":[{"name":"as_of","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"PIT membership (YYYY-MM-DD): count the survivorship-correct universe on this date (security_master.universe_on; first_date <= d <= last_date, delisted names retained). Omit for the policy + current spine.","title":"As Of"},"description":"PIT membership (YYYY-MM-DD): count the survivorship-correct universe on this date (security_master.universe_on; first_date <= d <= last_date, delisted names retained). Omit for the policy + current spine."},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/provenance/registry":{"get":{"tags":["compliance"],"summary":"Provenance Registry","operationId":"provenance_registry_provenance_registry_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/securities/{symbol}/credibility":{"get":{"tags":["research"],"summary":"Credibility","description":"DESCRIPTIVE per-name guidance track-record (the §C-surviving use). Never ranked; no edge claim.\n\nPIT semantics: with `as_of`, the response is reproducible — the same date always returns the\nsame point (or a typed absence when nothing was knowable yet), so a client can run their own\nleak audit against this endpoint.","operationId":"credibility_securities__symbol__credibility_get","parameters":[{"name":"symbol","in":"path","required":true,"schema":{"type":"string","title":"Symbol"}},{"name":"as_of","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"PIT date (YYYY-MM-DD): serve the credibility point as it was KNOWABLE on this date (AUD-38/D104). Two-tier knowable rule, both no-look-ahead: when the period's REAL public clock is captured (concall held / transcript published — max of the two), the row is knowable from that date (`knowable_basis` EVENT); otherwise from the LAST calendar day of its period month (`knowable_basis` MODELED — the conservative bound). The served row carries `knowable_from` + `knowable_basis`; `pit.knowable_rule` names the rule actually applied. Omit for the latest settled point.","title":"As Of"},"description":"PIT date (YYYY-MM-DD): serve the credibility point as it was KNOWABLE on this date (AUD-38/D104). Two-tier knowable rule, both no-look-ahead: when the period's REAL public clock is captured (concall held / transcript published — max of the two), the row is knowable from that date (`knowable_basis` EVENT); otherwise from the LAST calendar day of its period month (`knowable_basis` MODELED — the conservative bound). The served row carries `knowable_from` + `knowable_basis`; `pit.knowable_rule` names the rule actually applied. Omit for the latest settled point."},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/attention":{"get":{"tags":["research"],"summary":"Attention","description":"Recent typed state-change events — DESCRIPTIVE context, not signals to trade.\n\nPIT semantics: with `as_of`, the same date always returns the same batch — replayable for\nclient-side leak audits. An empty list before the feed's first batch is the honest answer.","operationId":"attention_attention_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":6,"title":"Limit"}},{"name":"as_of","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"PIT date (YYYY-MM-DD): serve the attention queue as it stood on this date (AUD-38) — the last computed event batch on-or-before it (weekends/holidays resolve to the prior batch). Each row carries its own as_of (data date) and detected_at (when the nightly detection actually ran — the knowable moment). Omit for the latest batch.","title":"As Of"},"description":"PIT date (YYYY-MM-DD): serve the attention queue as it stood on this date (AUD-38) — the last computed event batch on-or-before it (weekends/holidays resolve to the prior batch). Each row carries its own as_of (data date) and detected_at (when the nightly detection actually ran — the knowable moment). Omit for the latest batch."},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}