Handling discontinued entries in the Person API

In the Person API and in the National Population Register (Folkeregisteret/FREG), an entry for a person in the registry can be set as discontinued. There are two scenarios where this might happen:

  • Removal of duplicate entries
    • An entry for a person is set as discontinued as a duplicate
    • Happens when a person has two entries and these are merged into a single one
  • Removal of invalid entries
    • An entry for a person is set as discontinued
    • Happens when an entry should have never existed

Both of these scenarios happen quite rarely, but removing duplicate entries is the most common.

Removal of duplicate entries

When the same person has multiple entries in the register, data is consolidated into a single entry, and one entry is marked as continued and the other is marked as discontinued. This process is also described in the "Merge entries" section on the events page. The associated event type for the discontinued entry is "PersonIsDiscontinuedAsDuplicate". Any identifiers (NINs) in the discontinued entry are transferred to the continued entry, so a get-by-nin request for any NINs in the discontinued entry will now point to the continued entry, and this document will be returned in the Person API.

In FREG, the entry which was discontinued as a duplicate is deleted from the register, but in the Person API there is still a personId reference to the discontinued entry. This is why the Person API still contains a document for entries which are discontinued as duplicates. A get-by-id lookup using a discontinued personId reference will result in a document with no currently valid identifiers and the person status set to discontinued. All other information will be empty. A json example from test data is given below.

Json example
{
  "norwegianIdentificationNumber": [
    {
      "status": "InUse",
      "identificationNumber": "01829399993",
      "identificationNumberType": "NationalIdentityNumber",
      "registeredAt": null,
      "isValid": false,
      "source": null,
      "reason": null,
      "validFrom": null,
      "validTo": null
    }
  ],
  "status": [
    {
      "status": "Discontinued",
      "registeredAt": null,
      "isValid": true,
      "source": null,
      "reason": null,
      "validFrom": null,
      "validTo": null
    }
  ],
  "falseIdentity": null,
  "identityVerification": [],
  "residuaryEstateContactInformation": [],
  "identificationDocument": [],
  "immigrationAuthoritiesIdentificationNumber": [],
  "foreignPersonIdentificationNumber": [],
  "sharedResidence": [],
  "gender": [],
  "birth": [],
  "birthInNorway": [],
  "familyRelation": [],
  "maritalStatus": [],
  "death": null,
  "name": [],
  "addressProtection": [],
  "residentialAddress": [],
  "presentAddress": [],
  "immigrationToNorway": [],
  "emigrationFromNorway": [],
  "useOfSamiLanguage": [],
  "samiParliamentElectoralRegistryStatus": [],
  "preferredContactAddress": [],
  "postalAddress": [],
  "foreignPostalAddress": [],
  "parentalResponsibility": [],
  "citizenship": [],
  "citizenshipRetention": [],
  "residencePermit": [],
  "stayOnSvalbard": [],
  "guardianshipOrFuturePowerOfAttorney": [],
  "deprivedLegalAuthority": []
}

Removal of invalid entries

An entry can also be set as discontinued without being a duplicate. This would be cases where an entry should never have existed in the first place, and any identifiers (NINs) should have never been assigned. The associated event type for an entry being discontinued is "PersonIsDiscontinued". In this case, the person status is set to discontinued, and all assigned NINs are also marked as discontinued. The rest of the document is left unchanged. In the Person API, it will no longer be possible to look up this person by NIN, but looking up the person using a personId reference will still return the document. A json example from test data is provided below.

