{"openapi":"3.1.0","info":{"title":"AkademBase API","description":"Includes records harvested from OpenAlex (CC0), https://openalex.org. Public read-only API; gated /v1/* access requires a Bearer key (see akadembase.org/docs).","version":"0.1.0"},"servers":[{"url":"https://api.akadembase.org","description":"Production"}],"paths":{"/public/stats":{"get":{"tags":["public"],"summary":"Public Stats","operationId":"public_stats_public_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"integer"},"type":"object","title":"Response Public Stats Public Stats Get"}}}}}}},"/public/activity":{"get":{"tags":["public"],"summary":"Public Activity","description":"Open, read-only usage counters for the AkademIndex proxy (numbers only —\nno PII). Same loopback-only exposure + graceful Redis degradation as\n``/public/stats``: a Redis outage yields zeros, never a 500.\n\nReturns the three lifetime totals plus their trailing-30-day rolling sums:\n``searches_total``, ``works_viewed_total``, ``cross_lingual_searches_total``\n(+ each ``*_30d``).","operationId":"public_activity_public_activity_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"integer"},"type":"object","title":"Response Public Activity Public Activity Get"}}}}}}},"/v1/works":{"get":{"tags":["works"],"summary":"List Works","operationId":"list_works_v1_works_get","parameters":[{"name":"search","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Full-text (works) / name (others) search","title":"Search"},"description":"Full-text (works) / name (others) search"},{"name":"filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:value,field2:value2 — comma=AND, repeated field=OR","title":"Filter"},"description":"field:value,field2:value2 — comma=AND, repeated field=OR"},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:desc,field2:asc","title":"Sort"},"description":"field:desc,field2:asc"},{"name":"select","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"comma-separated field list","title":"Select"},"description":"comma-separated field list"},{"name":"group_by","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket","title":"Group By"},"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket"},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"per_page","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":25,"title":"Per Page"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"'*' to start keyset paging; echo meta.next_cursor","title":"Cursor"},"description":"'*' to start keyset paging; echo meta.next_cursor"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorksListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/works/{abi}/citations":{"get":{"tags":["works"],"summary":"List Work Citations","description":"Works that **cite** this work (its citers) — the clickable expansion of\n``cited_by_count``. The full works list surface (filter/sort/paginate/select),\npre-filtered. Equivalent to ``/v1/works?filter=cites:{abi}``.\n\nThe work ABI is redirect-resolved (a tombstoned ABI still lists the\nsurvivor's citers); citers may be halo, so the core-gate is suppressed (the\n``cites`` filter is in ``default_where_off``). Declared BEFORE\n``/works/{abi:path}`` so the catch-all does not swallow the ``/citations``\nsuffix.","operationId":"list_work_citations_v1_works__abi__citations_get","parameters":[{"name":"abi","in":"path","required":true,"schema":{"type":"string","title":"Abi"}},{"name":"search","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Full-text (works) / name (others) search","title":"Search"},"description":"Full-text (works) / name (others) search"},{"name":"filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:value,field2:value2 — comma=AND, repeated field=OR","title":"Filter"},"description":"field:value,field2:value2 — comma=AND, repeated field=OR"},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:desc,field2:asc","title":"Sort"},"description":"field:desc,field2:asc"},{"name":"select","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"comma-separated field list","title":"Select"},"description":"comma-separated field list"},{"name":"group_by","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket","title":"Group By"},"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket"},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"per_page","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":25,"title":"Per Page"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"'*' to start keyset paging; echo meta.next_cursor","title":"Cursor"},"description":"'*' to start keyset paging; echo meta.next_cursor"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorksListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/works/{abi}/references":{"get":{"tags":["works"],"summary":"List Work References","description":"Works this work **cites** (its references) — the clickable expansion of\n``reference_count``. The full works list surface, pre-filtered. Equivalent to\n``/v1/works?filter=cited_by:{abi}``.\n\nRedirect-resolved; references may be halo (core-gate suppressed). Declared\nBEFORE the ``/works/{abi:path}`` catch-all.","operationId":"list_work_references_v1_works__abi__references_get","parameters":[{"name":"abi","in":"path","required":true,"schema":{"type":"string","title":"Abi"}},{"name":"search","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Full-text (works) / name (others) search","title":"Search"},"description":"Full-text (works) / name (others) search"},{"name":"filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:value,field2:value2 — comma=AND, repeated field=OR","title":"Filter"},"description":"field:value,field2:value2 — comma=AND, repeated field=OR"},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:desc,field2:asc","title":"Sort"},"description":"field:desc,field2:asc"},{"name":"select","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"comma-separated field list","title":"Select"},"description":"comma-separated field list"},{"name":"group_by","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket","title":"Group By"},"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket"},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"per_page","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":25,"title":"Per Page"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"'*' to start keyset paging; echo meta.next_cursor","title":"Cursor"},"description":"'*' to start keyset paging; echo meta.next_cursor"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorksListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/works/{abi}":{"get":{"tags":["works"],"summary":"Get Work","operationId":"get_work_v1_works__abi__get","parameters":[{"name":"abi","in":"path","required":true,"schema":{"type":"string","title":"Abi"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentRead"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/authors":{"get":{"tags":["authors"],"summary":"List Authors","operationId":"list_authors_v1_authors_get","parameters":[{"name":"search","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Full-text (works) / name (others) search","title":"Search"},"description":"Full-text (works) / name (others) search"},{"name":"filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:value,field2:value2 — comma=AND, repeated field=OR","title":"Filter"},"description":"field:value,field2:value2 — comma=AND, repeated field=OR"},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:desc,field2:asc","title":"Sort"},"description":"field:desc,field2:asc"},{"name":"select","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"comma-separated field list","title":"Select"},"description":"comma-separated field list"},{"name":"group_by","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket","title":"Group By"},"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket"},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"per_page","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":25,"title":"Per Page"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"'*' to start keyset paging; echo meta.next_cursor","title":"Cursor"},"description":"'*' to start keyset paging; echo meta.next_cursor"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Authors V1 Authors Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/authors/{abi}/works":{"get":{"tags":["authors"],"summary":"List Author Works","description":"An author's works — the full works list surface (filter/sort/paginate/\nselect/search), pre-filtered to this author. Convenience wrapper over\n``/v1/works?filter=authorships.author:{abi}``; the author ABI is redirect-\nresolved so a tombstoned author still resolves to the survivor's works.\n\nDeclared BEFORE ``/authors/{abi:path}`` so the catch-all does not swallow\nthe ``/works`` suffix. Default order is the works default (cited_by_count).","operationId":"list_author_works_v1_authors__abi__works_get","parameters":[{"name":"abi","in":"path","required":true,"schema":{"type":"string","title":"Abi"}},{"name":"search","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Full-text (works) / name (others) search","title":"Search"},"description":"Full-text (works) / name (others) search"},{"name":"filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:value,field2:value2 — comma=AND, repeated field=OR","title":"Filter"},"description":"field:value,field2:value2 — comma=AND, repeated field=OR"},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:desc,field2:asc","title":"Sort"},"description":"field:desc,field2:asc"},{"name":"select","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"comma-separated field list","title":"Select"},"description":"comma-separated field list"},{"name":"group_by","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket","title":"Group By"},"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket"},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"per_page","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":25,"title":"Per Page"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"'*' to start keyset paging; echo meta.next_cursor","title":"Cursor"},"description":"'*' to start keyset paging; echo meta.next_cursor"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Author Works V1 Authors  Abi  Works Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/authors/{abi}":{"get":{"tags":["authors"],"summary":"Get Author","operationId":"get_author_v1_authors__abi__get","parameters":[{"name":"abi","in":"path","required":true,"schema":{"type":"string","title":"Abi"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Author V1 Authors  Abi  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/institutions":{"get":{"tags":["institutions"],"summary":"List Institutions","operationId":"list_institutions_v1_institutions_get","parameters":[{"name":"search","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Full-text (works) / name (others) search","title":"Search"},"description":"Full-text (works) / name (others) search"},{"name":"filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:value,field2:value2 — comma=AND, repeated field=OR","title":"Filter"},"description":"field:value,field2:value2 — comma=AND, repeated field=OR"},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:desc,field2:asc","title":"Sort"},"description":"field:desc,field2:asc"},{"name":"select","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"comma-separated field list","title":"Select"},"description":"comma-separated field list"},{"name":"group_by","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket","title":"Group By"},"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket"},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"per_page","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":25,"title":"Per Page"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"'*' to start keyset paging; echo meta.next_cursor","title":"Cursor"},"description":"'*' to start keyset paging; echo meta.next_cursor"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Institutions V1 Institutions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/institutions/{abi}":{"get":{"tags":["institutions"],"summary":"Get Institution","operationId":"get_institution_v1_institutions__abi__get","parameters":[{"name":"abi","in":"path","required":true,"schema":{"type":"string","title":"Abi"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Institution V1 Institutions  Abi  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sources":{"get":{"tags":["sources"],"summary":"List Sources","operationId":"list_sources_v1_sources_get","parameters":[{"name":"search","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Full-text (works) / name (others) search","title":"Search"},"description":"Full-text (works) / name (others) search"},{"name":"filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:value,field2:value2 — comma=AND, repeated field=OR","title":"Filter"},"description":"field:value,field2:value2 — comma=AND, repeated field=OR"},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:desc,field2:asc","title":"Sort"},"description":"field:desc,field2:asc"},{"name":"select","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"comma-separated field list","title":"Select"},"description":"comma-separated field list"},{"name":"group_by","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket","title":"Group By"},"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket"},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"per_page","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":25,"title":"Per Page"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"'*' to start keyset paging; echo meta.next_cursor","title":"Cursor"},"description":"'*' to start keyset paging; echo meta.next_cursor"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Sources V1 Sources Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sources/{abi}":{"get":{"tags":["sources"],"summary":"Get Source","operationId":"get_source_v1_sources__abi__get","parameters":[{"name":"abi","in":"path","required":true,"schema":{"type":"string","title":"Abi"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Source V1 Sources  Abi  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/topics":{"get":{"tags":["topics"],"summary":"List Topics","operationId":"list_topics_v1_topics_get","parameters":[{"name":"search","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Full-text (works) / name (others) search","title":"Search"},"description":"Full-text (works) / name (others) search"},{"name":"filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:value,field2:value2 — comma=AND, repeated field=OR","title":"Filter"},"description":"field:value,field2:value2 — comma=AND, repeated field=OR"},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:desc,field2:asc","title":"Sort"},"description":"field:desc,field2:asc"},{"name":"select","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"comma-separated field list","title":"Select"},"description":"comma-separated field list"},{"name":"group_by","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket","title":"Group By"},"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket"},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"per_page","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":25,"title":"Per Page"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"'*' to start keyset paging; echo meta.next_cursor","title":"Cursor"},"description":"'*' to start keyset paging; echo meta.next_cursor"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Topics V1 Topics Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/topics/{abi}/works":{"get":{"tags":["topics"],"summary":"List Topic Works","description":"Works assigned this topic — the clickable contents of a topic-detail page.\nThe full works list surface (filter/sort/paginate/select), pre-filtered.\nConvenience wrapper over ``/v1/works?filter=topic:{abi}``; the topic ABI is\nredirect-resolved. Declared BEFORE ``/topics/{abi:path}`` so the catch-all\ndoes not swallow the ``/works`` suffix.","operationId":"list_topic_works_v1_topics__abi__works_get","parameters":[{"name":"abi","in":"path","required":true,"schema":{"type":"string","title":"Abi"}},{"name":"search","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Full-text (works) / name (others) search","title":"Search"},"description":"Full-text (works) / name (others) search"},{"name":"filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:value,field2:value2 — comma=AND, repeated field=OR","title":"Filter"},"description":"field:value,field2:value2 — comma=AND, repeated field=OR"},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"field:desc,field2:asc","title":"Sort"},"description":"field:desc,field2:asc"},{"name":"select","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"comma-separated field list","title":"Select"},"description":"comma-separated field list"},{"name":"group_by","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket","title":"Group By"},"description":"facet field (returns buckets, not results); append ':include_unknown' to keep the NULL bucket"},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"per_page","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":25,"title":"Per Page"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"'*' to start keyset paging; echo meta.next_cursor","title":"Cursor"},"description":"'*' to start keyset paging; echo meta.next_cursor"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Topic Works V1 Topics  Abi  Works Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/topics/{abi}":{"get":{"tags":["topics"],"summary":"Get Topic","operationId":"get_topic_v1_topics__abi__get","parameters":[{"name":"abi","in":"path","required":true,"schema":{"type":"string","title":"Abi"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Topic V1 Topics  Abi  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/search":{"post":{"tags":["search"],"summary":"Search","operationId":"search_v1_search_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/autocomplete":{"get":{"tags":["autocomplete"],"summary":"Autocomplete All","operationId":"autocomplete_all_v1_autocomplete_get","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1,"description":"typeahead query","title":"Q"},"description":"typeahead query"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":25,"minimum":1,"default":10,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Autocomplete All V1 Autocomplete Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/autocomplete/{entity}":{"get":{"tags":["autocomplete"],"summary":"Autocomplete Entity","operationId":"autocomplete_entity_v1_autocomplete__entity__get","parameters":[{"name":"entity","in":"path","required":true,"schema":{"type":"string","title":"Entity"}},{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1,"description":"typeahead query","title":"Q"},"description":"typeahead query"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":25,"minimum":1,"default":10,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Autocomplete Entity V1 Autocomplete  Entity  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"DocumentAuthor":{"properties":{"author_abi":{"type":"string","title":"Author Abi"},"display_name":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Display Name"},"position":{"type":"integer","title":"Position"},"role":{"type":"string","title":"Role"},"affiliation":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Affiliation"}},"type":"object","required":["author_abi","position","role"],"title":"DocumentAuthor","description":"One author on a work — canonical (redirect-resolved) identity, ordered by\n``position``. The single shape for an authorship across the read surface:\nreused verbatim by the works list/single GET and by search cards (see\n``hydrate_works`` / ``SearchHit``)."},"DocumentRead":{"properties":{"abi":{"type":"string","title":"Abi"},"type":{"type":"string","title":"Type"},"title":{"additionalProperties":true,"type":"object","title":"Title"},"abstract":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Abstract"},"language":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Language"},"year":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Year"},"source_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Source Id"},"issue_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Issue Id"},"pages":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pages"},"genre":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Genre"},"doi":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Doi"},"isbn":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Isbn"},"issn":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Issn"},"external_ids":{"additionalProperties":{"type":"string"},"type":"object","title":"External Ids"},"full_text_level":{"type":"string","title":"Full Text Level"},"license":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"License"},"pdf_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pdf Url"},"version":{"type":"integer","title":"Version"},"contains":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Contains"},"part_of":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Part Of"},"record_origin":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Record Origin"},"record_level":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Record Level"},"authors":{"items":{"$ref":"#/components/schemas/DocumentAuthor"},"type":"array","title":"Authors"},"source":{"anyOf":[{"$ref":"#/components/schemas/DocumentSource"},{"type":"null"}]},"topics":{"items":{"$ref":"#/components/schemas/DocumentTopic"},"type":"array","title":"Topics"},"cited_by_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cited By Count"},"reference_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reference Count"},"requested_abi":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Requested Abi"},"canonical_abi":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Canonical Abi"}},"type":"object","required":["abi","type","title","full_text_level","version"],"title":"DocumentRead"},"DocumentSource":{"properties":{"source_abi":{"type":"string","title":"Source Abi"},"name":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Name"},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type"}},"type":"object","required":["source_abi"],"title":"DocumentSource","description":"The resolved source (venue) of a work."},"DocumentTopic":{"properties":{"topic_abi":{"type":"string","title":"Topic Abi"},"name":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Name"},"score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Score"},"is_primary":{"type":"boolean","title":"Is Primary"}},"type":"object","required":["topic_abi","is_primary"],"title":"DocumentTopic","description":"One assigned topic on a work — ordered primary first, then score desc."},"FacetBucket":{"properties":{"key":{"anyOf":[{"type":"integer"},{"type":"string"},{"type":"null"}],"title":"Key"},"key_display_name":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"string"},{"type":"null"}],"title":"Key Display Name"},"count":{"type":"integer","title":"Count"}},"type":"object","required":["count"],"title":"FacetBucket"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"SearchHit":{"properties":{"abi":{"type":"string","title":"Abi"},"title":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Title"},"score":{"type":"number","title":"Score"},"dense_rank":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Dense Rank"},"fts_rank":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Fts Rank"},"year":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Year"},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type"},"source":{"anyOf":[{"$ref":"#/components/schemas/DocumentSource"},{"type":"null"}]},"authors":{"items":{"$ref":"#/components/schemas/DocumentAuthor"},"type":"array","title":"Authors"},"topics":{"items":{"$ref":"#/components/schemas/DocumentTopic"},"type":"array","title":"Topics"},"snippet":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snippet"},"cited_by_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cited By Count"}},"type":"object","required":["abi","score"],"title":"SearchHit"},"SearchRequest":{"properties":{"query":{"type":"string","minLength":1,"title":"Query"},"limit":{"type":"integer","maximum":100,"minimum":1,"title":"Limit","default":10},"offset":{"type":"integer","minimum":0,"title":"Offset","default":0},"lang":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Lang"},"year":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Year"},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type"},"source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source"},"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Topic"},"language":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Language"},"country":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country"}},"type":"object","required":["query"],"title":"SearchRequest"},"SearchResponse":{"properties":{"query":{"type":"string","title":"Query"},"total":{"type":"integer","title":"Total"},"offset":{"type":"integer","title":"Offset"},"limit":{"type":"integer","title":"Limit"},"results":{"items":{"$ref":"#/components/schemas/SearchHit"},"type":"array","title":"Results"},"facets":{"additionalProperties":{"items":{"$ref":"#/components/schemas/FacetBucket"},"type":"array"},"type":"object","title":"Facets"}},"type":"object","required":["query","total","offset","limit","results"],"title":"SearchResponse"},"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"},"WorksListMeta":{"properties":{"count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Count"},"db_response_time_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Db Response Time Ms"},"page":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Page"},"per_page":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Per Page"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"}},"type":"object","title":"WorksListMeta","description":"``meta`` block of the works list envelope (see listing.engine.envelope)."},"WorksListResponse":{"properties":{"meta":{"$ref":"#/components/schemas/WorksListMeta"},"results":{"items":{"$ref":"#/components/schemas/DocumentRead"},"type":"array","title":"Results"}},"type":"object","required":["meta","results"],"title":"WorksListResponse","description":"The ``{meta, results}`` works list envelope. Declared for OpenAPI only\n(the routes return a plain dict so ``?select=`` sparse fieldsets survive);\nruntime serialization is untouched. Each result is a :class:`DocumentRead`."}}}}