{
  "openapi": "3.0.1",
  "info": {
    "title": "Register for lærebedrifter API",
    "description": "Data fra Register for lærebedrifter (NLR) viser enheter fra Brønnøysundregisteret (Brreg). Lærebedrifter i NLR inneholder bedrifter som har minst én løpende lærekontrakt. NLR har også informasjon om hvilke lærefag og geografisk plassering en lærebedrift har (dette er informasjon som kommer fra VIGO).<br><br>\r\n                  Ønsker du melding ved endring eller driftshendelser send en epost til <a href=\"mailto:nxr-teknisk@udir.no?subject=Nasjonalt api for lærebedrifter\">nxr-teknisk@udir.no</a>. Bruk samme epost for å avregistrere.<br><br>\r\n                  Data importeres fra Brreg i tidsrommet 01:00-02:00.<br><br>\r\n                  <a target=\"_blank\" href=\"https://nlr.udir.no\">Register for lærebedrifter</a><br>\r\n                  <a target=\"_blank\" href=\"https://data.norge.no/datasets/a42cc514-565f-451a-ad22-2acf57786a4d\">Felles datakatalog</a>",
    "license": {
      "name": "Lisens: Norsk lisens for offentlige data (NLOD)",
      "url": "https://data.norge.no/nlod/no"
    },
    "version": "4.0"
  },
  "paths": {
    "/v4/enhet/{organisasjonsnummer}": {
      "get": {
        "tags": [
          "Enhet"
        ],
        "summary": "En enhet",
        "description": "Returnerer en enhet basert på organisasjonsnummer.",
        "operationId": "GetEnhet",
        "parameters": [
          {
            "name": "organisasjonsnummer",
            "in": "path",
            "description": "Organisasjonsnummer",
            "required": true,
            "schema": {
              "minLength": 9,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NlrEnhetApiModel"
                }
              }
            }
          }
        }
      }
    },
    "/v4/enheter": {
      "get": {
        "tags": [
          "Enhet"
        ],
        "summary": "Alle enheter",
        "description": "Returnerer alle lærebedrifter i registeret.\r\n            Søkeresultatet er paginert med en standard sidestørrelse på 1000 enheter.",
        "operationId": "GetEnheter",
        "parameters": [
          {
            "name": "sidenummer",
            "in": "query",
            "description": "Første side er nummer 1.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "antallperside",
            "in": "query",
            "description": "Antall enheter per side. Standard sidestørrelse er 1000.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1000
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NlrEnhetEnkelApiModelApiPageResult"
                }
              }
            }
          },
          "400": {
            "description": "Sidenummer og AntallPerSide må være 1 eller større."
          }
        }
      }
    },
    "/v4/enhet/endretetter": {
      "get": {
        "tags": [
          "Enhet"
        ],
        "summary": "Enheter endret",
        "description": "Returnerer alle enheter i registeret det er registrert endringer på etter gitt dato.\r\n            Mange datoformater godtas, men kun norsk tidssone.\r\n\r\n            Eksempler:\r\n\r\n            2024.01.01\r\n\r\n            2024-01-01 12:00:00\r\n\r\n            2024-01-01T12:00:00",
        "parameters": [
          {
            "name": "dato",
            "in": "query",
            "description": "Enheter som er endret etter dato",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NlrEnhetEnkelResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v4/organisasjonsformer": {
      "get": {
        "tags": [
          "Typer"
        ],
        "summary": "Alle organisajonsformer",
        "description": "Returnerer alle organisasjonsformer.",
        "operationId": "GetOrganisasjonsformer",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OrganisasjonsformResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v4/utgaattyper": {
      "get": {
        "tags": [
          "Typer"
        ],
        "summary": "Alle utgått-typer",
        "description": "Returnerer alle utgått-typer.",
        "operationId": "GetUtgaattyper",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UtgaattypeResponse"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AdresseApiModel": {
        "type": "object",
        "properties": {
          "Adresse": {
            "type": "string",
            "nullable": true
          },
          "Postnummer": {
            "type": "string",
            "nullable": true
          },
          "Poststed": {
            "type": "string",
            "nullable": true
          },
          "Land": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EnhetNaeringskodeApiModel": {
        "type": "object",
        "properties": {
          "Prioritet": {
            "type": "integer",
            "format": "int32"
          },
          "Kode": {
            "type": "string",
            "nullable": true
          },
          "Navn": {
            "type": "string",
            "nullable": true
          },
          "Versjon": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "FylkeApiModel": {
        "type": "object",
        "properties": {
          "Fylkesnummer": {
            "type": "string",
            "nullable": true
          },
          "Navn": {
            "type": "string",
            "nullable": true
          },
          "Organisasjonsnummer": {
            "type": "string",
            "nullable": true
          },
          "StatsforvalterOrganisasjonsnummer": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Hjelpeenhetskode": {
        "type": "object",
        "properties": {
          "Kode": {
            "type": "string",
            "nullable": true
          },
          "Beskrivelse": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "KommuneApiModel": {
        "type": "object",
        "properties": {
          "Navn": {
            "type": "string",
            "nullable": true
          },
          "Kommunenummer": {
            "type": "string",
            "nullable": true
          },
          "Organisasjonsnummer": {
            "type": "string",
            "nullable": true
          },
          "ErNedlagt": {
            "type": "boolean"
          },
          "Fylkesnummer": {
            "type": "string",
            "nullable": true
          },
          "Kostragruppe": {
            "allOf": [
              {
                "$ref": "#/components/schemas/KostragruppeApiModel"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "KoordinatApiModel": {
        "type": "object",
        "properties": {
          "Lengdegrad": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "Breddegrad": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "Zoom": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "GeoKilde": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "KostragruppeApiModel": {
        "type": "object",
        "properties": {
          "Id": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "Navn": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NlrEnhetApiModel": {
        "type": "object",
        "properties": {
          "Organisasjonsnummer": {
            "type": "string",
            "nullable": true
          },
          "Navn": {
            "type": "string",
            "nullable": true
          },
          "Karakteristikk": {
            "type": "string",
            "nullable": true
          },
          "FulltNavn": {
            "type": "string",
            "nullable": true
          },
          "Fylke": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FylkeApiModel"
              }
            ],
            "nullable": true
          },
          "Kommune": {
            "allOf": [
              {
                "$ref": "#/components/schemas/KommuneApiModel"
              }
            ],
            "nullable": true
          },
          "Beliggenhetsadresse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AdresseApiModel"
              }
            ],
            "nullable": true
          },
          "Postadresse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AdresseApiModel"
              }
            ],
            "nullable": true
          },
          "VigoAdresse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AdresseApiModel"
              }
            ],
            "nullable": true
          },
          "Koordinat": {
            "allOf": [
              {
                "$ref": "#/components/schemas/KoordinatApiModel"
              }
            ],
            "nullable": true
          },
          "Internettadresse": {
            "type": "string",
            "nullable": true
          },
          "Organisasjonsform": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OrganisasjonsformApiModel"
              }
            ],
            "nullable": true
          },
          "Naeringskoder": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EnhetNaeringskodeApiModel"
            },
            "nullable": true
          },
          "Hjelpeenhetskode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Hjelpeenhetskode"
              }
            ],
            "nullable": true
          },
          "ErAktiv": {
            "type": "boolean"
          },
          "ErLaerebedrift": {
            "type": "boolean"
          },
          "Programomraader": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProgramomraadeApiModel"
            },
            "nullable": true
          },
          "Utgaattype": {
            "allOf": [
              {
                "$ref": "#/components/schemas/UtgaattypeApiModel"
              }
            ],
            "nullable": true
          },
          "UtgaattDato": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "OppstartsEllerStiftelsesdato": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "DatoEndret": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "NlrEnhetEnkelApiModel": {
        "type": "object",
        "properties": {
          "Organisasjonsnummer": {
            "type": "string",
            "nullable": true
          },
          "Navn": {
            "type": "string",
            "nullable": true
          },
          "Karakteristikk": {
            "type": "string",
            "nullable": true
          },
          "FulltNavn": {
            "type": "string",
            "nullable": true
          },
          "Fylkesnummer": {
            "type": "string",
            "nullable": true
          },
          "Kommunenummer": {
            "type": "string",
            "nullable": true
          },
          "ErAktiv": {
            "type": "boolean"
          },
          "ErLaerebedrift": {
            "type": "boolean"
          },
          "DatoEndret": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "NlrEnhetEnkelApiModelApiPageResult": {
        "type": "object",
        "properties": {
          "Sidenummer": {
            "type": "integer",
            "format": "int32"
          },
          "AntallPerSide": {
            "type": "integer",
            "format": "int32"
          },
          "AntallSider": {
            "type": "integer",
            "format": "int32"
          },
          "TotaltAntallEnheter": {
            "type": "integer",
            "format": "int32"
          },
          "EnhetListe": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NlrEnhetEnkelApiModel"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NlrEnhetEnkelResponse": {
        "type": "object",
        "properties": {
          "EnhetListe": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NlrEnhetEnkelApiModel"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "OrganisasjonsformApiModel": {
        "type": "object",
        "properties": {
          "Id": {
            "type": "string",
            "nullable": true
          },
          "Navn": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "OrganisasjonsformResponse": {
        "type": "object",
        "properties": {
          "OrganisasjonsformListe": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrganisasjonsformApiModel"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProgramomraadeApiModel": {
        "type": "object",
        "properties": {
          "Id": {
            "type": "string",
            "nullable": true
          },
          "Navn": {
            "type": "string",
            "nullable": true
          },
          "Medlemsbedrift": {
            "type": "boolean"
          },
          "LoependeKontrakt": {
            "type": "boolean"
          },
          "SisteKontraktdato": {
            "type": "string",
            "format": "date-time"
          },
          "BeregnetUtloepAvGodkjenning": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "UtgaattypeApiModel": {
        "type": "object",
        "properties": {
          "Id": {
            "type": "string",
            "nullable": true
          },
          "Navn": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UtgaattypeResponse": {
        "type": "object",
        "properties": {
          "UtgaattypeListe": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UtgaattypeApiModel"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "basic": {
        "type": "http",
        "description": "Example: basic xYzXYZxyz=",
        "scheme": "basic"
      }
    }
  },
  "security": [
    {
      "basic": [ ]
    }
  ]
}