Json example
{
    "falseIdentity": {
        "correctIdentityFromInformation": null,
        "isCorrectIdentityUnknown": true,
        "correctIdentityFromIdentificationNumber": null,
        "isFalseIdentity": true,
        "registeredAt": "2022-10-03T11:19:16.621374Z",
        "isValid": true,
        "source": "påtalemyndigheteneIPolitiet",
        "reason": null,
        "validFrom": "2022-10-03T11:19:16.621374Z",
        "validTo": null
    },
    "norwegianIdentificationNumber": [
        {
            "status": "Discontinued",
            "identificationNumber": "12849399711",
            "identificationNumberType": "NationalIdentityNumber",
            "registeredAt": "2022-10-03T11:19:16.621374Z",
            "isValid": true,
            "source": "KILDE_DSF",
            "reason": null,
            "validFrom": "2022-10-03T11:19:16.621374Z",
            "validTo": null
        }
    ],
    "identityVerification": [],
    "residuaryEstateContactInformation": [],
    "identificationDocument": [],
    "status": [
        {
            "status": "Discontinued",
            "registeredAt": "2022-10-03T11:19:16.621374Z",
            "isValid": true,
            "source": "påtalemyndigheteneIPolitiet",
            "reason": "Falsk identitet",
            "validFrom": "2022-10-03T11:19:16.621374Z",
            "validTo": null
        },
        {
            "status": "Resident",
            "registeredAt": "2020-12-22T16:08:47.225Z",
            "isValid": false,
            "source": "KILDE_DSF",
            "reason": null,
            "validFrom": "2020-12-22T16:08:47.225Z",
            "validTo": null
        }
    ],
    "immigrationAuthoritiesIdentificationNumber": [],
    "foreignPersonIdentificationNumber": [],
    "sharedResidence": [],
    "gender": [
        {
            "gender": "Male",
            "registeredAt": null,
            "isValid": true,
            "source": "KILDE_DSF",
            "reason": null,
            "validFrom": null,
            "validTo": null
        }
    ],
    "birth": [
        {
            "birthDate": "1993-04-12T00:00:00Z",
            "birthYear": "1993",
            "birthPlace": null,
            "birthMunicipalityNumber": "3036",
            "birthMunicipalityName": "Nannestad",
            "birthCountyNumber": "30",
            "birthCountyName": "Viken",
            "birthCountry": "NOR",
            "registeredAt": "2022-02-22T07:36:17.579195Z",
            "isValid": true,
            "source": "Synutopia",
            "reason": null,
            "validFrom": "1993-04-12T07:36:17.57919Z",
            "validTo": null
        }
    ],
    "birthInNorway": [
        {
            "organizationName": "Fullkommen Testinstitusjon",
            "multipleBirthNumber": 11,
            "registeredAt": "2022-02-22T07:36:17.718744Z",
            "isValid": true,
            "source": "Synutopia",
            "reason": "Fødsel",
            "validFrom": "1993-04-12T07:36:17.718744Z",
            "validTo": null
        }
    ],
    "familyRelation": [
        {
            "relatedPerson": "29815697977",
            "relatedPersonWithoutIdentifier": null,
            "relatedPersonsRole": "Father",
            "myRoleForRelatedPerson": "Child",
            "registeredAt": "2022-02-22T07:36:17.09506Z",
            "isValid": true,
            "source": "Synutopia",
            "reason": "Patch",
            "validFrom": "1993-04-11T23:00:00Z",
            "validTo": null
        },
        {
            "relatedPerson": "18835898691",
            "relatedPersonWithoutIdentifier": null,
            "relatedPersonsRole": "Mother",
            "myRoleForRelatedPerson": "Child",
            "registeredAt": "2022-02-22T07:36:16.871806Z",
            "isValid": true,
            "source": "Synutopia",
            "reason": "Patch",
            "validFrom": "1993-04-11T23:00:00Z",
            "validTo": null
        }
    ],
    "maritalStatus": [
        {
            "status": "Unmarried",
            "statusDate": "1993-04-12T00:00:00Z",
            "authority": null,
            "municipalityNumber": null,
            "municipalityName": null,
            "countyNumber": null,
            "countyName": null,
            "place": null,
            "abroad": null,
            "relatedByMaritalStatus": null,
            "registeredAt": "2022-02-22T07:36:17.822034Z",
            "isValid": true,
            "source": "Synutopia",
            "reason": "Fødsel",
            "validFrom": "1993-04-12T07:36:17.82205Z",
            "validTo": null
        }
    ],
    "death": null,
    "name": [
        {
            "givenName": "RAKRYGGET",
            "middleName": null,
            "familyName": "ABBED",
            "shortName": null,
            "originalName": null,
            "registeredAt": "2022-02-22T07:36:17.753116Z",
            "isValid": true,
            "source": "Synutopia",
            "reason": "Patch",
            "validFrom": "2022-02-22T07:36:17.753113Z",
            "validTo": null
        }
    ],
    "addressProtection": [],
    "residentialAddress": [
        {
            "streetAddress": {
                "separatelyOccupiedUnitNumber": "H0101",
                "separatelyOccupiedUnitType": "Housing",
                "addressName": "Strokkenes",
                "addressNumber": {
                    "houseNumber": "41",
                    "houseLetter": null
                },
                "addressCode": "1049",
                "addressAdditionalName": null,
                "city": {
                    "cityName": "SJØVEGAN",
                    "postalCode": "9350"
                },
                "coAddressName": null,
                "municipalityNumber": "5417",
                "municipalityName": "Salangen",
                "countyNumber": "54",
                "countyName": "Troms og Finnmark - Romsa ja Finnmárku - Tromssa ja Finmarkku"
            },
            "cadastralAddress": null,
            "unknownResidence": null,
            "cadastralIdentifier": "240183943",
            "closeCadastralIdentifier": null,
            "addressConfidentiality": "Unclassified",
            "moveDate": "2022-02-22T00:00:00Z",
            "basicStatisticalUnit": 109,
            "fullBasicStatisticalUnitNumber": "54170109",
            "basicStatisticalUnitName": "Sjøvegan 3",
            "constituency": 1,
            "schoolDistrict": 1,
            "churchDistrict": 1,
            "urbanDistrictCode": null,
            "urbanDistrictName": null,
            "geographicalUrbanDistrictCode": null,
            "geographicalUrbanDistrictName": null,
            "registeredAt": "2022-10-03T11:19:16.621374Z",
            "isValid": false,
            "source": "Synutopia",
            "reason": "Flytting innenlands",
            "validFrom": "2022-02-21T23:00:00Z",
            "validTo": "2022-10-03T11:19:16.621374Z"
        }
    ],
    "presentAddress": [],
    "immigrationToNorway": [],
    "emigrationFromNorway": [],
    "useOfSamiLanguage": [],
    "samiParliamentElectoralRegistryStatus": [],
    "preferredContactAddress": [],
    "postalAddress": [],
    "foreignPostalAddress": [],
    "parentalResponsibility": [],
    "citizenship": [
        {
            "countryCode": "NOR",
            "aquiredDate": "1993-04-12T00:00:00Z",
            "registeredAt": "2022-02-22T07:36:17.92172Z",
            "isValid": true,
            "source": "Synutopia",
            "reason": "Fødsel",
            "validFrom": "1993-04-12T07:36:17.921737Z",
            "validTo": null
        }
    ],
    "citizenshipRetention": [],
    "residencePermit": [],
    "stayOnSvalbard": [],
    "guardianshipOrFuturePowerOfAttorney": [],
    "deprivedLegalAuthority": []
}