Skip to main content

Device Metadata

Markdown

This capability returns the data of the device the user captured from, alongside the results of the other contracted products.

What it does​

Collects the metadata of the device used in the capture session and the risk signals detected on it (details of the data below).

It is not a validation: it never approves or rejects the process, and it never makes the process fail. Use the data in your own risk rules or internal decision engines.

Inputs​

No extra field is needed. The capability uses the capture session the process already has.

  • Web: the capture done in the Unico journey.
  • API with the Unico SDK: the capture done by the Unico SDK in your app.
Metadata depends on the Unico SDK

The Unico SDK is what collects the metadata, during the capture. An API integration may or may not use the Unico SDK:

  • API with the Unico SDK: the metadata is returned as usual.
  • API without the Unico SDK: there is no metadata, and the response is not_found.

The capability is enabled in a flow contracted for your account. Talk to your Unico contact to enable it.

Possible responses​

The result comes in the authenticationInfo.deviceMetadata object of Get Process.

statusMeaning
foundThe device metadata was found. The fields below are filled with what the device collected.
not_foundThere is no device metadata for this capture, for example an API process without the Unico SDK.
unavailableThe metadata could not be fetched at that moment. The process result is not affected.

When status is found:

FieldTypeDescription
deviceIdstringDevice identifier.
platformstringPlatform the capture came from, e.g. WEB, ANDROID, IOS.
ipstringIP address of the device.
ipCountrystringCountry of the IP address.
ipGeoCoordinatesobjectLocation of the IP address (lat, lng).
gpsCoordinatesobjectLocation reported by the device GPS (lat, lng).
osNamestringOperating system name.
osVersionstringOperating system version.
browserNamestringBrowser name. Web only.
userAgentstringBrowser user agent. Web only.
appStorestringApp store your app was installed from. Native SDK only.
detectedSignalsarray of stringsGroups of risk signals detected on the device. Empty when none was detected.

A field that is absent means the device did not collect that data.

detectedSignals lists only the groups detected. A group is detected when at least one of its signals was found:

GroupWhat it means
origin_obfuscatedThe real origin of the access is hidden, for example by Tor or anti-fingerprinting tools.
untrusted_locationThe location may be false, for example by a proxy, a VPN or a GPS spoofer.
environment_alteredThe device environment is altered, for example an emulator or a rooted or jailbroken device.
app_manipulatedThe app was tampered with, hooked or debugged.
assisted_sessionSomeone else may be driving the session, for example by screen sharing or a bot.
payload_untrustedThe data sent by the device was tampered with.

Not every signal exists on every platform, so the same device can show different groups on web and on the native SDK.

Availability​

Integration components required
SDK Web or SDK

Valid combinations​

Device Metadata is not part of the pre-composed flows in Available flows. It can be enabled together with any other Unico product in Web and SDK integrations, in a flow contracted for your account.

Products that use this capability​

It can be added to any Unico product in Web and SDK integrations.