API

OneTimeToken

A strong customer authentication check: a device fingerprint, PIN or facemap.

Operations

Every route this entity exposes. Each route links to its own reference on this page.

Method Route SDK operation Returns
POST /profiles/{profileId}/device-fingerprints/verify create The device fingerprint has been successfully verified
POST /profiles/{profileId}/pin/verify create The PIN has been successfully verified
POST /profiles/{profileId}/facemaps/verify create The facemap has been successfully verified

Examples

One example per SDK, generated from the API model. The argument names are the parameters and fields of this entity, and the values are placeholders. The examples are not compiled or executed.

Golang

Construct client as shown in the Golang setup, then call the operations:

created, err := client.OneTimeToken(nil).Create(map[string]any{"profile_id": 1}, nil)
if err != nil {
    panic(err)
}
fmt.Println(created)

Lua

Construct client as shown in the Lua setup, then call the operations:

local created, err = client:OneTimeToken():create({ profile_id = 1 })

PHP

Construct client as shown in the PHP setup, then call the operations:

$created = $client->OneTimeToken()->create(["profile_id" => 1]);

Python

Construct client as shown in the Python setup, then call the operations:

created = client.OneTimeToken().create({ "profile_id": 1 })

Ruby

Construct client as shown in the Ruby setup, then call the operations:

created = client.OneTimeToken.create({ "profile_id" => 1 })

TypeScript

Construct client as shown in the TypeScript setup, then call the operations:

const created = await client.OneTimeToken().create({ profile_id: 1 })

Fields

Field Type Required Description
challenges array No An array of challenges.
faceMap string No A base64 encoded string.
oneTimeToken string No A one-time token unique identifier.
validity integer No The One-Time Token expiration in seconds.

create

POST /profiles/{profileId}/device-fingerprints/verify

Operation ID: scaDeviceFingerprintVerify.

Authentication: bearer token (UserToken).

Parameters

Parameter In Type Required Description
profileId path integer (int64) Yes The profile ID.
One-Time-Token header string (uuid) Yes A one-time token unique identifier.
Accept-Encoding header string Yes
Content-Encoding header string Yes
X-tw-jose-method header string Yes
X-External-Correlation-Id header string (uuid) No Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.

Request body

application/jose+json

The request body is string.

Example request body:

"<JWE encrypted string>"

Responses

200: The device fingerprint has been successfully verified

application/json

Property Type Required Description
challenges array of object No An array of challenges.
challenges[].passed boolean No The status of a challenge.
challenges[].primaryChallenge object No
challenges[].primaryChallenge.type string No A type of challenge.
oneTimeToken string (uuid) No A one-time token unique identifier.
validity integer No The One-Time Token expiration in seconds.
400: The device fingerprint verification failed
404: The device fingerprint was not found
429: Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header

application/json

The response is object.

POST /profiles/{profileId}/pin/verify

Operation ID: scaPinVerify.

Authentication: bearer token (UserToken).

Parameters

Parameter In Type Required Description
profileId path integer (int64) Yes The profile ID.
One-Time-Token header string (uuid) Yes A one-time token unique identifier.
Accept-Encoding header string Yes
Content-Encoding header string Yes
X-tw-jose-method header string Yes
X-External-Correlation-Id header string (uuid) No Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.

Request body

application/jose+json

The request body is string.

Example request body:

"<JWE encrypted string>"

Responses

200: The PIN has been successfully verified

application/json

Property Type Required Description
challenges array of object No An array of challenges.
challenges[].passed boolean No The status of a challenge.
challenges[].primaryChallenge object No
challenges[].primaryChallenge.type string No A type of challenge.
oneTimeToken string (uuid) No A one-time token unique identifier.
validity integer No The One-Time Token expiration in seconds.
400: The PIN verification failed or PIN was blocked
404: The PIN was not found or has not been set up
429: Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header

application/json

The response is object.

POST /profiles/{profileId}/facemaps/verify

Operation ID: scaFacemapVerify.

Authentication: bearer token (UserToken).

Parameters

Parameter In Type Required Description
profileId path integer (int64) Yes The profile ID.
One-Time-Token header string (uuid) Yes A one-time token unique identifier.
X-External-Correlation-Id header string (uuid) No Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.

Request body

application/json

Property Type Required Description
faceMap string No A base64 encoded string.

Example request body:

{
  "faceMap": "<base64 encoded string>"
}

Responses

200: The facemap has been successfully verified

application/json

Property Type Required Description
challenges array of object No An array of challenges.
challenges[].passed boolean No The status of a challenge.
challenges[].primaryChallenge object No
challenges[].primaryChallenge.type string No A type of challenge.
oneTimeToken string (uuid) No A one-time token unique identifier.
validity integer No The One-Time Token expiration in seconds.
400: The facemap verification failed
429: Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header

application/json

The response is object.