Skip to content

AccessClient API 1.0.0 documentation

Youniq Access Client message API.

Servers

production Server

URL Protocol Description
host:{port} AMQP RabbitMQ, Exchange name: youniq, type: topic

URL Variables

Name Default value Possible values Description
port 5672 5672, 5671 -

Channels

youniq.configuration.changed Channel

Configuration is read or updated. Read configuration values from REST API. No payload.

publish Operation

Message
Payload
Name Type Description Accepted values
Message Payload - Any

Examples of payload (generated)

""

youniq.user.added Channel

Dispatched when a new user is synced from the cloud and added to the local user list. The user is available in the message body and can also be fetched through the HTTP REST API.

publish Operation

Message
Payload
Name Type Description Accepted values
id string Identification for user, given by YOUNiQ. Any
organizationId string Id of the organization the user belongs to. Any
name string Full name of the user. Any
email string Email for the user. Any
state string Defines the state of the user.
* 'created' - The user is added to the system.
* 'invited' - The user added to the system and an invitation is sent.
* 'enrolled' - The user has been added to the system with a selfie. created, invited, enrolled,
dataSource string The original source for the user. Any
credentials arrayobject Biometric data or passwords belonging to an user. Any
credentials.id string Identification for the credential object. Any
credentials.type string Type of data. face, qr,
credentials.mimeType The mimetype of the credential. Any
credentials.data Biometric data or credential. Any
credentials.createdDate string Date and time the credential object was created. Any
linkedUserData arrayobject Data about the user used by integrations. Any
linkedUserData.systemName string Name of external system. Any
linkedUserData.externalId string External id. Any
linkedUserData.externalData External data. The content depends on the external system. And is used by the external system when the user is identified. If the data is secret it should be end to end encrypted. Any

Examples of payload (generated)

{
  "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
  "organizationId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
  "name": "James Brown",
  "email": "firstname.lastname@example.com",
  "state": "created",
  "dataSource": "MemberSystem ABC",
  "credentials": [
    {
      "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
      "type": "face",
      "mimeType": "image/jpeg",
      "data": "base64-encoded file contents.",
      "createdDate": "2020-07-21T20:35:45Z"
    }
  ],
  "linkedUserData": [
    {
      "systemName": "Themesong Player V1.0",
      "externalId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
      "externalData": "base64-encoded file content"
    }
  ]
}

youniq.user.updated Channel

Dispatched when an user synced from the cloud and differs from the to the local user list. The updated user is available in the message body and can also be fetched through the HTTP REST API.

publish Operation

Message
Payload
Name Type Description Accepted values
id string Identification for user, given by YOUNiQ. Any
organizationId string Id of the organization the user belongs to. Any
name string Full name of the user. Any
email string Email for the user. Any
state string Defines the state of the user.
* 'created' - The user is added to the system.
* 'invited' - The user added to the system and an invitation is sent.
* 'enrolled' - The user has been added to the system with a selfie. created, invited, enrolled,
dataSource string The original source for the user. Any
credentials arrayobject Biometric data or passwords belonging to an user. Any
credentials.id string Identification for the credential object. Any
credentials.type string Type of data. face, qr,
credentials.mimeType The mimetype of the credential. Any
credentials.data Biometric data or credential. Any
credentials.createdDate string Date and time the credential object was created. Any
linkedUserData arrayobject Data about the user used by integrations. Any
linkedUserData.systemName string Name of external system. Any
linkedUserData.externalId string External id. Any
linkedUserData.externalData External data. The content depends on the external system. And is used by the external system when the user is identified. If the data is secret it should be end to end encrypted. Any

Examples of payload (generated)

{
  "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
  "organizationId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
  "name": "James Brown",
  "email": "firstname.lastname@example.com",
  "state": "created",
  "dataSource": "MemberSystem ABC",
  "credentials": [
    {
      "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
      "type": "face",
      "mimeType": "image/jpeg",
      "data": "base64-encoded file contents.",
      "createdDate": "2020-07-21T20:35:45Z"
    }
  ],
  "linkedUserData": [
    {
      "systemName": "Themesong Player V1.0",
      "externalId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
      "externalData": "base64-encoded file content"
    }
  ]
}

youniq.user.deleted Channel

Dispatched when an user is deleted from the cloud and removed from the local user list. The deleted user is available in the message body.

publish Operation

