{"openapi":"3.1.0","info":{"title":"AIDB API","version":"1.0.0","description":"The free, sourced database of everything. Anonymous use gets a free daily allowance; send `Authorization: Bearer <key>` for paid-plan limits. Bulk dataset files at /d/{slug}.{ext} are free and unmetered.","contact":{"email":"data@aidb.si","url":"https://aidb.si/developers"}},"servers":[{"url":"https://aidb.si/api/v1"}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional API key (aidb_…)"}}},"security":[{},{"bearer":[]}],"paths":{"/search":{"get":{"operationId":"search","summary":"Search entities and datasets","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","schema":{"type":"integer","maximum":50}},{"name":"mode","in":"query","schema":{"type":"string","enum":["full","prefix"]}}],"responses":{"200":{"description":"Matching entities and datasets"}}}},"/entities/{id}":{"get":{"operationId":"getEntity","summary":"All sourced facts about an entity","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^Q\\d+$"},"example":"Q937"},{"name":"props","in":"query","schema":{"type":"string"},"description":"Comma-separated property ids, e.g. P569,P106"},{"name":"format","in":"query","schema":{"type":"string","enum":["json","csv","xlsx","ndjson","tsv","sql","xml","md","html"]},"description":"Response format (default json)"}],"responses":{"200":{"description":"Entity with facts, qualifiers, sources, identifiers and time series"},"404":{"description":"Not found"}}}},"/entities":{"get":{"operationId":"getEntities","summary":"Batch lookup (up to 50 ids)","parameters":[{"name":"ids","in":"query","required":true,"schema":{"type":"string"},"example":"Q937,Q90"},{"name":"props","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Entities"}}}},"/datasets":{"get":{"operationId":"listDatasets","summary":"Dataset catalog","parameters":[{"name":"category","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Datasets with schema, license and file links"}}}},"/datasets/{slug}":{"get":{"operationId":"getDataset","summary":"Dataset metadata and schema","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Metadata"}}}},"/datasets/{slug}/rows":{"get":{"operationId":"queryDataset","summary":"Filter, sort, select and page dataset rows","description":"Any column key can be used as a filter parameter with an operator prefix: eq, neq, gt, gte, lt, lte, like, starts, in, is — e.g. height_m=gte.400&country=eq.USA.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}},{"name":"select","in":"query","schema":{"type":"string"},"description":"Comma-separated column keys"},{"name":"sort","in":"query","schema":{"type":"string"},"description":"Column key(s); prefix - for descending"},{"name":"q","in":"query","schema":{"type":"string"},"description":"Free-text search over text columns"},{"name":"limit","in":"query","schema":{"type":"integer"}},{"name":"offset","in":"query","schema":{"type":"integer"}},{"name":"format","in":"query","schema":{"type":"string","enum":["json","csv","xlsx","ndjson","tsv","sql","xml","md","html"]},"description":"Response format (default json)"}],"responses":{"200":{"description":"Rows with total and next link"},"429":{"description":"Daily limit reached"}}}},"/categories":{"get":{"operationId":"listCategories","summary":"Topics and their datasets","responses":{"200":{"description":"Categories"}}}},"/usage":{"get":{"operationId":"usage","summary":"Your plan and remaining allowance","responses":{"200":{"description":"Usage"}}}}}}