{"id":"fhi","name":"FHI Statistics","description":"Public-health tables from the Norwegian Institute of Public Health and Directorate of Health.","documentation":"https://statistikk-data.fhi.no/","operations":[{"name":"list_sources","description":"List the statistics sources (registers) in FHI's statistics banks.","parameters":[{"name":"limit","type":"integer","schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"display_type":"integer","required":false,"default":25,"description":"Maximum list items returned by the gateway (default 25, maximum 100)."},{"name":"offset","type":"integer","schema":{"type":"integer","minimum":0,"default":0},"display_type":"integer","required":false,"default":0,"description":"Number of list items to skip before returning the page."}],"json_get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/list_sources?limit=25&offset=0","output_fields":[],"output_fields_truncated":false,"canonical_field_aliases":{},"description_language":"en","documentation":"List the statistics sources (registers) in FHI's statistics banks.\n\nA source is one register or statistics bank, e.g. \"daar\" (causes of\ndeath), \"mfr\" (births), \"msis\" (infectious diseases), \"nokkel\"\n(municipal public-health statistics), \"sysvak\" (vaccinations).\nPass a source id to search_tables() and the table tools.","documentation_language":"en","wiki_get_endpoint":"https://allemannsdata.com/wiki/kilder/fhi/list_sources/","wiki_get_url_template":"https://allemannsdata.com/wiki/kilder/fhi/list_sources/?hent=1&limit=25&offset=0","json_endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/list_sources","response_schema":{"type":"array","items":{"type":"object","additionalProperties":{"x-allemannsdata-schema-status":"unresolved","description":"Response shape is not yet declared; any JSON value is permitted."}}},"response_schema_status":{"status":"incomplete","codegen_safe":false,"description":"Not suitable for typed model generation: the container shape and field names are useful, but unresolved values accept any JSON value."},"entity_projection":{"status":"projected","entity_types":["statistical_table"],"description":"Recognized records and stable operation identifiers are projected; an empty array means the successful payload contained no recognizable entity."},"response_schema_url":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/list_sources/schema","endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/list_sources","get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/list_sources?limit=25&offset=0"},{"name":"search_tables","description":"Find tables by keyword in their titles, across all sources or one.","parameters":[{"name":"query","type":"string","schema":{"type":"string"},"display_type":"string","required":false,"default":"","description":"Words to match in table titles (case-insensitive, all words must appear), e.g. \"svangerskapsavbrot alder\". Titles are in Norwegian. Empty query lists every table."},{"name":"source_id","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"display_type":"string","required":false,"default":null,"description":"Limit to one source id from list_sources(), e.g. \"daar\"."},{"name":"limit","type":"integer","schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"display_type":"integer","required":false,"default":25,"description":"Maximum list items returned by the gateway (default 25, maximum 100)."},{"name":"offset","type":"integer","schema":{"type":"integer","minimum":0,"default":0},"display_type":"integer","required":false,"default":0,"description":"Number of list items to skip before returning the page."}],"json_get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/search_tables?query=&source_id={source_id}&limit=25&offset=0","output_fields":["[].source_id","[].table_id","[].title","[].published_at","[].modified_at"],"output_fields_truncated":false,"canonical_field_aliases":{"name":["[].title"],"date":["[].published_at","[].modified_at"]},"description_language":"en","documentation":"Find tables by keyword in their titles, across all sources or one.\n\nArgs:\n    query: Words to match in table titles (case-insensitive, all words\n        must appear), e.g. \"svangerskapsavbrot alder\". Titles are in\n        Norwegian. Empty query lists every table.\n    source_id: Limit to one source id from list_sources(), e.g. \"daar\".\n\nReturns [{source_id, table_id, title, published_at, modified_at}].\nFeed source_id + table_id into get_table_dimensions().","documentation_language":"en","wiki_get_endpoint":"https://allemannsdata.com/wiki/kilder/fhi/search_tables/","wiki_get_url_template":"https://allemannsdata.com/wiki/kilder/fhi/search_tables/?query=&source_id={source_id}&limit=25&offset=0","json_endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/search_tables","response_schema":{"type":"array","items":{"type":"object","properties":{"source_id":{"type":"string"},"table_id":{"type":"integer"},"title":{"type":"string"},"published_at":{"type":["string","null"],"format":"date-time"},"modified_at":{"type":["string","null"],"format":"date-time"}},"additionalProperties":false,"required":["source_id","table_id","title"]}},"response_schema_status":{"status":"declared","codegen_safe":true,"description":"Maintained response contract."},"entity_projection":{"status":"projected","entity_types":["statistical_table"],"description":"Recognized records and stable operation identifiers are projected; an empty array means the successful payload contained no recognizable entity."},"response_schema_url":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/search_tables/schema","endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/search_tables","get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/search_tables?query=&source_id={source_id}&limit=25&offset=0","response_example":{"source":"fhi","operation":"search_tables","parameters":{"query":"","source_id":"example-id"},"data":[{"source_id":"example-id","table_id":1,"title":"Example","published_at":"2026-01-15T12:00:00Z","modified_at":"2026-01-15T12:00:00Z"}],"entities":[],"_meta":{"retrieved_at":"2026-01-15T12:00:00Z","language":"en","content_languages":["en"],"sources":[{"id":"fhi","name":"FHI Statistics","description":"Public-health tables from the Norwegian Institute of Public Health and Directorate of Health.","cache_ttl_seconds":300,"documentation":"https://statistikk-data.fhi.no/"}]},"_provenance":{"data":{"source":"fhi","source_api":"https://allemannsdata.com/wiki/api/v1/kilder/fhi"},"entities":{"source":"fhi","source_api":"https://allemannsdata.com/wiki/api/v1/kilder/fhi","derived_from":"#/data","description":"Normalized projection of data."}},"_links":{"self":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/search_tables","source":"https://allemannsdata.com/wiki/api/v1/kilder/fhi","wiki":"https://allemannsdata.com/wiki/kilder/fhi/search_tables/"}}},{"name":"get_table_dimensions","description":"Get a table's dimensions and the valid value codes for each.","parameters":[{"name":"source_id","type":"string","schema":{"type":"string"},"display_type":"string","required":true,"default":null,"description":"Source id from list_sources(), e.g. \"daar\"."},{"name":"table_id","type":"integer","schema":{"type":"integer"},"display_type":"integer","required":true,"default":null,"description":"Table id from search_tables(), e.g. 588."},{"name":"search_values","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"display_type":"string","required":false,"default":null,"description":"Optional filter on value labels (case-insensitive substring), useful for large hierarchical dimensions like geography \u2014 e.g. \"bergen\" to find a municipality code."},{"name":"limit","type":"integer","schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"display_type":"integer","required":false,"default":25,"description":"Maximum list items returned by the gateway (default 25, maximum 100)."},{"name":"offset","type":"integer","schema":{"type":"integer","minimum":0,"default":0},"display_type":"integer","required":false,"default":0,"description":"Number of list items to skip before returning the page."}],"json_get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_dimensions?source_id={source_id}&table_id={table_id}&search_values={search_values}&limit=25&offset=0","output_fields":["source_id","table_id","dimensions","dimensions[].code","dimensions[].label","dimensions[].values","dimensions[].values[].code","dimensions[].values[].label","dimensions[].note"],"output_fields_truncated":false,"canonical_field_aliases":{"identifier":["dimensions[].code","dimensions[].values[].code"],"name":["dimensions[].label","dimensions[].values[].label"]},"description_language":"en","documentation":"Get a table's dimensions and the valid value codes for each.\n\nArgs:\n    source_id: Source id from list_sources(), e.g. \"daar\".\n    table_id: Table id from search_tables(), e.g. 588.\n    search_values: Optional filter on value labels (case-insensitive\n        substring), useful for large hierarchical dimensions like\n        geography \u2014 e.g. \"bergen\" to find a municipality code.\n\nReturns per dimension its code, label and values as [{code, label}].\nValue lists are capped at 300 per dimension (with a note); use\nsearch_values to find specific codes in bigger dimensions. Pass the\ndimension codes and value codes to get_table_data().","documentation_language":"en","wiki_get_endpoint":"https://allemannsdata.com/wiki/kilder/fhi/get_table_dimensions/","wiki_get_url_template":"https://allemannsdata.com/wiki/kilder/fhi/get_table_dimensions/?source_id={source_id}&table_id={table_id}&search_values={search_values}&limit=25&offset=0","json_endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_dimensions","response_schema":{"type":"object","properties":{"source_id":{"type":["string","null"]},"table_id":{"type":["string","null"]},"dimensions":{"type":"array","items":{"anyOf":[{"x-allemannsdata-schema-status":"unresolved","description":"Response shape is not yet declared; any JSON value is permitted."},{"type":"object","properties":{"code":{"x-allemannsdata-schema-status":"unresolved","description":"Response shape is not yet declared; any JSON value is permitted."},"label":{"type":["string","null"]},"values":{"type":"array","items":{"type":"object","properties":{"code":{"x-allemannsdata-schema-status":"unresolved","description":"Response shape is not yet declared; any JSON value is permitted."},"label":{"type":["string","null"]}},"additionalProperties":false}},"note":{"anyOf":[{"type":"null"},{"type":"string"}]}},"additionalProperties":false}]}}},"additionalProperties":false},"response_schema_status":{"status":"incomplete","codegen_safe":false,"description":"Not suitable for typed model generation: the container shape and field names are useful, but unresolved values accept any JSON value."},"entity_projection":{"status":"projected","entity_types":["statistical_table"],"description":"Recognized records and stable operation identifiers are projected; an empty array means the successful payload contained no recognizable entity."},"response_schema_url":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_dimensions/schema","endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_dimensions","get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_dimensions?source_id={source_id}&table_id={table_id}&search_values={search_values}&limit=25&offset=0"},{"name":"get_table_data","description":"Query a table's data and return it as labeled rows.","parameters":[{"name":"source_id","type":"string","schema":{"type":"string"},"display_type":"string","required":true,"default":null,"description":"Source id from list_sources(), e.g. \"abr\"."},{"name":"table_id","type":"integer","schema":{"type":"integer"},"display_type":"integer","required":true,"default":null,"description":"Table id from search_tables(), e.g. 588."},{"name":"selections","type":"object","schema":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}]},"display_type":"JSON object","required":false,"default":null,"description":"Dict of {dimension_code: [value_codes]}, codes from get_table_dimensions(). Any dimension you omit is filled with ALL its values, so only specify the ones you want to narrow, but narrow enough that the result stays under 50000 cells. Example: {\"AARGANG\": [\"2023\", \"2024\"], \"MEASURE_TYPE\": [\"ANTALL\"]}"},{"name":"limit","type":"integer","schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"display_type":"integer","required":false,"default":25,"description":"Maximum list items returned by the gateway (default 25, maximum 100)."},{"name":"offset","type":"integer","schema":{"type":"integer","minimum":0,"default":0},"display_type":"integer","required":false,"default":0,"description":"Number of list items to skip before returning the page."}],"json_get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_data?source_id={source_id}&table_id={table_id}&selections={selections}&limit=25&offset=0","output_fields":["source_id","table_id","title","updated","unit","rows","rows[].value","total_cells","truncated"],"output_fields_truncated":false,"canonical_field_aliases":{"name":["title"]},"description_language":"en","documentation":"Query a table's data and return it as labeled rows.\n\nWarning: results over 50000 cells are refused, so calling this without\n`selections` fails on most tables. Call get_table_dimensions() first and\nfilter the biggest dimensions explicitly.\n\nArgs:\n    source_id: Source id from list_sources(), e.g. \"abr\".\n    table_id: Table id from search_tables(), e.g. 588.\n    selections: Dict of {dimension_code: [value_codes]}, codes from\n        get_table_dimensions(). Any dimension you omit is filled with\n        ALL its values, so only specify the ones you want to narrow,\n        but narrow enough that the result stays under 50000 cells.\n        Example: {\"AARGANG\": [\"2023\", \"2024\"], \"MEASURE_TYPE\": [\"ANTALL\"]}\n\nReturns `rows` (each a dict of dimension_label -> value_label plus a\nnumeric `value`) and `unit`. Rows are capped at 2000; `truncated` is true\nif the full cube was larger. If the result would be over 50000 cells the\nerror names the dimensions to filter - add filters and retry.\nData is CC BY 4.0, FHI / Helsedirektoratet.","documentation_language":"en","wiki_get_endpoint":"https://allemannsdata.com/wiki/kilder/fhi/get_table_data/","wiki_get_url_template":"https://allemannsdata.com/wiki/kilder/fhi/get_table_data/?source_id={source_id}&table_id={table_id}&selections={selections}&limit=25&offset=0","json_endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_data","response_schema":{"type":"object","properties":{"source_id":{"type":["string","null"]},"table_id":{"type":["string","null"]},"title":{"type":["string","null"]},"updated":{"x-allemannsdata-schema-status":"unresolved","description":"Response shape is not yet declared; any JSON value is permitted."},"unit":{"anyOf":[{"type":"null"},{"type":["string","null"]}]},"rows":{"type":"array","items":{"type":"object","properties":{"value":{"x-allemannsdata-schema-status":"unresolved","description":"Response shape is not yet declared; any JSON value is permitted."}},"additionalProperties":false}},"total_cells":{"x-allemannsdata-schema-status":"unresolved","description":"Response shape is not yet declared; any JSON value is permitted."},"truncated":{"type":"boolean"}},"additionalProperties":false},"response_schema_status":{"status":"incomplete","codegen_safe":false,"description":"Not suitable for typed model generation: the container shape and field names are useful, but unresolved values accept any JSON value."},"entity_projection":{"status":"projected","entity_types":["statistical_table"],"description":"Recognized records and stable operation identifiers are projected; an empty array means the successful payload contained no recognizable entity."},"response_schema_url":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_data/schema","endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_data","get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_data?source_id={source_id}&table_id={table_id}&selections={selections}&limit=25&offset=0"},{"name":"get_table_description","description":"Get a table's descriptive metadata: what the register covers, how the\nfigures are produced, and caveats for interpreting them.","parameters":[{"name":"source_id","type":"string","schema":{"type":"string"},"display_type":"string","required":true,"default":null,"description":"Source id from list_sources(), e.g. \"abr\"."},{"name":"table_id","type":"integer","schema":{"type":"integer"},"display_type":"integer","required":true,"default":null,"description":"Table id from search_tables(), e.g. 588."},{"name":"limit","type":"integer","schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"display_type":"integer","required":false,"default":25,"description":"Maximum list items returned by the gateway (default 25, maximum 100)."},{"name":"offset","type":"integer","schema":{"type":"integer","minimum":0,"default":0},"display_type":"integer","required":false,"default":0,"description":"Number of list items to skip before returning the page."}],"json_get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_description?source_id={source_id}&table_id={table_id}&limit=25&offset=0","output_fields":["name","is_official_statistics","paragraphs","paragraphs[].header","paragraphs[].content"],"output_fields_truncated":false,"canonical_field_aliases":{"name":["name"]},"description_language":"en","documentation":"Get a table's descriptive metadata: what the register covers, how the\nfigures are produced, and caveats for interpreting them.\n\nArgs:\n    source_id: Source id from list_sources(), e.g. \"abr\".\n    table_id: Table id from search_tables(), e.g. 588.\n\nReturns the table name, whether it is official statistics, and the\ndescription paragraphs as plain text (HTML stripped).","documentation_language":"en","wiki_get_endpoint":"https://allemannsdata.com/wiki/kilder/fhi/get_table_description/","wiki_get_url_template":"https://allemannsdata.com/wiki/kilder/fhi/get_table_description/?source_id={source_id}&table_id={table_id}&limit=25&offset=0","json_endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_description","response_schema":{"type":"object","properties":{"name":{"type":["string","null"]},"is_official_statistics":{"type":["boolean","null"]},"paragraphs":{"type":"array","items":{"type":"object","properties":{"header":{"x-allemannsdata-schema-status":"unresolved","description":"Response shape is not yet declared; any JSON value is permitted."},"content":{"type":"string"}},"additionalProperties":false}}},"additionalProperties":false},"response_schema_status":{"status":"incomplete","codegen_safe":false,"description":"Not suitable for typed model generation: the container shape and field names are useful, but unresolved values accept any JSON value."},"entity_projection":{"status":"projected","entity_types":["statistical_table"],"description":"Recognized records and stable operation identifiers are projected; an empty array means the successful payload contained no recognizable entity."},"response_schema_url":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_description/schema","endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_description","get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/get_table_description?source_id={source_id}&table_id={table_id}&limit=25&offset=0"}],"operation_schema_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/fhi/{operation}/schema","related_sources":[],"_meta":{"retrieved_at":"2026-08-02T14:01:29Z","language":"en","content_languages":["en"],"sources":[{"id":"fhi","name":"FHI Statistics","description":"Public-health tables from the Norwegian Institute of Public Health and Directorate of Health.","documentation":"https://statistikk-data.fhi.no/","cache_ttl_seconds":300}]},"_links":{"self":"https://allemannsdata.com/wiki/api/v1/kilder/fhi","names":"https://allemannsdata.com/wiki/api/v1/kilder/fhi?view=names","compact":"https://allemannsdata.com/wiki/api/v1/kilder/fhi?view=compact","full":"https://allemannsdata.com/wiki/api/v1/kilder/fhi","wiki":"https://allemannsdata.com/wiki/kilder/fhi/"}}
