{"id":"mattilsynet","name":"Norwegian Food Safety Authority","description":"Food-service establishments, hygiene inspection history and Smilefjes requirement assessments.","documentation":"https://matnyttig.mattilsynet.no/smilefjes/","operations":[{"name":"search_establishments","description":"Search food-serving establishments by their most recent Smilefjes grade. Signature: search_establishments(name: string, optional, default None; poststed: string, optional, default None; postnr: string, optional, default None; min_karakter: integer, optional, default None; limit: integer, items, optional, default 20; offset: integer, items, optional, default 0).","signature":"search_establishments(name: string, optional, default None; poststed: string, optional, default None; postnr: string, optional, default None; min_karakter: integer, optional, default None; limit: integer, items, optional, default 20; offset: integer, items, optional, default 0)","parameters":[{"name":"name","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":false,"default":null,"description":"Substring match on establishment name (case-insensitive).","unit":null,"display_type":"string"},{"name":"poststed","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":false,"default":null,"description":"Filter by city/town, e.g. \"Oslo\" (case-insensitive).","unit":null,"display_type":"string"},{"name":"postnr","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":false,"default":null,"description":"Filter by exact postal code, e.g. \"0162\".","unit":null,"display_type":"string"},{"name":"min_karakter","type":"integer","schema":{"anyOf":[{"type":"integer"},{"type":"null"}]},"required":false,"default":null,"description":"Only establishments whose latest grade is at least this (0=smiling/no violations ... 3=frowning/serious violations).","unit":null,"display_type":"integer"},{"name":"limit","type":"integer","schema":{"type":"integer"},"required":false,"default":20,"description":"Max establishments to return. Unit: items.","unit":"items","display_type":"integer"},{"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.","unit":"items"}],"json_get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/search_establishments?name={name}&poststed={poststed}&postnr={postnr}&min_karakter={min_karakter}&limit=20&offset=0","output_fields":["total","establishments","establishments[].inspection_id","establishments[].establishment_id","establishments[].navn","establishments[].adresse","establishments[].postnr","establishments[].poststed","establishments[].orgnummer","establishments[].dato","establishments[].karakter","establishments[].oppfolgingstilsyn","establishments[].temaer","establishments[].temaer[].tema","establishments[].temaer[].karakter"],"output_fields_truncated":false,"canonical_field_aliases":{"name":["establishments[].navn"],"date":["establishments[].dato"]},"description_language":"en","documentation":"Search food-serving establishments by their most recent Smilefjes grade.\n\nArgs:\n    name: Substring match on establishment name (case-insensitive).\n    poststed: Filter by city/town, e.g. \"Oslo\" (case-insensitive).\n    postnr: Filter by exact postal code, e.g. \"0162\".\n    min_karakter: Only establishments whose latest grade is at least this\n        (0=smiling/no violations ... 3=frowning/serious violations).\n    limit: Max establishments to return.\n\nReturns each matching establishment's LATEST inspection only, worst grade\nand most recent first. Use get_inspection_history for the full timeline.\n\nSignature: search_establishments(name: string, optional, default None; poststed: string, optional, default None; postnr: string, optional, default None; min_karakter: integer, optional, default None; limit: integer, items, optional, default 20; offset: integer, items, optional, default 0).","documentation_language":"en","wiki_get_endpoint":"https://allemannsdata.com/wiki/kilder/mattilsynet/search_establishments/","wiki_get_url_template":"https://allemannsdata.com/wiki/kilder/mattilsynet/search_establishments/?name={name}&poststed={poststed}&postnr={postnr}&min_karakter={min_karakter}&limit=20&offset=0","json_endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/search_establishments","response_schema":{"type":"object","properties":{"total":{"type":"integer"},"establishments":{"type":"array","items":{"type":"object","properties":{"inspection_id":{"type":"string"},"establishment_id":{"type":"string"},"navn":{"type":["string","null"]},"adresse":{"type":["string","null"]},"postnr":{"type":["string","null"]},"poststed":{"type":["string","null"]},"orgnummer":{"type":["string","null"]},"dato":{"type":["string","null"],"format":"date"},"karakter":{"type":["integer","null"]},"oppfolgingstilsyn":{"type":"boolean"},"temaer":{"type":"array","items":{"type":"object","properties":{"tema":{"type":["string","null"]},"karakter":{"type":"integer"}},"additionalProperties":false,"required":["tema","karakter"]}}},"additionalProperties":false,"required":["inspection_id","establishment_id"]}}},"additionalProperties":false,"required":["total","establishments"]},"response_schema_status":{"status":"declared","codegen_safe":true,"description":"Maintained response contract."},"entity_projection":{"status":"projected","entity_types":["food_establishment"],"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/mattilsynet/search_establishments/schema","endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/search_establishments","get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/search_establishments?name={name}&poststed={poststed}&postnr={postnr}&min_karakter={min_karakter}&limit=20&offset=0","response_example":{"source":"mattilsynet","operation":"search_establishments","parameters":{"name":"Example","poststed":"example value","postnr":"example value","min_karakter":1,"limit":20},"data":{"total":1,"establishments":[{"inspection_id":"example-id","establishment_id":"example-id","navn":"example value","adresse":"example value","postnr":"example value","poststed":"example value","orgnummer":"example value","dato":"2026-01-15","karakter":1,"oppfolgingstilsyn":true,"temaer":[{"tema":"example value","karakter":1}]}]},"entities":[],"_meta":{"retrieved_at":"2026-01-15T12:00:00Z","language":"en","content_languages":["en"],"sources":[{"id":"mattilsynet","name":"Norwegian Food Safety Authority","description":"Food-service establishments, hygiene inspection history and Smilefjes requirement assessments.","cache_ttl_seconds":300,"documentation":"https://matnyttig.mattilsynet.no/smilefjes/"}]},"_provenance":{"data":{"source":"mattilsynet","source_api":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet"},"entities":{"source":"mattilsynet","source_api":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet","derived_from":"#/data","description":"Normalized projection of data."}},"_links":{"self":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/search_establishments","source":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet","wiki":"https://allemannsdata.com/wiki/kilder/mattilsynet/search_establishments/","feedback":"https://allemannsdata.com/wiki/api/v1/feedback"}}},{"name":"get_inspection_history","description":"Get every Smilefjes inspection recorded for one establishment, oldest first. Signature: get_inspection_history(establishment_id: string, optional, default None; orgnummer: string, optional, default None; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0).","signature":"get_inspection_history(establishment_id: string, optional, default None; orgnummer: string, optional, default None; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0)","parameters":[{"name":"establishment_id","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":false,"default":null,"description":"Establishment id, from search_establishments.","unit":null,"display_type":"string"},{"name":"orgnummer","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":false,"default":null,"description":"Alternatively, an organisation number - covers every establishment under it (e.g. all addresses of one chain).","unit":null,"display_type":"string"},{"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).","unit":"items"},{"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.","unit":"items"}],"json_get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/get_inspection_history?establishment_id={establishment_id}&orgnummer={orgnummer}&limit=25&offset=0","output_fields":["total","inspections","inspections[].inspection_id","inspections[].establishment_id","inspections[].navn","inspections[].adresse","inspections[].postnr","inspections[].poststed","inspections[].orgnummer","inspections[].dato","inspections[].karakter","inspections[].oppfolgingstilsyn","inspections[].temaer","inspections[].temaer[].tema","inspections[].temaer[].karakter"],"output_fields_truncated":false,"canonical_field_aliases":{"name":["inspections[].navn"],"date":["inspections[].dato"]},"description_language":"en","documentation":"Get every Smilefjes inspection recorded for one establishment, oldest first.\n\nArgs:\n    tilsynsobjektid: Establishment id, from search_establishments.\n    orgnummer: Alternatively, an organisation number - covers every\n        establishment under it (e.g. all addresses of one chain).\n\nProvide exactly one of the two. Each entry's tilsynid can be passed to\nget_requirement_points() for the detailed per-requirement grades.\n\nSignature: get_inspection_history(establishment_id: string, optional, default None; orgnummer: string, optional, default None; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0).","documentation_language":"en","wiki_get_endpoint":"https://allemannsdata.com/wiki/kilder/mattilsynet/get_inspection_history/","wiki_get_url_template":"https://allemannsdata.com/wiki/kilder/mattilsynet/get_inspection_history/?establishment_id={establishment_id}&orgnummer={orgnummer}&limit=25&offset=0","json_endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/get_inspection_history","response_schema":{"type":"object","properties":{"total":{"type":"integer"},"inspections":{"type":"array","items":{"type":"object","properties":{"inspection_id":{"type":"string"},"establishment_id":{"type":"string"},"navn":{"type":["string","null"]},"adresse":{"type":["string","null"]},"postnr":{"type":["string","null"]},"poststed":{"type":["string","null"]},"orgnummer":{"type":["string","null"]},"dato":{"type":["string","null"],"format":"date"},"karakter":{"type":["integer","null"]},"oppfolgingstilsyn":{"type":"boolean"},"temaer":{"type":"array","items":{"type":"object","properties":{"tema":{"type":["string","null"]},"karakter":{"type":"integer"}},"additionalProperties":false,"required":["tema","karakter"]}}},"additionalProperties":false,"required":["inspection_id","establishment_id"]}}},"additionalProperties":false,"required":["total","inspections"]},"response_schema_status":{"status":"declared","codegen_safe":true,"description":"Maintained response contract."},"entity_projection":{"status":"projected","entity_types":["food_establishment"],"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/mattilsynet/get_inspection_history/schema","endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/get_inspection_history","get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/get_inspection_history?establishment_id={establishment_id}&orgnummer={orgnummer}&limit=25&offset=0","response_example":{"source":"mattilsynet","operation":"get_inspection_history","parameters":{"establishment_id":"example-id","orgnummer":"example value"},"data":{"total":1,"inspections":[{"inspection_id":"example-id","establishment_id":"example-id","navn":"example value","adresse":"example value","postnr":"example value","poststed":"example value","orgnummer":"example value","dato":"2026-01-15","karakter":1,"oppfolgingstilsyn":true,"temaer":[{"tema":"example value","karakter":1}]}]},"entities":[],"_meta":{"retrieved_at":"2026-01-15T12:00:00Z","language":"en","content_languages":["en"],"sources":[{"id":"mattilsynet","name":"Norwegian Food Safety Authority","description":"Food-service establishments, hygiene inspection history and Smilefjes requirement assessments.","cache_ttl_seconds":300,"documentation":"https://matnyttig.mattilsynet.no/smilefjes/"}]},"_provenance":{"data":{"source":"mattilsynet","source_api":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet"},"entities":{"source":"mattilsynet","source_api":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet","derived_from":"#/data","description":"Normalized projection of data."}},"_links":{"self":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/get_inspection_history","source":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet","wiki":"https://allemannsdata.com/wiki/kilder/mattilsynet/get_inspection_history/","feedback":"https://allemannsdata.com/wiki/api/v1/feedback"}}},{"name":"get_requirement_points","description":"Get the detailed requirement-point (kravpunkt) grades for one inspection. Signature: get_requirement_points(inspection_id: string, required; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0).","signature":"get_requirement_points(inspection_id: string, required; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0)","parameters":[{"name":"inspection_id","type":"string","schema":{"type":"string"},"required":true,"default":null,"description":"Inspection id, from search_establishments or get_inspection_history.","unit":null,"display_type":"string"},{"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).","unit":"items"},{"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.","unit":"items"}],"json_get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/get_requirement_points?inspection_id={inspection_id}&limit=25&offset=0","output_fields":["inspection_id","kravpunkter","kravpunkter[].kravpunkt","kravpunkter[].navn","kravpunkter[].karakter","kravpunkter[].kommentar"],"output_fields_truncated":false,"canonical_field_aliases":{"name":["kravpunkter[].navn"]},"description_language":"en","documentation":"Get the detailed requirement-point (kravpunkt) grades for one inspection.\n\nGrades: 0 = requirement met, 1-3 = increasing severity of violation (with\na comment explaining it), 4 = not applicable (\"Ikke aktuelt\"), 5 = not\nassessed (\"Ikke vurdert\"). Codes 4 and 5 fall outside the 0-3 smiley scale\nand do not affect the establishment's overall grade; 5 (not assessed) is\nthe single most common value.\n\nArgs:\n    tilsynid: Inspection id, from search_establishments or\n        get_inspection_history.\n\nSignature: get_requirement_points(inspection_id: string, required; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0).","documentation_language":"en","wiki_get_endpoint":"https://allemannsdata.com/wiki/kilder/mattilsynet/get_requirement_points/","wiki_get_url_template":"https://allemannsdata.com/wiki/kilder/mattilsynet/get_requirement_points/?inspection_id={inspection_id}&limit=25&offset=0","json_endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/get_requirement_points","response_schema":{"type":"object","properties":{"inspection_id":{"type":"string"},"kravpunkter":{"type":"array","items":{"type":"object","properties":{"kravpunkt":{"type":["string","null"]},"navn":{"type":["string","null"]},"karakter":{"type":"integer"},"kommentar":{"type":["string","null"]}},"additionalProperties":false,"required":["karakter"]}}},"additionalProperties":false,"required":["inspection_id","kravpunkter"]},"response_schema_status":{"status":"declared","codegen_safe":true,"description":"Maintained response contract."},"entity_projection":{"status":"projected","entity_types":["food_establishment"],"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/mattilsynet/get_requirement_points/schema","endpoint":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/get_requirement_points","get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/get_requirement_points?inspection_id={inspection_id}&limit=25&offset=0","response_example":{"source":"mattilsynet","operation":"get_requirement_points","parameters":{"inspection_id":"example-id"},"data":{"inspection_id":"example-id","kravpunkter":[{"kravpunkt":"example value","navn":"example value","karakter":1,"kommentar":"example value"}]},"entities":[],"_meta":{"retrieved_at":"2026-01-15T12:00:00Z","language":"en","content_languages":["en"],"sources":[{"id":"mattilsynet","name":"Norwegian Food Safety Authority","description":"Food-service establishments, hygiene inspection history and Smilefjes requirement assessments.","cache_ttl_seconds":300,"documentation":"https://matnyttig.mattilsynet.no/smilefjes/"}]},"_provenance":{"data":{"source":"mattilsynet","source_api":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet"},"entities":{"source":"mattilsynet","source_api":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet","derived_from":"#/data","description":"Normalized projection of data."}},"_links":{"self":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/get_requirement_points","source":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet","wiki":"https://allemannsdata.com/wiki/kilder/mattilsynet/get_requirement_points/","feedback":"https://allemannsdata.com/wiki/api/v1/feedback"}}}],"operation_schema_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet/{operation}/schema","related_sources":[],"_meta":{"retrieved_at":"2026-09-20T20:03:53Z","language":"en","content_languages":["en"],"sources":[{"id":"mattilsynet","name":"Norwegian Food Safety Authority","description":"Food-service establishments, hygiene inspection history and Smilefjes requirement assessments.","documentation":"https://matnyttig.mattilsynet.no/smilefjes/","cache_ttl_seconds":300}]},"_links":{"self":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet","names":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet?view=names","compact":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet?view=compact","full":"https://allemannsdata.com/wiki/api/v1/kilder/mattilsynet","wiki":"https://allemannsdata.com/wiki/kilder/mattilsynet/","feedback":"https://allemannsdata.com/wiki/api/v1/feedback"}}
