{"openapi":"3.0.3","info":{"title":"Gnist Context — eInnsyn (Norwegian Public Records)","description":"Norwegian public records — journal entries, case folders, and meeting documents from government agencies.\n\n- **MCP endpoint:** `https://context.gnist.ai/mcp/einnsyn/`\n- **Toolkit page:** `/toolkits/einnsyn`\n- **Full API spec:** `/api/openapi.json`\n- **Get an API key:** `/signup`","version":"1.0.0","contact":{"name":"GnistAI","url":"https://gnist.ai"}},"servers":[{"url":"https://context.gnist.ai","description":"Production"}],"paths":{"/rest/einnsyn/search_records":{"post":{"tags":["Government"],"summary":"search_records","description":"Search Norwegian public records — journal entries, case folders, and meeting documents.\n\neInnsyn is Norway's official public records portal. All government agencies are required\nto publish their correspondence journals here. This tool searches across all agencies.\n\nArgs:\n    query: Free-text search. Supports exact match with quotes, exclusion with minus.\n    entity: Filter by type: 'Journalpost', 'Saksmappe', 'Moetemappe', or 'Moetesak'.\n    limit: Results per page (1-100, default 25).\n    journal_date_from: Filter by journal date start (ISO date, e.g. '2025-01-01').\n    journal_date_to: Filter by journal date end (ISO date).\n    journalpost_type: Filter journal type: 'inngaaende_dokument', 'utgaaende_dokument',\n        'organinternt_dokument_uten_oppfoelging', 'organinternt_dokument_for_oppfoelging'.\n    sort_by: Sort order (default 'score'). Options: 'score', 'journaldato', 'publisertDato',\n        'tittel', 'administrativEnhetNavn'.\n\nReturns:\n    Dict with 'count', 'items' list, and 'next' cursor for pagination.","operationId":"einnsyn_search_records","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"query":{"description":"Free-text search. Supports exact match with quotes, exclusion with minus.","type":"string"},"entity":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Filter by type: 'Journalpost', 'Saksmappe', 'Moetemappe', or 'Moetesak'."},"limit":{"default":25,"description":"Results per page (1-100, default 25).","type":"integer"},"journal_date_from":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Filter by journal date start (ISO date, e.g. '2025-01-01')."},"journal_date_to":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Filter by journal date end (ISO date)."},"journalpost_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Filter journal type: 'inngaaende_dokument', 'utgaaende_dokument', 'organinternt_dokument_uten_oppfoelging', 'organinternt_dokument_for_oppfoelging'."},"sort_by":{"default":"score","description":"Sort order (default 'score'). Options: 'score', 'journaldato', 'publisertDato', 'tittel', 'administrativEnhetNavn'.","type":"string"}},"required":["query"],"type":"object"}}}}}},"/rest/einnsyn/get_journal_entry":{"post":{"tags":["Government"],"summary":"get_journal_entry","description":"Get a specific journal entry (journalpost) from eInnsyn.\n\nReturns the full entry with correspondents (senders/recipients) and attached\ndocument metadata. Use the ID from search_records results.\n\nArgs:\n    journalpost_id: The journal entry ID (e.g. 'jp_...' or a UUID).\n\nReturns:\n    Full journal entry with title, dates, correspondents, and documents.","operationId":"einnsyn_get_journal_entry","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"journalpost_id":{"description":"The journal entry ID (e.g. 'jp_...' or a UUID).","type":"string"}},"required":["journalpost_id"],"type":"object"}}}}}},"/rest/einnsyn/get_case_folder":{"post":{"tags":["Government"],"summary":"get_case_folder","description":"Get a case folder (saksmappe) from eInnsyn.\n\nA case folder groups related journal entries for a government case.\nReturns the case metadata and list of associated journal entry IDs.\n\nArgs:\n    saksmappe_id: The case folder ID (e.g. 'sm_...' or a UUID).\n\nReturns:\n    Case folder with title, case number, and journal entry references.","operationId":"einnsyn_get_case_folder","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"saksmappe_id":{"description":"The case folder ID (e.g. 'sm_...' or a UUID).","type":"string"}},"required":["saksmappe_id"],"type":"object"}}}}}},"/rest/einnsyn/list_organizations":{"post":{"tags":["Government"],"summary":"list_organizations","description":"List government organizations registered in eInnsyn.\n\nReturns organizational units (ministries, agencies, municipalities) that\npublish records to eInnsyn.\n\nArgs:\n    limit: Number of organizations to return (1-100, default 25).\n\nReturns:\n    Dict with 'count', 'units' list (id, name, parent), and 'next' cursor.","operationId":"einnsyn_list_organizations","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"limit":{"default":25,"description":"Number of organizations to return (1-100, default 25).","type":"integer"}},"type":"object"}}}}}},"/rest/einnsyn/get_publication_statistics":{"post":{"tags":["Government"],"summary":"get_publication_statistics","description":"Get aggregate publication statistics for eInnsyn records.\n\nShows how many records have been published, how many include full text,\nand download counts. Useful for transparency reporting and trend analysis.\n\nArgs:\n    interval: Aggregation interval: 'hour', 'day', 'week', 'month', 'year'.\n    date_from: Start date (ISO, e.g. '2025-01-01'). Defaults to one year ago.\n    date_to: End date (ISO). Defaults to today.\n\nReturns:\n    Dict with 'summary' (totals) and 'time_series' (bucketed counts).","operationId":"einnsyn_get_publication_statistics","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"interval":{"default":"month","description":"Aggregation interval: 'hour', 'day', 'week', 'month', 'year'.","type":"string"},"date_from":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Start date (ISO, e.g. '2025-01-01'). Defaults to one year ago."},"date_to":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"End date (ISO). Defaults to today."}},"type":"object"}}}}}},"/rest/einnsyn/report_feedback":{"post":{"tags":["Government"],"summary":"report_feedback","description":"Report a bug, feature request, or general feedback for this data source.\n\nUse this when something doesn't work as expected, when you'd like\na new feature, or when you have suggestions for improvement.\n\nArgs:\n    feedback: Describe the issue or suggestion.\n    feedback_type: One of 'bug', 'feature_request', or 'general'.","operationId":"einnsyn_report_feedback","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"feedback":{"type":"string"},"feedback_type":{"default":"general","type":"string"}},"required":["feedback"],"type":"object"}}}}}}},"tags":[{"name":"Government","description":"Data sources: Government"}],"components":{"securitySchemes":{"ApiKeyHeader":{"type":"apiKey","in":"header","name":"gnist-api-key","description":"API key passed via request header."},"ApiKeyQuery":{"type":"apiKey","in":"query","name":"gnist_api_key","description":"API key passed via query parameter."}}}}