{
 "categories": [
  "government",
  "public-sector",
  "archive"
 ],
 "deployment": "saas",
 "evidence": [
  {
   "date": "2026-09-03",
   "fact": "homepage",
   "note": "Digdir presents eInnsyn as the shared publication and access service for the public sector. It publishes postal journals from state, municipal, and county bodies plus meeting and committee information.",
   "source": "https://samarbeid.digdir.no/einnsyn/dette-er-einnsyn/81",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "vendor",
   "note": "The technical documentation is Digdir documentation for architects, developers, and operators at public organisations and their suppliers.",
   "source": "https://docs.digdir.no/docs/eInnsyn/",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "license",
   "note": "eInnsyn is a Digdir common service. State customers covered by offentlegforskrifta \u00a7 6 are centrally financed. Municipal use is user-financed, but Digdir states there will be no invoicing in 2025 or 2026.",
   "source": "https://samarbeid.digdir.no/einnsyn/kostnadsmodell-einnsyn/101",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.api.exists",
   "note": "Digdir documents how to publish digitized meetings and meeting cases to eInnsyn via REST. Production is https://api.einnsyn.no; test is https://api.test.einnsyn.no.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.api.kinds[0]",
   "note": "The how-to documents HTTP POST resources /arkiv, /arkiv/{systemId}/arkivdel, /arkivdel/{systemId}/saksmappe, and /arkivdel/{systemId}/moetemappe.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.api.kinds[1]",
   "note": "Digdir's felleslosninger/einnsyn-api-spec repository publishes a TypeSpec source and generated OpenAPI document at openapi/einnsyn.openapi.yml.",
   "source": "https://github.com/felleslosninger/einnsyn-api-spec",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.api.auth[0]",
   "note": "All calls authenticate with header API-KEY: secret_.... Keys are generated after Ansattporten login at autorisasjon.einnsyn.no. Production key access requires the Altinn delegation Virksomhetsadministrering i eInnsyn.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.api.coverage",
   "note": "The opened OpenAPI README documents standard CRUD plus task endpoints /search, /statistics, and /me. Digdir's how-to remains the meeting-publication walkthrough and does not replace that spec.",
   "source": "https://raw.githubusercontent.com/felleslosninger/einnsyn-api-spec/main/README.md",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.api.docs",
   "note": "Opened as Digdir's current REST publishing how-to, including hosts, API-KEY, and the meeting-case resource sequence.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.sdk.exists",
   "note": "The publishing how-to lists a Java client library next to the OpenAPI specification.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.sdk.languages[0]",
   "note": "felleslosninger/einnsyn-sdk-java documents EInnsynClient against https://api.einnsyn.no with Maven coordinates no.einnsyn:sdk.",
   "source": "https://raw.githubusercontent.com/felleslosninger/einnsyn-sdk-java/main/README.md",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.sdk.languages[1]",
   "note": "The official API-spec README lists a TypeScript SDK at felleslosninger/einnsyn-sdk-typescript beside the Java SDK.",
   "source": "https://raw.githubusercontent.com/felleslosninger/einnsyn-api-spec/main/README.md",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.sdk.official",
   "note": "The Digdir felleslosninger API-spec repository presents the Java and TypeScript SDKs as the project's client libraries.",
   "source": "https://raw.githubusercontent.com/felleslosninger/einnsyn-api-spec/main/README.md",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.extensibility.scripting[0]",
   "note": "Publishers create Arkiv and Arkivdel once, then POST saksmappe and moetemappe using their own systemId UUIDs.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.extensibility.scripting[1]",
   "note": "The Java SDK builds and saves Saksmappe, adds Journalpost, lists, deletes, and calls client.search().",
   "source": "https://raw.githubusercontent.com/felleslosninger/einnsyn-sdk-java/main/README.md",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.extensibility.scripting[2]",
   "note": "A second publishing path sends Noark-derived JSON-LD through eFormidling, either via the eInnsyn client or direct POST to the integrasjonspunkt. That transport is eFormidling.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_til_einnsyn",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.data_access.export[0]",
   "note": "The Java SDK retrieves a Saksmappe by id, optionally expanding nested journal posts.",
   "source": "https://raw.githubusercontent.com/felleslosninger/einnsyn-sdk-java/main/README.md",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.data_access.export[1]",
   "note": "The opened OpenAPI document lists GET /journalpost as a paginated list of journal-post objects.",
   "source": "https://raw.githubusercontent.com/felleslosninger/einnsyn-api-spec/main/openapi/einnsyn.openapi.yml",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.data_access.export[2]",
   "note": "GET /search is documented with query, date, case-number, meeting, and fulltext filters. This is the authenticated REST search, not an inference from the meeting how-to.",
   "source": "https://raw.githubusercontent.com/felleslosninger/einnsyn-api-spec/main/openapi/einnsyn.openapi.yml",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.data_access.import[0]",
   "note": "POST /arkiv and POST /arkiv/{systemId}/arkivdel create the top-level structure reused by later publication calls.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.data_access.import[1]",
   "note": "POST /arkivdel/{systemId}/saksmappe can include journalpost, dokumentbeskrivelse, and dokumentobjekt in the same call.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.data_access.import[2]",
   "note": "POST /arkivdel/{systemId}/moetemappe can include moetesak and documents in the same call.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "modalities.agent_docs.llms_txt",
   "note": "https://docs.digdir.no/llms.txt returned HTTP 404 on 2026-09-03. https://einnsyn.no/llms.txt returned an HTML not-found page, not agent documentation.",
   "source": "https://docs.digdir.no/llms.txt",
   "tier": "scraped"
  },
  {
   "date": "2026-09-03",
   "fact": "verdict.scores.api",
   "note": "Documented REST with OpenAPI and an official Java SDK is a usable production path. Ansattporten login, Altinn delegation, API-key secrecy, and the split between the meeting how-to and the broader OpenAPI keep the score in the useful-with-limits tier.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "freshness.watch[0].url",
   "note": "Opened and verified as the current REST meeting-publication how-to, including API-KEY and hosts.",
   "source": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "freshness.watch[1].url",
   "note": "Opened and verified as the current first-party OpenAPI and TypeSpec repository.",
   "source": "https://github.com/felleslosninger/einnsyn-api-spec",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "freshness.watch[2].url",
   "note": "Opened and verified as the current REST FAQ covering field mapping from Noark and JSON-LD.",
   "source": "https://docs.digdir.no/docs/eInnsyn/einnsyn_api_faq.html",
   "tier": "declared"
  },
  {
   "date": "2026-09-03",
   "fact": "freshness.watch[3].url",
   "note": "Opened and verified as the current Samarbeidsportalen product page.",
   "source": "https://samarbeid.digdir.no/einnsyn/dette-er-einnsyn/81",
   "tier": "declared"
  }
 ],
 "freshness": {
  "last_verified": "2026-09-03",
  "volatility": "medium",
  "watch": [
   {
    "type": "docs",
    "url": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html"
   },
   {
    "type": "repo",
    "url": "https://github.com/felleslosninger/einnsyn-api-spec"
   },
   {
    "type": "docs",
    "url": "https://docs.digdir.no/docs/eInnsyn/einnsyn_api_faq.html"
   },
   {
    "type": "docs",
    "url": "https://samarbeid.digdir.no/einnsyn/dette-er-einnsyn/81"
   }
  ]
 },
 "homepage": "https://samarbeid.digdir.no/einnsyn/dette-er-einnsyn/81",
 "id": "einnsyn",
 "license": "free",
 "modalities": {
  "agent_docs": {
   "llms_txt": false
  },
  "api": {
   "auth": [
    "api-key"
   ],
   "coverage": "partial",
   "docs": "https://docs.digdir.no/docs/eInnsyn/publisering_med_api.html",
   "exists": true,
   "kinds": [
    "rest",
    "openapi"
   ]
  },
  "cli": {
   "exists": "unknown"
  },
  "computer_use": {
   "issues": [],
   "viability": "unknown"
  },
  "data_access": {
   "export": [
    "saksmappe-json",
    "journalpost-json",
    "search-results"
   ],
   "import": [
    "arkiv-json",
    "saksmappe-json",
    "moetemappe-json"
   ]
  },
  "extensibility": {
   "scripting": [
    "rest-publishing",
    "java-sdk",
    "eformidling-jsonld"
   ],
   "webhooks": "unknown"
  },
  "integrations": {
   "make": "unknown",
   "n8n": "unknown",
   "power_automate": "unknown",
   "zapier": "unknown"
  },
  "mcp": {
   "first_party": "unknown",
   "third_party": [],
   "verdict": "unknown"
  },
  "rpa": {
   "drivability": "unknown",
   "notes": "No repeatable UI probe was run. The public portal at einnsyn.no is a browser search service. The documented machine path is the REST publishing API with an API-KEY header, or JSON-LD over eFormidling. Portal UI automation is not the supported path.\n",
   "ui_stack": [
    "web-dom"
   ],
   "vendor_support": []
  },
  "sdk": {
   "exists": true,
   "languages": [
    "java",
    "typescript"
   ],
   "official": true
  }
 },
 "name": "eInnsyn",
 "platforms": [
  "web"
 ],
 "related": {
  "alternatives": [
   "eformidling",
   "documaster",
   "public-360-tieto"
  ],
  "our_products": []
 },
 "schema_version": 1,
 "score_version": 1,
 "status": "active",
 "vendor": "Digitaliseringsdirektoratet (Digdir)",
 "verdict": {
  "best_path": "api",
  "scores": {
   "api": 6,
   "cli": null,
   "computer_use": null,
   "integrations": null,
   "mcp": null,
   "overall": 6,
   "rpa": null
  },
  "summary": "eInnsyn is automatable today as Digdir's national public-journal and meeting-publication service, not as eFormidling and not as an archive vendor such as Documaster or Public 360. Publishers call REST at https://api.einnsyn.no with header API-KEY. Keys are minted after Ansattporten login at autorisasjon.einnsyn.no and need the Altinn delegation Virksomhetsadministrering i eInnsyn. Digdir's how-to documents meeting publication: POST /arkiv, /arkivdel, /saksmappe with journal posts, and /moetemappe with meeting cases. The first-party OpenAPI spec and Java SDK also document list, get, patch, delete, and GET /search over journal and meeting objects. That search is the authenticated API, not a separate anonymous machine index. A second publishing path sends Noark-derived JSON-LD through eFormidling; that transport is eFormidling, not this record. Official Java and TypeScript clients are listed on the spec repository. Vendor documentation does not settle first-party MCP ownership. Computer-use viability is unassessed.\n"
 }
}