Message
Payload
Name Type Description Accepted values
id string Identification for user, given by YOUNiQ. Any
organizationId string Id of the organization the user belongs to. Any
name string Full name of the user. Any
email string Email for the user. Any
state string Defines the state of the user.
* 'created' - The user is added to the system.
* 'invited' - The user added to the system and an invitation is sent.
* 'enrolled' - The user has been added to the system with a selfie. created, invited, enrolled,
dataSource string The original source for the user. Any
credentials arrayobject Biometric data or passwords belonging to an user. Any
credentials.id string Identification for the credential object. Any
credentials.type string Type of data. face, qr,
credentials.mimeType The mimetype of the credential. Any
credentials.data Biometric data or credential. Any
credentials.createdDate string Date and time the credential object was created. Any
linkedUserData arrayobject Data about the user used by integrations. Any
linkedUserData.systemName string Name of external system. Any
linkedUserData.externalId string External id. Any
linkedUserData.externalData External data. The content depends on the external system. And is used by the external system when the user is identified. If the data is secret it should be end to end encrypted. Any

Examples of payload (generated)

{
  "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
  "organizationId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
  "name": "James Brown",
  "email": "firstname.lastname@example.com",
  "state": "created",
  "dataSource": "MemberSystem ABC",
  "credentials": [
    {
      "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
      "type": "face",
      "mimeType": "image/jpeg",
      "data": "base64-encoded file contents.",
      "createdDate": "2020-07-21T20:35:45Z"
    }
  ],
  "linkedUserData": [
    {
      "systemName": "Themesong Player V1.0",
      "externalId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
      "externalData": "base64-encoded file content"
    }
  ]
}

youniq.face.captured Channel

Dispatched when a face has been captured but no attempt to recognize has yet been made. This message is typically sent by peripheral still image capturing devices such as a tablet.

publish Operation

Message
Payload
Name Type Description Accepted values
sensorId string Id of the sensor (camera or similar) where credential was captured. Any
payload object Captured credential, for example image containing a face. Any
payload.mimeType string Mime type of the data. Any
payload.data string Base64 encoded image data. Any
faceList array Array describing faces in image. There may be many faces in an image. It is also possible to limit it to one face per image, by only adding one item in the list. Any
faceList.captureId string GUID for this captured credential, for example face. If many images are taken on the same user, each image shall have a different captureId. Any
faceList.sessionId string A session id (GUID) used to group images taken of the same user. Any
faceList.coordinates object "Coordinates for the position of the eyes. Left and right from the perspective of the subject,
i.e. the right eye is to the left in the image if the mouth is down and the forehead is up." Any
faceList.coordinates.leftEyeX number - Any
faceList.coordinates.leftEyeY number - Any
faceList.coordinates.rightEyeX number - Any
faceList.coordinates.rightEyeY number - Any

Examples of payload (generated)

{
  "sensorId": "camera-front",
  "payload": {},
  "faceList": [
    {
      "captureId": "2bdb3c9b-2d98-4c9f-aa95-0fd63e199097",
      "sessionId": "e5fa7f5a-0bfc-4477-bb25-ecff210b2b8a",
      "coordinates": {
        "leftEyeX": 523,
        "leftEyeY": 456,
        "rightEyeX": 223,
        "rightEyeY": 456
      }
    }
  ]
}

youniq.qr.captured Channel

A QR code is read but not matched to a user.

publish Operation

Message
Payload
Name Type Description Accepted values
sensorId string Id of the sensor (camera or similar) where credential was captured. Any
code string Base64 encoded value of QR code. Any
captureId string GUID for this captured credential, for example face. If many images are taken on the same user, each image shall have a different captureId. Any
sessionId string A session id (GUID) used to group images taken of the same user. Any

Examples of payload (generated)

{
  "sensorId": "camera-front",
  "code": "string",
  "captureId": "2bdb3c9b-2d98-4c9f-aa95-0fd63e199097",
  "sessionId": "e5fa7f5a-0bfc-4477-bb25-ecff210b2b8a"
}

youniq.identification.started Channel

Identification is started.

publish Operation

Message
Payload
Name Type Description Accepted values
sensorId string Id of the sensor (camera or similar) where credential was captured. Any
credential string Defines different credential types.
* 'face' - Data is an image with a face.
* 'qr' - Quick Response code data. face, qr,
sessionId string A session id (GUID) used to group images taken of the same user. Any

Examples of payload (generated)

