Create a session

AI Tools

There are three steps to follow to integrate the In Branch API:

  1. Create the session

  2. Send instructions

  3. Generate results

Every time an end user elects to supply an ID document on the relying party app / website / custom product, you will need to create a session with Yoti to the initiate the session and perform ID checks.

POST https://api.yoti.com/idverify/v1/sessions
Good to know
It's worth reading our Identity Verification documentation to understand how we complete the Yoti document review process
{ "client_session_token_ttl": 604800 , "resources_ttl": 8700000, "user_tracking_id": "some-tracking-id", "block_biometric_consent": false, "ibv_options": { "required": true, "support": "MANDATORY", "guidance_url": "https://yourDomain" }, "notifications": { "endpoint": "https://yourDomain", "topics": [ "RESOURCE_UPDATE", "TASK_COMPLETION", "CHECK_COMPLETION", "SESSION_COMPLETION", "NEW_PDF_SUPPLIED", "INSTRUCTIONS_EMAIL_REQUESTED" ], "auth_token": "xxx", "auth_type": "BASIC" }, "requested_checks": [ { "type": "ID_DOCUMENT_AUTHENTICITY", "config": { "manual_check": "FALLBACK" } }, { "type": "ID_DOCUMENT_FACE_MATCH", "config": { "manual_check": "FALLBACK" } }, { "type": "ID_DOCUMENT_COMPARISON", "config": {} }, { "type": "THIRD_PARTY_IDENTITY", "config": { "manual_check": "NEVER" } }, { "type": "WATCHLIST_SCREENING", "config": { "manual_check": "NEVER", "categories": [ "ADVERSE-MEDIA" ] } }, { "type": "WATCHLIST_ADVANCED_CA", "config": { "type": "WITH_YOTI_ACCOUNT", "manual_check": "NEVER", "remove_deceased": true, "share_url": true, "sources": { "type": "TYPE_LIST", "types": [ "someCaTypeListName", "someOtherCaTypeListName" ] }, "matching_strategy": { "type": "EXACT" } } } ], "requested_tasks": [ { "type": "ID_DOCUMENT_TEXT_DATA_EXTRACTION", "config": { "manual_check": "FALLBACK", "chip_data": "DESIRED" } }, { "type": "SUPPLEMENTARY_DOCUMENT_TEXT_DATA_EXTRACTION", "config": { "manual_check": "FALLBACK" } } ], "required_documents": [ { "type": "ID_DOCUMENT", "filter": { "type": "ORTHOGONAL_RESTRICTIONS", "country_restriction": { "inclusion": "WHITELIST", "country_codes": [ "GBR" ] }, "type_restriction": { "inclusion": "WHITELIST", "document_types": [ "PASSPORT" ] } } }, { "type": "SUPPLEMENTARY_DOCUMENT", "country_codes": [ "GBR" ], "document_types": [ "BANK_STATEMENT" ], "objective": { "type": "PROOF_OF_ADDRESS", "config": {} } } ], "sdk_config": { "allowed_capture_methods": "CAMERA_AND_UPLOAD", "primary_colour": "#2d9fff", "secondary_colour": "#FFFFFF", "font_colour": "#FFFFFF", "locale": "en-US", "preset_issuing_country": "USA", "success_url": "https://www.yourDomain/success", "error_url": "https://www.yourDomain/error", "privacy_policy_url": "https://www.yourDomain", "attempts_configuration": { "ID_DOCUMENT_TEXT_DATA_EXTRACTION": { "GENERIC": 3, "RECLASSIFICATION": 2 } } } }

IBV options property

Parmeter

Description

Mandatory

support

Each resource will be mapped to a list of allowed sources in the results

  • MANDATORY - Only a physical android device may create/upload Resources that satisfy this requirement IBV sources.

  • NOT_ALLOWED - The Resource may still be created either by a physical android device or by the end user at home.

Hint There are cost implications if you choose NOT_ALLOWED. Please contact your account manager for more details.

Notifications

For information on notifications please head over here. We have included two additional notifications

Parmeter

Description

NEW_PDF_SUPPLIED

When the user completes the prerequisite flow, they will have an option to download the PDF. You can subscribe to be notified when the user has done this.

INSTRUCTIONS_EMAIL_REQUESTED

If you do not enable this notification an email will automatically be sent to the user with their instructions. If you do enable this notification the email service will be revoked and you will need to configure this set up yourself. Yoti will send an async notification to prompt you to retrieve the PDF from Yoti and send it to the customer.


Example response

If the request is successful and a session is generated the API will send a response in the form:

{ "client_session_token_ttl": 599, "client_session_token": "<uuid>", "session_id": "<uuid>" }

Response

Description

client_session_token_ttl

Time in seconds until the client session expires

client_session_token

Used to authenticate the session

session_id

ID of the session


  Last updated by Jason Martyres