{
  "openapi": "3.0.1",
  "info": {
    "title": "Fiks API for eksterne tjenester og apper",
    "description": "API for å administrere eksterne tjenester og apper.",
    "contact": {
      "name": "KS Fiks brukerstøtte",
      "url": "https://www.ks.no/fagomrader/digitalisering/utviklingsprosjekter",
      "email": "fiks-utvikling@ks.no"
    },
    "version": "v1",
    "license": {
      "name": "MIT",
      "url": "https://opensource.org/licenses/MIT"
    }
  },
  "servers": [
    {
      "url": "https://api.fiks.ks.no",
      "description": "KS Fiks PROD API host",
      "variables": {}
    },
    {
      "url": "https://api.fiks.test.ks.no",
      "description": "KS Fiks TEST API host",
      "variables": {}
    },
    {
      "url": "https://api.fiks.dev.ks.no",
      "description": "KS Fiks DEV API host",
      "variables": {}
    }
  ],
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "tags": [
    {
      "name": "konsument",
      "description": "Administrere applikasjoner bruk av applikasjoner som er levert av leverandør"
    },
    {
      "name": "leverandor",
      "description": "Administrer applikasjoner som tilbys andre organisasjoner"
    },
    {
      "name": "underenhet",
      "description": "Administrer underenheter"
    }
  ],
  "paths": {
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/sentralisertbrukerstyring/grupper": {
      "get": {
        "tags": [
          "konsument"
        ],
        "operationId": "hentSentraliserteGrupperForOrganisasjon",
        "description": "Hent alle grupper fra sentralisert brukerstyring som tilhører gitt organisasjon",
        "summary": "Hent alle grupper fra sentralisert brukerstyring som tilhører gitt organisasjon",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SentralisertGruppeListe"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/sentralisertbrukerstyring/brukere": {
      "post": {
        "tags": [
          "konsument"
        ],
        "operationId": "soekSentraliserteBrukere",
        "description": "Søk etter brukere fra sentralisert brukerstyring for gitt organisasjon",
        "summary": "Søk etter brukere fra sentralisert brukerstyring for gitt organisasjon",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SoekBrukereRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SentralisertBrukerListe"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/ukjentRessurs"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}": {
      "patch": {
        "tags": [
          "konsument"
        ],
        "operationId": "oppdaterTjenesteForvaltning",
        "description": "Oppdaterer tjenestedefinisjonen",
        "summary": "Oppdaterer tjenestedefinisjonen",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OppdaterTjenesteForOrganisasjon"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Oppdatering ok",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KonsumentTjenesteResponse"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/ukjentRessurs"
          }
        }
      },
      "put": {
        "tags": [
          "konsument"
        ],
        "operationId": "opprettKonsumentTjeneste",
        "description": "Ta i bruk og konfigurerer gitt tjeneste levert av FHI for en gitt organisasjon",
        "summary": "Ta i bruk og konfigurerer gitt tjeneste levert av FHI for en gitt organisasjon",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OpprettKonsumentTjenesteRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Konfigurert",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KonsumentTjenesteResponse"
                }
              }
            },
            "links": {
              "self": {
                "description": "Lenke til tjenesten som ble opprettet",
                "operationId": "hentTjeneste",
                "parameters": {
                  "fiksOrgId": "$request.path.fiksOrgId",
                  "tjenestekode": "$request.path.tjenestekode"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/ukjentRessurs"
          }
        }
      },
      "get": {
        "tags": [
          "konsument"
        ],
        "operationId": "hentTjenesteForvaltning",
        "description": "Hent konfigurasjon for gitt tjeneste levert av FHI for en gitt organisasjon",
        "summary": "Hent konfigurasjon for gitt tjeneste levert av FHI for en gitt organisasjon",
        "responses": {
          "200": {
            "description": "Konfigurert",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KonsumentTjenesteResponse"
                }
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/ukjentRessurs"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper/{appId}": {
      "put": {
        "tags": [
          "konsument"
        ],
        "operationId": "aktiverAppForOrganisasjonOgTjeneste",
        "description": "Aktiver app for gitt organisasjon og tjeneste",
        "summary": "Aktiver app for gitt organisasjon og tjeneste",
        "responses": {
          "201": {
            "description": "Aktivering ok",
            "links": {
              "self": {
                "$ref": "#/components/links/appForOrganisasjonOgTjeneste"
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          }
        }
      },
      "delete": {
        "tags": [
          "konsument"
        ],
        "operationId": "deaktiverAppForOrganisasjonOgTjeneste",
        "description": "Deaktiver app for gitt organisasjon og tjeneste",
        "summary": "Deaktiver app for gitt organisasjon og tjeneste",
        "responses": {
          "204": {
            "description": "Deaktivering ok"
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          }
        }
      },
      "get": {
        "tags": [
          "konsument"
        ],
        "operationId": "hentApp",
        "description": "Hent app for gitt organisasjon og tjeneste, som konsument",
        "summary": "Hent app for gitt organisasjon og tjeneste",
        "responses": {
          "200": {
            "description": "Henting ok",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KonsumentApp"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/ukjentRessurs"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        },
        {
          "$ref": "#/components/parameters/appId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper/{appId}/underenheter": {
      "get": {
        "tags": [
          "underenhet"
        ],
        "operationId": "hentUnderenheterForApp",
        "description": "Hent alle underenheter som har tilgang til gitt app",
        "summary": "Hent alle underenheter som har tilgang til gitt app",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnderenhetListe"
                }
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/appMangler"
          }
        }
      },
      "post": {
        "tags": [
          "underenhet"
        ],
        "operationId": "opprettUnderenhetForApp",
        "description": "Opprett en underenhet for en app",
        "summary": "Opprett en underenhet for en app",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OpprettUnderenhet"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Opprettet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Underenhet"
                }
              }
            },
            "links": {
              "self": {
                "description": "Lenke til underenheten som ble opprettet",
                "operationId": "hentUnderenheterForApp",
                "parameters": {
                  "fiksOrgId": "$request.path.fiksOrgId",
                  "tjenestekode": "$request.path.tjenestekode",
                  "appId": "$request.path.appId"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/appMangler"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        },
        {
          "$ref": "#/components/parameters/appId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper/{appId}/underenheter/{underenhetId}": {
      "get": {
        "tags": [
          "underenhet"
        ],
        "operationId": "hentUnderenhet",
        "description": "Hent en gitt underenhet",
        "summary": "Hent en gitt underenhet",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Underenhet"
                }
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/appMangler"
          }
        }
      },
      "delete": {
        "tags": [
          "underenhet"
        ],
        "operationId": "slettUnderenhetForApp",
        "description": "Slett en underenhet for en app",
        "summary": "Slett en underenhet for en app",
        "responses": {
          "204": {
            "description": "Slettet"
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/appMangler"
          },
          "409": {
            "description": "Kan ikke slette underenhet som har tilknyttede brukere",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                }
              }
            }
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        },
        {
          "$ref": "#/components/parameters/appId"
        },
        {
          "$ref": "#/components/parameters/underenhetId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/apper/{appId}/harunderenhet/{underenhetOrgNr}": {
      "get": {
        "tags": [
          "underenhet"
        ],
        "description": "Sjekk om en enhet med gitt orgnummer er en underenhet av en enhet med fiksOrgId",
        "operationId": "sjekkOmUnderenhet",
        "summary": "Sjekk om en enhet med gitt orgnummer er en underenhet av en enhet med fiksOrgId",
        "parameters": [
          {
            "$ref": "#/components/parameters/fiksOrgId"
          },
          {
            "$ref": "#/components/parameters/appId"
          },
          {
            "$ref": "#/components/parameters/underenhetOrgNr"
          }
        ],
        "responses": {
          "200": {
            "description": "Konfigurert",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErUnderenhet"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          }
        }
      }
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper/{appId}/underenheter/{underenhetId}/brukere": {
      "get": {
        "tags": [
          "konsument"
        ],
        "operationId": "hentAppBrukereForUnderenhet",
        "description": "Hent alle brukere som har tilgang til gitt app for underenhet",
        "summary": "Hent alle brukere som har tilgang til gitt app for underenhet",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppTilganger"
                }
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/appMangler"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        },
        {
          "$ref": "#/components/parameters/underenhetId"
        },
        {
          "$ref": "#/components/parameters/appId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper/{appId}/underenheter/{underenhetId}/identifisert": {
      "post": {
        "tags": [
          "konsument"
        ],
        "operationId": "giAppTilgangForUnderenhet",
        "description": "Gi bruker tilgang til app for en underenhet",
        "summary": "Gi bruker tilgang til app for en underenhet",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GiIdentifisertBrukereAppTilgangRequest"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Oppdatering ok"
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/appMangler"
          }
        }
      },
      "delete": {
        "tags": [
          "konsument"
        ],
        "operationId": "fjernIdentifisertBrukereUnderenhetAppTilgang",
        "description": "Fjern tilgang til bruker fra app",
        "summary": "Fjern tilgang til bruker fra app",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "aktor": {
                    "type": "string",
                    "minLength": 11,
                    "maxLength": 11,
                    "example": "28837695882"
                  }
                },
                "required": [
                  "aktor"
                ]
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Oppdatering ok"
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/appMangler"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        },
        {
          "$ref": "#/components/parameters/underenhetId"
        },
        {
          "$ref": "#/components/parameters/appId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper/{appId}/brukere": {
      "get": {
        "tags": [
          "konsument"
        ],
        "operationId": "hentAppBrukere",
        "description": "Hent alle brukere som har tilgang til gitt app",
        "summary": "Hent alle brukere som har tilgang til gitt app",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppTilganger"
                }
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/appMangler"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        },
        {
          "$ref": "#/components/parameters/appId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper/{appId}/sentralisert": {
      "patch": {
        "tags": [
          "konsument"
        ],
        "operationId": "oppdaterSentralisertAppBrukere",
        "description": "Oppdater sentralisert bruker eller gruppe som har tilgang til gitt app",
        "summary": "Oppdater brukere som har tilgang til gitt app",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OppdaterAppbrukere"
              },
              "examples": {
                "LeggTilTilgangSentralisertBruker": {
                  "description": "Legger til tilgang for bruker fra sentralisert brukerstyring",
                  "value": {
                    "operasjon": "LeggTilSentralisertBruker",
                    "aktor": "SDB_12345678-1234-1234-1234-123456789012"
                  }
                },
                "FjernTilgangSentralisertBruker": {
                  "description": "Fjerner tilgang for bruker fra sentralisert brukerstyring",
                  "value": {
                    "operasjon": "FjernSentralisertBruker",
                    "aktor": "SDB_12345678-1234-1234-1234-123456789012"
                  }
                },
                "LeggTilTilgangSentralisertGruppe": {
                  "description": "Legger til tilgang for gruppe fra sentralisert brukerstyring",
                  "value": {
                    "operasjon": "LeggTilSentralisertGruppe",
                    "aktor": "SDG_12345678-1234-1234-1234-123456789012"
                  }
                },
                "FjernTilgangSentralisertGruppe": {
                  "description": "Fjerner tilgang for gruppe fra sentralisert brukerstyring",
                  "value": {
                    "operasjon": "FjernSentralisertGruppe",
                    "aktor": "SDG_12345678-1234-1234-1234-123456789012"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Oppdatering ok",
            "links": {
              "self": {
                "description": "Lenke til appen som ble opprettet",
                "operationId": "hentAppBrukere",
                "parameters": {
                  "fiksOrgId": "$request.path.fiksOrgId",
                  "tjenestekode": "$request.path.tjenestekode",
                  "appId": "$request.path.appId"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "description": "Appen finnes ikke",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                }
              }
            }
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        },
        {
          "$ref": "#/components/parameters/appId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper/{appId}/underenheter/{underenhetId}/sentralisert": {
      "patch": {
        "tags": [
          "konsument"
        ],
        "operationId": "oppdaterSentralisertAppBrukereForUnderenhet",
        "description": "Oppdater sentralisert bruker eller gruppe som har tilgang til gitt app for underenhet",
        "summary": "Oppdater brukere som har tilgang til gitt app for underenhet",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OppdaterAppbrukere"
              },
              "examples": {
                "LeggTilTilgangSentralisertBruker": {
                  "description": "Legger til tilgang for bruker fra sentralisert brukerstyring",
                  "value": {
                    "operasjon": "LeggTilSentralisertBruker",
                    "aktor": "SDB_12345678-1234-1234-1234-123456789012"
                  }
                },
                "FjernTilgangSentralisertBruker": {
                  "description": "Fjerner tilgang for bruker fra sentralisert brukerstyring",
                  "value": {
                    "operasjon": "FjernSentralisertBruker",
                    "aktor": "SDB_12345678-1234-1234-1234-123456789012"
                  }
                },
                "LeggTilTilgangSentralisertGruppe": {
                  "description": "Legger til tilgang for gruppe fra sentralisert brukerstyring",
                  "value": {
                    "operasjon": "LeggTilSentralisertGruppe",
                    "aktor": "SDG_12345678-1234-1234-1234-123456789012"
                  }
                },
                "FjernTilgangSentralisertGruppe": {
                  "description": "Fjerner tilgang for gruppe fra sentralisert brukerstyring",
                  "value": {
                    "operasjon": "FjernSentralisertGruppe",
                    "aktor": "SDG_12345678-1234-1234-1234-123456789012"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Oppdatering ok"
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "description": "Appen finnes ikke eller underenhet finnes ikke",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                }
              }
            }
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        },
        {
          "$ref": "#/components/parameters/appId"
        },
        {
          "$ref": "#/components/parameters/underenhetId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper/{appId}/identifisert": {
      "post": {
        "tags": [
          "konsument"
        ],
        "operationId": "giIdentifisertBrukereAppTilgang",
        "description": "Gi bruker tilgang til app",
        "summary": "Gi bruker tilgang til app",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GiIdentifisertBrukereAppTilgangRequest"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Oppdatering ok"
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "description": "Appen finnes ikke",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "konsument"
        ],
        "operationId": "fjernIdentifisertBrukereAppTilgang",
        "description": "Fjern tilgang til bruker fra app",
        "summary": "Fjern tilgang til bruker fra app",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "aktor": {
                    "type": "string",
                    "minLength": 11,
                    "maxLength": 11,
                    "example": "28837695882"
                  }
                },
                "required": [
                  "aktor"
                ]
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Oppdatering ok"
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/appMangler"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        },
        {
          "$ref": "#/components/parameters/appId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper/{appId}/brukere/{personId}": {
      "post": {
        "tags": [
          "konsument"
        ],
        "operationId": "giPersonAppTilgang",
        "description": "Gi person tilgang til app",
        "summary": "Gi person tilgang til app",
        "responses": {
          "204": {
            "description": "Oppdatering ok"
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "description": "Appen finnes ikke",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "konsument"
        ],
        "operationId": "fjernPersonTilgangTilApp",
        "description": "Fjern tilgang til person fra app",
        "summary": "Fjern tilgang til person fra app",
        "responses": {
          "204": {
            "description": "Oppdatering ok"
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "description": "Appen finnes ikke",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                }
              }
            }
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        },
        {
          "$ref": "#/components/parameters/appId"
        },
        {
          "$ref": "#/components/parameters/personId"
        }
      ]
    },
    "/kominn/api/v1/organisasjoner/{fiksOrgId}/bruker/hent": {
      "post": {
        "tags": [
          "konsument"
        ],
        "operationId": "hentBruker",
        "description": "Hent bruker på fiksorg",
        "summary": "Oppslag på bruker allerede registrert på FiksOrg",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OppslagPaBruker"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Ny tjeneste opprettet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Bruker"
                }
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        }
      ]
    },
    "/kominn/api/v1/leverandor/organisasjoner/{fiksOrgId}": {
      "put": {
        "tags": [
          "leverandor"
        ],
        "operationId": "opprettTjeneste",
        "description": "Ta i bruk og konfigurer ny tjeneste som skal leveres av ekstern leverandør",
        "summary": "Ta i bruk og konfigurer ny tjeneste som skal leveres av ekstern leverandør",
        "responses": {
          "201": {
            "description": "Ny tjeneste opprettet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeverandorTjeneste"
                }
              }
            },
            "links": {
              "self": {
                "description": "Lenke til tjenesten som ble opprettet",
                "operationId": "hentTjeneste",
                "parameters": {
                  "tjenesteId": "$response.body#/tjenesteId"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          }
        }
      },
      "get": {
        "tags": [
          "leverandor"
        ],
        "description": "Hent gjeldende konfigurasjon for ekstern tjeneste",
        "summary": "Hent gjeldende konfigurasjon for ekstern tjeneste",
        "operationId": "hentTjeneste",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeverandorTjenesteResponse"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "description": "Tjenesten finnes ikke",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                }
              }
            }
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        }
      ]
    },
    "/kominn/api/v1/leverandor/organisasjoner/{fiksOrgId}/tjenester": {
      "get": {
        "tags": [
          "leverandor"
        ],
        "operationId": "hentTjenester",
        "description": "Hent tjenester som denne organisasjonen har tilgang til å administrere applikasjoner for",
        "summary": "Hent tjenester som denne organisasjonen har tilgang til å administrere applikasjoner for",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeverandorTjenesteListe"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        }
      ]
    },
    "/kominn/api/v1/leverandor/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper": {
      "post": {
        "tags": [
          "leverandorApp"
        ],
        "operationId": "opprettApp",
        "description": "Opprett en ny app som skal gjøres tilgjengelig",
        "summary": "Opprett en ny app som skal gjøres tilgjengelig",
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "app": {
                    "type": "object",
                    "properties": {
                      "navn": {
                        "$ref": "#/components/schemas/Navn"
                      },
                      "beskrivelse": {
                        "$ref": "#/components/schemas/Beskrivelse"
                      },
                      "beskrivelseForAdministratorer": {
                        "$ref": "#/components/schemas/Beskrivelse"
                      },
                      "URIMedParameter": {
                        "$ref": "#/components/schemas/URIMedParameter"
                      }
                    },
                    "required": [
                      "navn",
                      "beskrivelse"
                    ]
                  },
                  "logo": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "app": {
                  "contentType": "application/json"
                },
                "logo": {
                  "contentType": "application/octet-stream"
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Ny tjeneste opprettet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeverandorApp"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/ukjentRessurs"
          }
        }
      },
      "get": {
        "tags": [
          "leverandor"
        ],
        "description": "Hent alle apper for en tjeneste",
        "summary": "Hent alle apper for en tjeneste",
        "operationId": "hentApper",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeverandorAppListe"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/ukjentRessurs"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        }
      ]
    },
    "/kominn/api/v1/leverandor/organisasjoner/{fiksOrgId}/tjenester/{tjenestekode}/apper/{appId}": {
      "get": {
        "tags": [
          "leverandor"
        ],
        "description": "Hent gjeldende konfigurasjon for applikasjon",
        "summary": "Hent gjeldende konfigurasjon for app",
        "operationId": "hentLeverandorApp",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeverandorApp"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/ukjentRessurs"
          }
        }
      },
      "patch": {
        "tags": [
          "leverandorApp"
        ],
        "description": "Oppdater konfigurasjon for app. Kun de feltene som er med i requesten blir oppdatert",
        "summary": "Oppdater konfigurasjon for app. Kun de feltene som er med i requesten blir oppdatert",
        "operationId": "oppdaterApp",
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "properties": {
                  "app": {
                    "$ref": "#/components/schemas/OppdaterLeverandorAppRequest"
                  },
                  "logo": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Oppdatering ok",
            "links": {
              "self": {
                "description": "Lenke til appen som ble opprettet",
                "operationId": "hentApp",
                "parameters": {
                  "fiksOrgId": "$request.path.fiksOrgId",
                  "tjenestekode": "$request.path.tjenestekode",
                  "appId": "$request.path.appId"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/ukjentRessurs"
          }
        }
      },
      "delete": {
        "tags": [
          "leverandor"
        ],
        "description": "Slett app",
        "summary": "Slett app",
        "operationId": "slettApp",
        "responses": {
          "204": {
            "description": "Sletting ok"
          },
          "400": {
            "description": "Ugyldig input",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                }
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/ukjentRessurs"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/fiksOrgId"
        },
        {
          "$ref": "#/components/parameters/tjenestekode"
        },
        {
          "$ref": "#/components/parameters/appId"
        }
      ]
    },
    "/kominn/api/v1/leverandor/organisasjoner/{fiksOrgId}/tilknyttede-integrasjoner/{integrasjonsId}": {
      "put": {
        "tags": [
          "leverandor"
        ],
        "operationId": "tilknyttIntegrasjon",
        "description": "Knytte til en integrasjon som skal kunne brukes mot kominn api på vegne av ekstern leverandør",
        "summary": "Knytte til en integrasjon som skal kunne brukes mot kominn api på vegne av ekstern leverandør",
        "parameters": [
          {
            "$ref": "#/components/parameters/fiksOrgId"
          },
          {
            "$ref": "#/components/parameters/integrasjonsId"
          }
        ],
        "responses": {
          "204": {
            "description": "Ny tilknytning av integrasjon opprettet"
          },
          "400": {
            "$ref": "#/components/responses/ugyldigParameterverdi"
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          }
        }
      },
      "delete": {
        "tags": [
          "leverandor"
        ],
        "description": "Slett tilknytning av integrasjon",
        "summary": "Slett tilknytning av integrasjon",
        "operationId": "slettTilknyttetIntegrasjon",
        "parameters": [
          {
            "$ref": "#/components/parameters/fiksOrgId"
          },
          {
            "$ref": "#/components/parameters/integrasjonsId"
          }
        ],
        "responses": {
          "204": {
            "description": "Sletting ok"
          },
          "400": {
            "description": "Ugyldig input",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                }
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/ikkeAutentisert"
          },
          "403": {
            "$ref": "#/components/responses/manglerTilgang"
          },
          "404": {
            "$ref": "#/components/responses/ukjentRessurs"
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    },
    "links": {
      "appForOrganisasjonOgTjeneste": {
        "operationId": "hentApp",
        "parameters": {
          "fiksOrgId": "$request.path.fiksOrgId",
          "tjenestekode": "$request.path.tjenestekode",
          "appId": "$request.path.appId"
        }
      }
    },
    "parameters": {
      "fiksOrgId": {
        "name": "fiksOrgId",
        "in": "path",
        "description": "ID til fiks organisasjonen som eier tjenesten",
        "required": true,
        "schema": {
          "$ref": "#/components/schemas/UnikId"
        }
      },
      "underenhetId": {
        "name": "underenhetId",
        "in": "path",
        "description": "ID til underenhet tilhørende FiksOrg",
        "required": true,
        "schema": {
          "$ref": "#/components/schemas/UnikId"
        }
      },
      "tjenestekode": {
        "name": "tjenestekode",
        "in": "path",
        "description": "Kode for tjenesten",
        "required": true,
        "schema": {
          "$ref": "#/components/schemas/Tjenestekode"
        }
      },
      "appId": {
        "name": "appId",
        "in": "path",
        "description": "ID til appen",
        "required": true,
        "schema": {
          "$ref": "#/components/schemas/UnikId"
        }
      },
      "personId": {
        "name": "personId",
        "in": "path",
        "description": "ID til person tilhørende FiksOrg",
        "required": true,
        "schema": {
          "$ref": "#/components/schemas/UnikId"
        }
      },
      "integrasjonsId": {
        "name": "integrasjonsId",
        "in": "path",
        "description": "ID til fiks integrasjon som skal ha tilgang til kominn",
        "required": true,
        "schema": {
          "$ref": "#/components/schemas/UnikId"
        }
      },
      "underenhetOrgNr": {
        "name": "underenhetOrgNr",
        "in": "path",
        "required": true,
        "schema": {
          "$ref": "#/components/schemas/Organisasjonsnummer"
        }
      }
    },
    "schemas": {
      "Fodselsnummer": {
        "type": "string",
        "description": "Fødselsnummer fra folkergisteret '12345678901'",
        "pattern": "^[0-9]{11}$"
      },
      "Navn": {
        "type": "string",
        "pattern": "^[A-ZÆØÅa-zæøå0-9ÁáÀàÂâÉéÈèÊêÍíÌìÎîÓóÒòÔôÚúÙùÛûÝýÄäËëÏïÖöÜü,.!?\\-:;/\\\\'()&+*=%§]+[A-ZÆØÅa-zæøå0-9ÁáÀàÂâÉéÈèÊêÍíÌìÎîÓóÒòÔôÚúÙùÛûÝýÄäËëÏïÖöÜü ,.!?\\-:;/\\\\'()&+*=%§]*[A-ZÆØÅa-zæøå0-9ÁáÀàÂâÉéÈèÊêÍíÌìÎîÓóÒòÔôÚúÙùÛûÝýÄäËëÏïÖöÜü,.!?\\-:;/\\\\'()&+*=%§]+$",
        "description": "Navn på elementet i henhold til navnereglene i Fiks Plattformen",
        "example": "Ekstern tjeneste portal"
      },
      "Appnavn": {
        "$ref": "#/components/schemas/Navn"
      },
      "UnikId": {
        "type": "string",
        "format": "uuid",
        "description": "Unik id (UUID)",
        "example": "f7480539-92b2-460d-8e7f-2bc8a37c6746"
      },
      "Tjenestekode": {
        "type": "string",
        "description": "Kode for tjenesten",
        "pattern": "^[A-Z0-9_.]+$",
        "example": "TJENESTEN"
      },
      "Beskrivelse": {
        "type": "string",
        "description": "Beskrivelse av tjenesten",
        "example": "Min tjeneste er en tjeneste som gjør noe"
      },
      "AppId": {
        "$ref": "#/components/schemas/UnikId"
      },
      "UnderenhetId": {
        "$ref": "#/components/schemas/UnikId"
      },
      "PersonId": {
        "$ref": "#/components/schemas/UnikId"
      },
      "FiksOrgId": {
        "$ref": "#/components/schemas/UnikId"
      },
      "TjenesteId": {
        "$ref": "#/components/schemas/UnikId"
      },
      "IntegrasjonsId": {
        "$ref": "#/components/schemas/UnikId"
      },
      "OpprettLeverandorAppRequest": {
        "type": "object",
        "properties": {
          "navn": {
            "$ref": "#/components/schemas/Navn"
          },
          "beskrivelse": {
            "$ref": "#/components/schemas/Beskrivelse"
          },
          "beskrivelseForAdministratorer": {
            "$ref": "#/components/schemas/Beskrivelse"
          },
          "URIMedParameter": {
            "$ref": "#/components/schemas/URIMedParameter"
          }
        },
        "required": [
          "navn",
          "beskrivelse"
        ]
      },
      "GiIdentifisertBrukereAppTilgangRequest": {
        "type": "object",
        "properties": {
          "aktor": {
            "$ref": "#/components/schemas/Fodselsnummer"
          },
          "navn": {
            "type": "string",
            "maxLength": 150,
            "minLength": 2,
            "example": "Test Testesen"
          }
        },
        "required": [
          "aktor",
          "navn"
        ]
      },
      "OppdaterLeverandorAppRequest": {
        "type": "object",
        "properties": {
          "navn": {
            "$ref": "#/components/schemas/Navn"
          },
          "beskrivelse": {
            "$ref": "#/components/schemas/Beskrivelse"
          },
          "beskrivelseForAdministratorer": {
            "$ref": "#/components/schemas/Beskrivelse"
          },
          "URIMedParameter": {
            "$ref": "#/components/schemas/URIMedParameter"
          }
        }
      },
      "App": {
        "type": "object",
        "properties": {
          "appId": {
            "$ref": "#/components/schemas/UnikId"
          },
          "navn": {
            "$ref": "#/components/schemas/Navn"
          },
          "beskrivelse": {
            "$ref": "#/components/schemas/Beskrivelse"
          },
          "beskrivelseForAdministratorer": {
            "$ref": "#/components/schemas/Beskrivelse"
          },
          "logo": {
            "type": "string",
            "format": "base64",
            "description": "Base64 kodet logofil",
            "example": "data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII"
          },
          "URIMedParameter": {
            "$ref": "#/components/schemas/URIMedParameter"
          }
        },
        "required": [
          "appId",
          "navn",
          "beskrivelse",
          "logo"
        ]
      },
      "AppMedUri": {
        "type": "object",
        "properties": {
          "appId": {
            "$ref": "#/components/schemas/UnikId"
          },
          "navn": {
            "$ref": "#/components/schemas/Navn"
          },
          "beskrivelse": {
            "$ref": "#/components/schemas/Beskrivelse"
          },
          "beskrivelseForAdministratorer": {
            "$ref": "#/components/schemas/Beskrivelse"
          },
          "logo": {
            "type": "string",
            "format": "base64",
            "description": "Base64 kodet logofil",
            "example": "data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII"
          },
          "URI": {
            "$ref": "#/components/schemas/URI"
          }
        },
        "required": [
          "appId",
          "navn",
          "beskrivelse",
          "logo"
        ]
      },
      "LeverandorApp": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/App"
          }
        ]
      },
      "LeverandorAppListe": {
        "type": "object",
        "properties": {
          "apps": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LeverandorApp"
            },
            "example": [
              {
                "appId": "f7480539-92b2-460d-8e7f-2bc8a37c6746",
                "navn": "MINAPP",
                "beskrivelse": "Min app er en app som gjør noe",
                "beskrivelseForAdministratorer": "Min app er en app som gjør noe for administratorer",
                "logo": "data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII",
                "URIMedParameter": {
                  "uri": "https://www.ks.no",
                  "parameterFraKS": [
                    {
                      "type": "kommunenummer"
                    }
                  ]
                }
              }
            ]
          }
        },
        "required": [
          "apps"
        ],
        "description": "Liste av apper som er tilgjengelig i gitt kontekst",
        "example": {
          "apps": [
            {
              "appId": "f7480539-92b2-460d-8e7f-2bc8a37c6746",
              "navn": "MINAPP",
              "beskrivelse": "Min app er en app som gjør noe",
              "beskrivelseForAdministratorer": "For å benytte denne appen må man ha tilgang konfigurert opp mot tjenesten",
              "logo": "data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII",
              "URIMedParameter": {
                "uri": "https://www.ks.no",
                "parameterFraKS": [
                  {
                    "type": "kommunenummer"
                  }
                ]
              }
            }
          ]
        }
      },
      "TjenesteNavn": {
        "$ref": "#/components/schemas/Navn"
      },
      "LeverandorTjenesteResponse": {
        "description": "Definisjon av tjeneste som administrerer applikasjoner fra leverandør",
        "type": "object",
        "properties": {
          "fiksOrgId": {
            "$ref": "#/components/schemas/UnikId"
          },
          "navn": {
            "$ref": "#/components/schemas/Navn"
          },
          "tjenestekode": {
            "$ref": "#/components/schemas/Tjenestekode"
          }
        },
        "required": [
          "fiksOrgId",
          "navn",
          "tjenestekode"
        ],
        "example": {
          "fiksOrgId": "f7480539-92b2-460d-8e7f-2bc8a37c6746",
          "navn": "Ekstern portal",
          "tjenestekode": "MIN_TJENESTE"
        }
      },
      "SentralisertGruppe": {
        "type": "object",
        "description": "Aktør identifisert med gruppeid fra sentralisert brukerstyring",
        "allOf": [
          {
            "$ref": "#/components/schemas/AppBruker"
          },
          {
            "type": "object",
            "properties": {
              "aktor": {
                "type": "string",
                "pattern": "^SDG_[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
              }
            }
          }
        ]
      },
      "SentralisertGruppeListe": {
        "type": "object",
        "description": "Liste av grupper fra sentralisert brukerstyring",
        "properties": {
          "grupper": {
            "type": "array",
            "minItems": 0,
            "items": {
              "$ref": "#/components/schemas/SentralisertGruppe"
            }
          }
        },
        "required": [
          "grupper"
        ],
        "example": {
          "grupper": [
            {
              "aktor": "SDG_12345678-1234-1234-1234-123456789012",
              "navn": "Gruppe 1"
            }
          ]
        }
      },
      "SentralisertBruker": {
        "type": "object",
        "description": "Aktør identifisert med brukerid fra sentralisert brukerstyring",
        "allOf": [
          {
            "$ref": "#/components/schemas/AppBruker"
          },
          {
            "type": "object",
            "properties": {
              "aktor": {
                "type": "string",
                "pattern": "^SDB_[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
              }
            }
          }
        ],
        "example": {
          "aktor": "SDB_12345678-1234-1234-1234-123456789012",
          "navn": "Fornavn Etternavn"
        }
      },
      "SentralisertBrukerListe": {
        "type": "object",
        "description": "Liste av brukere fra sentralisert brukerstyring",
        "properties": {
          "brukere": {
            "type": "array",
            "minItems": 0,
            "items": {
              "$ref": "#/components/schemas/SentralisertBruker"
            }
          }
        },
        "required": [
          "brukere"
        ],
        "example": {
          "brukere": [
            {
              "aktor": "SDB_12345678-1234-1234-1234-123456789012",
              "navn": "Fornavn Etternavn"
            }
          ]
        }
      },
      "SoekBrukereRequest": {
        "type": "object",
        "description": "Søk etter brukere fra sentralisert brukerstyring",
        "properties": {
          "soek": {
            "type": "string",
            "description": "Søkestreng som skal brukes for å søke etter brukere",
            "example": "fornavn"
          }
        },
        "required": [
          "soek"
        ]
      },
      "IdentifisertPerson": {
        "type": "object",
        "description": "Aktør identifisert med fødselsnummer (ID porten)",
        "allOf": [
          {
            "$ref": "#/components/schemas/AppBruker"
          },
          {
            "type": "object",
            "properties": {
              "aktor": {
                "$ref": "#/components/schemas/Fodselsnummer"
              }
            }
          }
        ],
        "required": [
          "aktor"
        ]
      },
      "OpprettKonsumentTjenesteRequest": {
        "type": "object",
        "description": "Ta i bruk og konfigurerer tjeneste levert av leverandør",
        "properties": {
          "sentralisertBrukerstyringAktivert": {
            "type": "boolean",
            "description": "Angir om tjenesten skal aktiveres for sentralisert brukerstyring",
            "example": true
          }
        },
        "required": [
          "sentralisertBrukerstyringAktivert"
        ]
      },
      "KonsumentTjenesteResponse": {
        "type": "object",
        "description": "Modell som beskriver konsument tjeneste",
        "properties": {
          "apper": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/KonsumentApp"
            }
          },
          "sentralisertBrukerstyringAktivert": {
            "type": "boolean",
            "description": "Angir om tjenesten er aktivert for sentralisert brukerstyring",
            "example": true
          }
        },
        "required": [
          "apper",
          "sentralisertBrukerstyringAktivert"
        ]
      },
      "KonsumentApp": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/AppMedUri"
          },
          {
            "type": "object",
            "properties": {
              "aktivert": {
                "type": "boolean",
                "description": "Angir om appen er aktivert for tjenesten",
                "example": true
              },
              "slettet": {
                "type": "boolean",
                "description": "Angir om appen er slettet av leverandoren.",
                "example": true
              }
            }
          }
        ],
        "required": [
          "aktivert",
          "slettet"
        ],
        "example": {
          "appId": "f7480539-92b2-460d-8e7f-2bc8a37c6746",
          "navn": "MINAPP",
          "beskrivelse": "Min app er en app som gjør noe",
          "beskrivelseForAdministratorer": "For å benytte denne appen må man ha tilgang konfigurert opp mot tjenesten",
          "logo": "data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII",
          "URI": "https://www.ks.no",
          "aktivert": true,
          "slettet": false
        }
      },
      "AppBruker": {
        "type": "object",
        "description": "Bruker som skal ha tilgang til tjenesten",
        "properties": {
          "navn": {
            "type": "string"
          },
          "aktor": {
            "type": "string"
          }
        },
        "required": [
          "aktor",
          "navn"
        ],
        "example": {
          "aktor": "SDG_12345678-1234-1234-1234-123456789012",
          "navn": "Gruppe 1"
        }
      },
      "Bruker": {
        "type": "object",
        "description": "Bruker som er registrert på FiksOrg",
        "properties": {
          "navn": {
            "type": "string"
          },
          "aktor": {
            "type": "string"
          }
        },
        "required": [
          "aktor",
          "navn"
        ],
        "example": {
          "aktor": "28837695882",
          "navn": "Fiksebolle Masse"
        }
      },
      "OppslagPaBruker": {
        "type": "object",
        "description": "Oppslag på bruker som er registrert på FiksOrg",
        "properties": {
          "aktor": {
            "type": "string"
          }
        },
        "required": [
          "aktor"
        ],
        "example": {
          "aktor": "28837695882"
        }
      },
      "AktorId": {
        "type": "string",
        "description": "Aktor id som kan være enten fnr/dnr eller id for enten bruker (SDB) eller gruppe (SDG) fra sentralisert brukerstyring",
        "pattern": "^(SD(B|G)_[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}|[0-9]{11})$"
      },
      "OppdaterBrukerOperasjon": {
        "type": "string",
        "enum": [
          "LeggTilSentralisertBruker",
          "LeggTilSentralisertGruppe",
          "FjernSentralisertBruker",
          "FjernSentralisertGruppe"
        ]
      },
      "OppdaterAppbrukere": {
        "type": "object",
        "description": "Oppdater brukere som har tilgang til gitt app",
        "properties": {
          "operasjon": {
            "$ref": "#/components/schemas/OppdaterBrukerOperasjon"
          },
          "aktor": {
            "$ref": "#/components/schemas/AktorId"
          }
        },
        "required": [
          "operasjon",
          "aktor"
        ]
      },
      "AppTilganger": {
        "type": "object",
        "description": "Hvem som har tilgang til appen",
        "properties": {
          "sentraliserteBrukere": {
            "type": "array",
            "minItems": 0,
            "items": {
              "$ref": "#/components/schemas/SentralisertBruker"
            }
          },
          "sentraliserteGrupper": {
            "type": "array",
            "minItems": 0,
            "items": {
              "$ref": "#/components/schemas/SentralisertGruppe"
            }
          },
          "identifisertePersoner": {
            "type": "array",
            "description": "Brukere som må administreres manuelt med fødselsnummer",
            "minItems": 0,
            "items": {
              "$ref": "#/components/schemas/IdentifisertPerson"
            }
          }
        },
        "required": [
          "sentraliserteBrukere",
          "sentraliserteGrupper",
          "identifisertePersoner"
        ]
      },
      "OppdaterTjenesteForOrganisasjon": {
        "type": "object",
        "description": "Oppdaterer tjenestedefinisjonen",
        "properties": {
          "sentralisertBrukerstyringAktivert": {
            "type": "boolean",
            "description": "Angir om tjenesten skal aktiveres for sentralisert brukerstyring",
            "example": true
          }
        }
      },
      "LeverandorTjenesteListe": {
        "type": "object",
        "description": "Liste over eksterne som leverer applikasjoner gjennom Fiks plattformen.",
        "properties": {
          "leverandorTjenester": {
            "type": "array",
            "minItems": 0,
            "items": {
              "$ref": "#/components/schemas/LeverandorTjeneste"
            }
          }
        }
      },
      "URIMedParameter": {
        "properties": {
          "uri": {
            "$ref": "#/components/schemas/URI"
          },
          "ParameterFraKSObject": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ParameterFraKSObject"
            },
            "description": "Parametre som skal legges til URI fra KS",
            "example": [
              {
                "type": "kommunenummer"
              }
            ],
            "nullable": true
          }
        }
      },
      "ParameterFraKSObject": {
        "type": "string",
        "enum": [
          "kommunenummer"
        ],
        "required": [
          "type"
        ]
      },
      "URI": {
        "type": "string",
        "format": "uri",
        "description": "URI",
        "example": "https://www.ks.no"
      },
      "LeverandorTjeneste": {
        "type": "object",
        "description": "Ekstern organisasjon som leverer applikasjoner gjennom Fiks plattformen.",
        "properties": {
          "navn": {
            "$ref": "#/components/schemas/Navn"
          },
          "tjenestekode": {
            "$ref": "#/components/schemas/Tjenestekode"
          }
        }
      },
      "Organisasjonsnummer": {
        "type": "string",
        "description": "Organisasjonsnummer",
        "pattern": "^[0-9]{9}$"
      },
      "UnderenhetListe": {
        "type": "object",
        "description": "Liste over underenheter til en FiksOrg",
        "properties": {
          "underenheter": {
            "type": "array",
            "minItems": 0,
            "items": {
              "$ref": "#/components/schemas/Underenhet"
            }
          }
        }
      },
      "Underenhet": {
        "type": "object",
        "description": "Underenhet tilhørende FiksOrg",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/UnikId"
          },
          "organisasjonsnummer": {
            "$ref": "#/components/schemas/Organisasjonsnummer"
          },
          "navn": {
            "type": "string",
            "description": "Navn på underenhet",
            "example": "Underenhet 1"
          },
          "tilganger": {
            "$ref": "#/components/schemas/AppTilganger"
          }
        },
        "readOnly": true,
        "required": [
          "id",
          "organisasjonsnummer",
          "navn"
        ]
      },
      "OpprettUnderenhet": {
        "type": "object",
        "description": "Opprett en underenhet tilhørende FiksOrg",
        "properties": {
          "organisasjonsnummer": {
            "$ref": "#/components/schemas/Organisasjonsnummer"
          }
        },
        "writeOnly": true,
        "required": [
          "organisasjonsnummer"
        ]
      },
      "ErUnderenhet": {
        "type": "boolean",
        "description": "true om enhet er underenhet",
        "example": true
      },
      "ErrorMessage": {
        "type": "object",
        "description": "Feilmelding fra Fiks-plattformen",
        "externalDocs": {
          "description": "Beskrivelse av feilmeldinger",
          "url": "https://ks-no.github.io/fiks-plattform/integrasjoner/#feilmeldinger"
        },
        "properties": {
          "timestamp": {
            "type": "integer",
            "format": "int64"
          },
          "status": {
            "type": "integer",
            "format": "int32"
          },
          "error": {
            "type": "string"
          },
          "errorId": {
            "type": "string",
            "format": "uuid"
          },
          "path": {
            "type": "string"
          },
          "originalPath": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "errorCode": {
            "type": "string"
          },
          "errorJson": {
            "type": "string"
          }
        },
        "example": {
          "message": "Mangler tilgang",
          "errorId": "ee2ed64d-de8b-45f9-b9c6-3363d662d93b",
          "status": 403
        }
      }
    },
    "responses": {
      "ugyldigParameterverdi": {
        "description": "Ugyldig input",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorMessage"
            }
          }
        }
      },
      "appMangler": {
        "description": "Appen finnes ikke",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorMessage"
            }
          }
        }
      },
      "ukjentRessurs": {
        "description": "Finner ingen ressurs for oppgitte parametre",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorMessage"
            },
            "example": {
              "message": "Finner ingen ressurs for oppgitte parametre",
              "status": 404
            }
          }
        }
      },
      "ikkeAutentisert": {
        "description": "Ikke autentisert",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorMessage"
            },
            "example": {
              "message": "Ikke autentisert",
              "status": 401
            }
          }
        }
      },
      "manglerTilgang": {
        "description": "Ikke autorisert",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorMessage"
            },
            "example": {
              "message": "Ikke autorisert",
              "status": 403
            }
          }
        }
      }
    }
  }
}