{
  "sensorId": "camera-front",
  "credential": "face",
  "sessionId": "e5fa7f5a-0bfc-4477-bb25-ecff210b2b8a"
}

youniq.identification.failed Channel

Identification cannot be determined. Identification may be performed using many video frames or images. This message is emitted once, when the identifier determines it is not possible to make an identification.

publish Operation

Message
Payload
Name Type Description Accepted values
sensorId string Id of the sensor (camera or similar) where credential was captured. Any
credential string Defines different credential types.
* 'face' - Data is an image with a face.
* 'qr' - Quick Response code data. face, qr,
sessionId string A session id (GUID) used to group images taken of the same user. Any
reason string Reason identification failed. noMatch, livenessFailed

Examples of payload (generated)

{
  "sensorId": "camera-front",
  "credential": "face",
  "sessionId": "e5fa7f5a-0bfc-4477-bb25-ecff210b2b8a",
  "reason": "noMatch"
}

youniq.identification.done Channel

Identification, including verification step, for example liveness check.

publish Operation

Message
Payload
Name Type Description Accepted values
sensorId string Id of the sensor (camera or similar) where credential was captured. Any
credential string Defines different credential types.
* 'face' - Data is an image with a face.
* 'qr' - Quick Response code data. face, qr,
user object User is an actual identifiable person. Any
user.id string Identification for user, given by YOUNiQ. Any
user.organizationId string Id of the organization the user belongs to. Any
user.name string Full name of the user. Any
user.email string Email for the user. Any
user.state string Defines the state of the user.
* 'created' - The user is added to the system.
* 'invited' - The user added to the system and an invitation is sent.
* 'enrolled' - The user has been added to the system with a selfie. created, invited, enrolled,
user.dataSource string The original source for the user. Any
user.credentials arrayobject Biometric data or passwords belonging to an user. Any
user.credentials.id string Identification for the credential object. Any
user.credentials.type string Type of data. face, qr,
user.credentials.mimeType The mimetype of the credential. Any
user.credentials.data Biometric data or credential. Any
user.credentials.createdDate string Date and time the credential object was created. Any
user.linkedUserData arrayobject Data about the user used by integrations. Any
user.linkedUserData.systemName string Name of external system. Any
user.linkedUserData.externalId string External id. Any
user.linkedUserData.externalData External data. The content depends on the external system. And is used by the external system when the user is identified. If the data is secret it should be end to end encrypted. Any
sessionId string A session id (GUID) used to group images taken of the same user. Any
captureId string GUID for this captured credential, for example face. If many images are taken on the same user, each image shall have a different captureId. Any

Examples of payload (generated)

{
  "sensorId": "camera-front",
  "credential": "face",
  "user": {
    "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
    "organizationId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
    "name": "James Brown",
    "email": "firstname.lastname@example.com",
    "state": "created",
    "dataSource": "MemberSystem ABC",
    "credentials": [
      {
        "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
        "type": "face",
        "mimeType": "image/jpeg",
        "data": "base64-encoded file contents.",
        "createdDate": "2020-07-21T20:35:45Z"
      }
    ],
    "linkedUserData": [
      {
        "systemName": "Themesong Player V1.0",
        "externalId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
        "externalData": "base64-encoded file content"
      }
    ]
  },
  "sessionId": "e5fa7f5a-0bfc-4477-bb25-ecff210b2b8a",
  "captureId": "2bdb3c9b-2d98-4c9f-aa95-0fd63e199097"
}

youniq.authorization.granted.{systemName} Channel

A user is authorized. Append systemName to topic, used to chain access systems. For example, one access system is used to authenticate users and another access system is used to open a door.

Channel Parameters

Name Type Description Accepted values
systemName string Name of the system that authorized the user to a resource. Shall match the systemName in users linkedUserData. Any

publish Operation

