Face Authentication

Explains how to integrate a face authentication

To perform a face authentication it is required to have already an "Identification" and its verification ID. The process consist in a liveness check of the user and a final check to verify the match with the identification.

Implementation

  • Make your class conform to AuthenteqFaceAuthenticationDelegate protocol

  • Use your client keys to create a UIViewController from Authenteq SDK

  • Present returned UIViewController modally

  • Handle result in your delegate implementation

Example to Start a Face Authentication

Please update the below code with your Client ID and Client Secret from your Customer Dashboard.

We suggest to use the token authentication in production environment.

We suggest to app the following code to the relevant Storyboard or ViewController.

import AuthenteqFlow

class ExampleViewController: UIViewController {

  func faceAuthentication() {
    let faceAuthenticationParams = FaceAuthenticationParams(
      clientId: "< YOUR CLIENT ID >",
      clientSecret: "< YOUR CLIENT SECRET >",
      verificationId: verificationId
    )
    let viewController = AuthenteqFlow.instance.faceAuthenticationViewController(
      with: faceAuthenticationParams, 
      delegate: self
    )
    viewController.modalPresentationStyle = .fullScreen
    present(viewController, animated: true)
  }
}  
  
extension ExampleViewController: AuthenteqFaceAuthenticationDelegate {

  func authenteqDidFinishFaceAuthentication(with code: String) {
    presentedViewController?.dismiss(animated: true)
    // Check face authentication result with the CODE provided
  }

  func authenteqDidFailFaceAuthentication(with error: AuthenteqFlowError) {
    // Handle error
    presentedViewController?.dismiss(animated: true)
  }
}

Authentication Token can be obtained with face authentication API and then specified with the FaceAuthenticationParams as the following code:

let faceAuthenticationParams = FaceAuthenticationParams(
      clientId: "< YOUR CLIENT ID >",
      token: "< TOKEN >",
      verificationId: verificationId
)
let viewController = AuthenteqFlow.instance.faceAuthenticationViewController(
      with: faceAuthenticationParams, 
      delegate: self
)
present(viewController, animated: true)

Authentication token can only be used for a single operation. Always generate a new token before start a new face authentication.

Get Face Authentication Result

With the code obtained from authenteqDidFinishFaceAuthentication it is possible to get the face authentication result using the following API:

Obtain the result of a face authentication

GET https://api.app.authenteq.com/mobile-sdk/face-authentication-result

This endpoint is authorized with Basic Authorization. You should use your Client ID and Client Secret from the Customer Dashboard as the credentials.

Query Parameters

NameTypeDescription

code*

string

The code provided at the conclusion of SDK face authentication

Headers

NameTypeDescription

Authorization*

string

Your client credentials combined with a colon separator, base64-encoded and prefixed with "Basic ".

{
  "accessToken": "81e4cbce-cdad-11eb-8fc3-784f4385af2b"
}

When successful the response will contain a single boolean property named success:

{
    "success": true
}

Last updated