Youverify Liveness iOS SDK
Our iOS SDK enables seamless integration of real-time liveness detection into your mobile applications. To get started with our SDK, follow the guide below:
Installation
To install, run one of the following commands:
Usage
Import the package into your web page like so:
Initialize an instance of the package, like so:
For a list of the valid options, check this out
Start the process, like so:
This could also be called with an array of tasks. The supplied tasks override those provided during initialization.
Add the SDKView to your page, and the controls for the modal as so:
Full Example:
Options
sandboxEnvironment
Boolean
No
Sets whether session should run in sandbox or live mode
true
true, false
user
Class
Yes
Sets details of user for which liveness check is being performed
-
Any string
user.firstName
String
Yes
First name of user
-
Any string
user.lastName
String
No
Last name of user
nil
Any string
user.email
String
No
Email of user
nil
Any string
onClose
Function
No
Callback function that gets triggered when modal is closed
nil
Any valid function
onSuccess
Function
No
Callback function that gets triggered when all tasks have been completed and passed. Called with completion data
nil
Any valid function
onFailure
Function
No
Callback function that gets triggered when at least one task fails. Called with completion data
nil
Any valid function
Tasks
A task is a series of instructions for users to follow to confirm liveness. Find below a list of tasks.
PS: We aim to frequently add to this list a variety of fun and yet intuitive ways of confirming liveness, so be on the lookout for more tasks!
They are:
Complete The Circle
User passes task by completing imaginary circle with head movement.
CompleteTheCircleTask option
difficulty
TaskDifficulty
No
Sets difficulty of task
.medium
.easy
, .medium
, .hard
timeout
Number
No
Sets time in milliseconds after which task automatically fails
nil
Any number in milliseconds
Yes Or No
User passes task by answering a list of arbitrary questions set by you with the tilting of the head; right for a yes
and left for a no
.
YesOrNoTask option
difficulty
TaskDifficulty
No
Sets difficulty of task
.medium
.easy
, .medium
, .hard
timeout
Number
No
Sets time in milliseconds after which task automatically fails
nil
Any number in milliseconds
questions
Array
No
A set of questions to ask user
nil
See nested options below
questions.question
String
Yes
Question to ask user. Should be a true
or false
type question. Eg: "Are you ready"
-
Any string
questions.answer
Bool
Yes
Answer to the question
-
true
, false
questions.errorMessage
String
No
Error message to display if user gets question wrong
undefined
Any string
Motions
User passes task by performing random motions in random sequences, which include nodding
, blinking
and opening of mouth
.
MotionsTaskClass option
difficulty
TaskDifficulty
No
Sets difficulty of task
.medium
.easy
, .medium
, .hard
timeout
TimeInterval
No
Sets time in milliseconds after which task automatically fails
nil
Any number in milliseconds
maxNods
Int
No
Maximum amount of nods a user is asked to perform
5
Any number
maxBlinks
Int
No
Maximum amount of nods a user is asked to perform
5
Any number
TaskProperties
User passes in the class and preferred settings for each task.
task
YVTask
Yes
Id of task
-
YVTask.completeTheCircle(Task_class eg. CompleteTheCircleTask)
timeout
TimeInterval
No
Sets time in milliseconds after which task automatically fails
nil
Any number in milliseconds
Liveness Data
The onSuccess
and onFailure
callbacks (if supplied) are passed the following data:
data
Object
Data passed through callback
data.faceImage
String
Face Image of user performing liveness check
data.livenessClip
String
Video of user performing liveness check
data.passed
Bool
Indicator on whether liveness check passed or failed
data.metadata
Any
Metadata passed in during initialization
Credits
This SDK is developed and maintained solely by Youverify
Last updated
Was this helpful?