Message
Payload
Name Type Description Accepted values
user object User is an actual identifiable person. Any
user.id string Identification for user, given by YOUNiQ. Any
user.organizationId string Id of the organization the user belongs to. Any
user.name string Full name of the user. Any
user.email string Email for the user. Any
user.state string Defines the state of the user.
* 'created' - The user is added to the system.
* 'invited' - The user added to the system and an invitation is sent.
* 'enrolled' - The user has been added to the system with a selfie. created, invited, enrolled,
user.dataSource string The original source for the user. Any
user.credentials arrayobject Biometric data or passwords belonging to an user. Any
user.credentials.id string Identification for the credential object. Any
user.credentials.type string Type of data. face, qr,
user.credentials.mimeType The mimetype of the credential. Any
user.credentials.data Biometric data or credential. Any
user.credentials.createdDate string Date and time the credential object was created. Any
user.linkedUserData arrayobject Data about the user used by integrations. Any
user.linkedUserData.systemName string Name of external system. Any
user.linkedUserData.externalId string External id. Any
user.linkedUserData.externalData External data. The content depends on the external system. And is used by the external system when the user is identified. If the data is secret it should be end to end encrypted. Any
sensorId string Id of the sensor (camera or similar) where credential was captured. Any
sessionId string A session id (GUID) used to group images taken of the same user. Any
captureId string GUID for this captured credential, for example face. If many images are taken on the same user, each image shall have a different captureId. Any

Examples of payload (generated)

{
  "user": {
    "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
    "organizationId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
    "name": "James Brown",
    "email": "firstname.lastname@example.com",
    "state": "created",
    "dataSource": "MemberSystem ABC",
    "credentials": [
      {
        "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
        "type": "face",
        "mimeType": "image/jpeg",
        "data": "base64-encoded file contents.",
        "createdDate": "2020-07-21T20:35:45Z"
      }
    ],
    "linkedUserData": [
      {
        "systemName": "Themesong Player V1.0",
        "externalId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
        "externalData": "base64-encoded file content"
      }
    ]
  },
  "sensorId": "camera-front",
  "sessionId": "e5fa7f5a-0bfc-4477-bb25-ecff210b2b8a",
  "captureId": "2bdb3c9b-2d98-4c9f-aa95-0fd63e199097"
}

youniq.authorization.denied.{systemName} Channel

Sent by access system when an identity is rejected. Append systemName to topic, used to chain access systems.

Channel Parameters

Name Type Description Accepted values
systemName string Name of the system that authorized the user to a resource. Shall match the systemName in users linkedUserData. Any

publish Operation

Message
Payload
Name Type Description Accepted values
user object User is an actual identifiable person. Any
user.id string Identification for user, given by YOUNiQ. Any
user.organizationId string Id of the organization the user belongs to. Any
user.name string Full name of the user. Any
user.email string Email for the user. Any
user.state string Defines the state of the user.
* 'created' - The user is added to the system.
* 'invited' - The user added to the system and an invitation is sent.
* 'enrolled' - The user has been added to the system with a selfie. created, invited, enrolled,
user.dataSource string The original source for the user. Any
user.credentials arrayobject Biometric data or passwords belonging to an user. Any
user.credentials.id string Identification for the credential object. Any
user.credentials.type string Type of data. face, qr,
user.credentials.mimeType The mimetype of the credential. Any
user.credentials.data Biometric data or credential. Any
user.credentials.createdDate string Date and time the credential object was created. Any
user.linkedUserData arrayobject Data about the user used by integrations. Any
user.linkedUserData.systemName string Name of external system. Any
user.linkedUserData.externalId string External id. Any
user.linkedUserData.externalData External data. The content depends on the external system. And is used by the external system when the user is identified. If the data is secret it should be end to end encrypted. Any
sensorId string Id of the sensor (camera or similar) where credential was captured. Any
sessionId string A session id (GUID) used to group images taken of the same user. Any
captureId string GUID for this captured credential, for example face. If many images are taken on the same user, each image shall have a different captureId. Any

Examples of payload (generated)

{
  "user": {
    "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
    "organizationId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
    "name": "James Brown",
    "email": "firstname.lastname@example.com",
    "state": "created",
    "dataSource": "MemberSystem ABC",
    "credentials": [
      {
        "id": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
        "type": "face",
        "mimeType": "image/jpeg",
        "data": "base64-encoded file contents.",
        "createdDate": "2020-07-21T20:35:45Z"
      }
    ],
    "linkedUserData": [
      {
        "systemName": "Themesong Player V1.0",
        "externalId": "c2f041fc-3c74-4757-bc40-f5947ff54ba3",
        "externalData": "base64-encoded file content"
      }
    ]
  },
  "sensorId": "camera-front",
  "sessionId": "e5fa7f5a-0bfc-4477-bb25-ecff210b2b8a",
  "captureId": "2bdb3c9b-2d98-4c9f-aa95-0fd63e199097"
}