Signicat Person Monitor
Download OpenAPI specification:Download
This API enables monitoring of person name and address changes through multiple national person registries.
Retrieve changes
Returns a paginated result containing all changes since the last change marked as read.
If the next
response property is missing, there is no more data to retrieve.
path Parameters
monitorId required | string The monitor ID. |
query Parameters
offset | integer <int32> Default: 0 Optional cursor for pagination, which allows for paging without marking changes as read. |
limit | integer <int32> Default: 1000 Optional parameter to set how many results you want per page. |
Responses
Response samples
- 202
{- "offset": 0,
- "limit": 3,
- "size": 6,
- "data": [
- {
- "changeId": 1,
- "status": "ok",
- "source": "nationalRegistry",
- "changeDetected": "2019-08-01T12:00:00.0Z",
- "referenceKey": "c2690bae4cbc45b2a84e24de787b22d2"
}, - {
- "changeId": 15,
- "status": "invalid",
- "source": "nationalRegistry",
- "changeDetected": "2019-08-01T12:00:00.0Z",
- "referenceKey": "b25229e4f6024e35931e4edbe4a29009"
}, - {
- "changeId": 16,
- "status": "ok",
- "source": "nationalRegistry",
- "changeDetected": "2019-10-01T12:00:00.0Z",
- "referenceKey": "c2690bae4cbc45b2a84e24de787b22d2",
- "changes": {
- "firstName": "Hedda Hansen",
- "lastName": "Tjolstad",
- "address": {
- "address": "Åstadbakken 78",
- "zipCode": "1341",
- "city": "SLEPENDEN"
}, - "screening": {
- "riskLevel": 100,
- "listType": "SANCTION",
- "source": "EU_GLOBAL"
}
}
}
]
}
Mock changes
Manually add changes to a monitor that that was created with the isMock
property set to true.
The monitor will process and create changes for the persons as if they came from a population registry.
path Parameters
monitorId required | string The monitor ID. |
Request Body schema: application/json
Changes that will be mocked.
required | Array of objects (MonitorMockPerson) non-empty List of person changes. |
source | string (Source) Enum: "nationalRegistry" "trapets" What kind of sources to use for monitoring |
Responses
Request samples
- Payload
{- "persons": [
- {
- "status": "ok",
- "changeDetected": "2025-02-01T15:01:38.38Z",
- "referenceKey": "b25229e4f6024e35931e4edbe4a29009",
- "firstName": "Hedda-Olai",
- "address": {
- "address": "Kirkegata 176"
}
}, - {
- "status": "ok",
- "changeDetected": "2025-02-01T15:01:38.38Z",
- "referenceKey": "b25229e4f6024e35931e4edbe4a29010",
- "screening": {
- "listType": "PEP",
- "source": "PEP_Edge"
}
}, - {
- "status": "invalid",
- "changeDetected": "2025-01-25T15:01:38.38Z",
- "referenceKey": "c2690bae4cbc45b2a84e24de787b22d2"
}
], - "source": "nationalRegistry"
}
Retrieve changes for a person
Retrieves all changes for a single person, ignoring any cursors.
path Parameters
monitorId required | string The monitor ID. |
referenceKey required | string The person's reference key. |
Responses
Response samples
- 200
[- {
- "changeId": 1,
- "status": "ok",
- "source": "nationalRegistry",
- "changeDetected": "2025-02-06T15:01:38.38Z",
- "referenceKey": "b25229e4f6024e35931e4edbe4a29009",
- "changes": {
- "firstName": "Anne",
- "lastName": "Olsen",
- "middleName": "Lise",
- "dateOfBirth": "1997-10-18",
- "nationalIdentityNumber": "18109777441",
- "address": {
- "address": "Kveldstuavegen 32",
- "zipCode": "9013",
- "city": "Tromsø",
- "country": "NO"
}, - "screening": {
- "riskLevel": 100,
- "listType": "SANCTION",
- "source": "EU_GLOBAL"
}
}
}
]
Endpoints for performing CRUD operations on a monitor.
A monitor is a collection of persons to monitor for changes.
Create a monitor.
Creates a blank monitor. The monitor must be populated with person data before it can be used.
Request Body schema: application/json
name required | string [ 1 .. 50 ] characters Name of the monitor. |
description | string or null Description of the monitor. |
sources | Array of strings or null (Source) Enum: "nationalRegistry" "trapets" Sources to use for monitoring, defaults to Idfy.Monitor.Person.ApiDtos.Monitor.SourceDto.NationalRegistry |
allowMock | boolean Deprecated |
isMock | boolean Set the monitor in a mock state, where you generate your own changes. This will allow you to add persons for monitoring without having credentials for the targeted population registry. This parameter is only meant for testing. You must remove it before switching to production. |
returnBlockDataOnChange | boolean Person Monitor will send ALL the related data elements together, even if only one of them changes (e.g. first, middle and last names even when last name alone changes) and then send full address element (addressLine, city, zipCode and country, even if only addressLine changes) |
Responses
Request samples
- Payload
{- "name": "Platinum Card Owners",
- "description": "Keeping our platinum card customer database updated",
- "sources": [
- "nationalRegistry"
], - "allowMock": false,
- "isMock": false,
- "returnBlockDataOnChange": false
}
Retrieve monitor information
Returns key information about the monitor.
path Parameters
monitorId required | string The monitor ID. |
Responses
Response samples
- 200
{- "name": "Platinum Card Owners",
- "enabled": false,
- "created": "2018-06-16T15:41:20.20Z",
- "details": {
- "personCount": 8803,
- "unknownCount": 0,
- "lastPersonChange": "2019-08-01T12:00:00.0Z",
- "lastChangeRequest": "2019-07-29T15:41:20.20Z"
}, - "allowMock": false,
- "isMock": false,
- "returnBlockDataOnChange": false
}
Response samples
- 200
{- "data": [
- {
- "id": "2080aeb6e0b14f0c9ea9c64bf0bded1b",
- "name": "Platinum Card Owners",
- "description": "Keeping our platinum card customer database updated",
- "enabled": true,
- "changeTypes": [
- "address",
- "name"
], - "created": "2018-06-16T15:41:20.20Z",
- "returnBlockDataOnChange": false
}, - {
- "id": "bfad98b795bf476a84ec052dbb340979",
- "name": "Gold Card Owners",
- "description": "Keeping our gold card customer database updated",
- "enabled": true,
- "changeTypes": [
- "name"
], - "created": "2018-05-14T12:35:20.20Z",
- "returnBlockDataOnChange": false
}
]
}
Endpoints for managing the persons for a specific monitor.
Each person must have a reference key which uniquely identifies the person within the monitor. The reference key should also allow you to identify the person within your own systems.
Add a person
Adds the specified person to the monitor. The supplied information must be enough to securely identify them. The national identity number must always be included.
path Parameters
monitorId required | string The monitor ID. |
referenceKey required | string The person's reference key. |
Request Body schema: application/json
Information about the person you want to add.
firstName | string or null The person's first name. |
lastName | string or null The person's last name. |
middleName | string or null The person's middle name. |
dateOfBirth | string or null <yyyy-MM-dd> The person's date of birth, if available. |
nationalIdentityNumber | string or null The person's national identity number, if available. |
nationality required | string = 2 characters Determines which population registry to use when looking up the person (ISO 3166-1 alpha-2). |
object (PersonAddress) The person's address | |
object (PersonScreening) Attribute providing information about the Screening status of the person |
Responses
Request samples
- Payload
{- "firstName": "Hedda",
- "lastName": "Hansen",
- "middleName": "T.",
- "dateOfBirth": "1970-02-20",
- "nationalIdentityNumber": "24107749383",
- "nationality": "NO",
- "address": {
- "address": "Kirkegata 177",
- "zipCode": "3674",
- "city": "NOTODDEN",
- "country": "NO"
}
}
Get a person
Get the latest information about the person with the supplied referenceKey.
path Parameters
monitorId required | string The monitor ID. |
referenceKey required | string The person's reference key. |
Responses
Response samples
- 200
{- "fullName": "Hedda Hansen",
- "firstName": "Hedda",
- "lastName": "Hansen",
- "dateOfBirth": "1984-08-16",
- "nationalIdentityNumber": "24107749383",
- "nationality": "NO",
- "address": {
- "address": "Kirkegata 177",
- "zipCode": "3674",
- "city": "NOTODDEN",
- "country": "NO"
}, - "screening": {
- "listType": "PEP",
- "source": "PEP_Edge"
}
}
Add a batch of persons
Adds the provided persons to the register. Existing persons (persons from the batch whose referenceKey already exists in the system) will be updated. The information you supply about each person must be enough to securely identify them. For example, a national identity number or the combination of name and date of birth.
If any added persons are detected as invalid, a change message will be available through the changes endpoint.
path Parameters
monitorId required | string The monitor ID. |
Request Body schema:
The list of persons to be added.
required | Array of objects (MonitorPerson) non-empty The persons to be added to the monitor. We recommend that you keep this under | ||||||||||||||||||
Array (non-empty)
|
Responses
Request samples
- Payload
{- "persons": [
- {
- "referenceKey": "b25229e4f6024e35931e4edbe4a29009",
- "firstName": "Hedda",
- "lastName": "Hansen",
- "middleName": "T.",
- "dateOfBirth": "1970-02-20",
- "nationalIdentityNumber": "24107749383",
- "nationality": "NO",
- "address": {
- "address": "Kirkegata 177",
- "zipCode": "3674",
- "city": "NOTODDEN",
- "country": "NO"
}
}, - {
- "referenceKey": "c2690bae4cbc45b2a84e24de787b22d2",
- "firstName": "Erik",
- "lastName": "Rødal",
- "middleName": "D.",
- "dateOfBirth": "1980-04-20",
- "nationality": "NO",
- "address": {
- "address": "Bjørndalen 74",
- "zipCode": "1708",
- "city": "SARPSBORG",
- "country": "NO"
}
}
]
}
Remove a batch of persons
Removes the specified persons from the monitor.
path Parameters
monitorId required | string The monitor ID. |
Request Body schema: application/json
Reference IDs of the persons to remove from the monitor
personReferenceKeys required | Array of strings non-empty Reference keys of persons to be removed from monitor. |
Responses
Request samples
- Payload
{- "personReferenceKeys": [
- "b25229e4f6024e35931e4edbe4a29009",
- "c2690bae4cbc45b2a84e24de787b22d2"
]
}