{"openapi":"3.1.0","info":{"title":"Attribution Data API","description":"Read-only data interface over the curated `attribution_api` views (acquisition warehouse). Allowlist-based: only the datasets in POLICY.md are reachable, each gated by a scoped `aihub_sk_...` key.","version":"1.0.0"},"paths":{"/v1/health":{"get":{"tags":["health"],"summary":"Health","operationId":"health_v1_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HealthStatus"}}}}}}},"/v1/health/db":{"get":{"tags":["health"],"summary":"Health Db","operationId":"health_db_v1_health_db_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DbHealthStatus"}}}}}}},"/v1/catalog":{"get":{"tags":["health","catalog"],"summary":"Catalog","description":"Public, structure-only catalog: exposed datasets, their columns/types,\nand how to call them. No auth, no scope, and NEVER any row data — it powers\nthe catalog page and lets consumers browse what's available before they hold\na key. If the DB is unreachable, datasets still list with empty columns.","operationId":"catalog_v1_catalog_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Catalog"}}}}}}},"/v1/{dataset}":{"get":{"tags":["datasets"],"summary":"List Dataset","operationId":"list_dataset_v1__dataset__get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"type":"string","title":"Dataset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListEnvelope"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/{dataset}/{item_id}":{"get":{"tags":["datasets"],"summary":"Get Dataset Item","operationId":"get_dataset_item_v1__dataset___item_id__get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"type":"string","title":"Dataset"}},{"name":"item_id","in":"path","required":true,"schema":{"type":"string","title":"Item Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Dataset Item V1  Dataset   Item Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"Catalog":{"properties":{"base_url":{"type":"string","title":"Base Url"},"schema_name":{"type":"string","title":"Schema Name"},"groups":{"items":{"type":"string"},"type":"array","title":"Groups"},"datasets":{"items":{"$ref":"#/components/schemas/DatasetInfo"},"type":"array","title":"Datasets"}},"type":"object","required":["base_url","schema_name","groups","datasets"],"title":"Catalog","description":"Public, structure-only catalog (mirrors nest-data-api). Names & types\nonly — never any row data, and no auth required."},"Column":{"properties":{"name":{"type":"string","title":"Name"},"type":{"type":"string","title":"Type"}},"type":"object","required":["name","type"],"title":"Column"},"DatasetInfo":{"properties":{"dataset":{"type":"string","title":"Dataset"},"group":{"type":"string","title":"Group"},"pii":{"type":"boolean","title":"Pii"},"id_column":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id Column"},"description":{"type":"string","title":"Description"},"endpoints":{"items":{"type":"string"},"type":"array","title":"Endpoints"},"columns":{"items":{"$ref":"#/components/schemas/Column"},"type":"array","title":"Columns"}},"type":"object","required":["dataset","group","pii","id_column","description","endpoints","columns"],"title":"DatasetInfo"},"DbHealthStatus":{"properties":{"status":{"type":"string","title":"Status"},"db":{"type":"string","title":"Db"}},"type":"object","required":["status","db"],"title":"DbHealthStatus"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HealthStatus":{"properties":{"status":{"type":"string","title":"Status"}},"type":"object","required":["status"],"title":"HealthStatus"},"ListEnvelope":{"properties":{"items":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Items"},"limit":{"type":"integer","title":"Limit"},"offset":{"type":"integer","title":"Offset"},"total":{"type":"integer","title":"Total"}},"type":"object","required":["items","limit","offset","total"],"title":"ListEnvelope","description":"Standard list response, matching nest-data-api."},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}