Reverify User
Use the reverify API to automatically verify the facial attributes of a user on subsequent verifications.
Re-verify User Identity
This endpoint is designed for "step-up" authentication or low-friction re-verification. It allows you to dynamically switch a user from their initial, comprehensive verification process to a simpler one for subsequent checks.
The primary use case is to switch a user from an initial, high-assurance Verification Template (e.g., ID Document + Selfie Scan
) to a subsequent, low-friction template (e.g., Selfie Scan Only
).
This is ideal for scenarios where you need to re-confirm a user's identity without making them repeat the entire onboarding process.
Common Use Cases
Periodic Identity Check: A user registered a month ago with their ID and a selfie. To access a high-value area of your service, you require them to quickly re-verify their identity with just a new selfie.
Password Reset: Before allowing a password reset, you can require the user to pass a quick selfie check to ensure the legitimate owner is making the request.
Note: This API is specifically for switching between verification templates, most commonly for facial re-verification. For other authentication methods like Passkeys or OTP, you should use the standard Update User endpoint to assign a different template.
Reverify Endpoint
This endpoint assigns a new, temporary verification template to a user. All requests should be made to your account's specific sub-domain.
POST
https://{sub-domain}.trustswiftly.com/api/user/document/reverify
Request Body
user_id
string
Yes
The Trust Swiftly User ID (e.g., 647
). Note: This is the internal id
returned by the Trust Swiftly API when you created the user, not your own reference_id
.
current_workflow_id
string
Yes
The ID of the Verification Template (workflow) that the user originally verified with. See below for how to find this ID.
re_verify_workflow_id
string
Yes
The ID of the new, simpler Verification Template you want to assign for this specific re-verification check.
How to Find Workflow IDs
Your "Verification Templates" are referred to as workflows in this API call. You can find the necessary workflow_id
values in your Trust Swiftly dashboard.
Navigate to Settings > Documents > User Verify WorkFlow.
You will see a list of all your configured wrokflows. The ID (e.g.,
flow_MzA
) for each is displayed next to its name.

Example Request
In this example, we are switching user 647
from an "ID Document & Selfie" template (flow_MzA
) to a new "Selfie Only" template (flow_Mjk
).
curl --request POST \
--url https://{sub-domain}.trustswiftly.com/api/user/document/reverify \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"user_id": "647",
"current_workflow_id": "flow_MzA",
"re_verify_workflow_id": "flow_Mjk"
}'
Responses
Success (200 OK)
A successful request will return a 200 OK
status code. The user has now been assigned the new template. The next time they access their magic_link
, they will be prompted with the re-verification flow.
{
"success": true
}
Error Responses
Your application should be prepared to handle the following errors.
User Already Assigned to Target Workflow
This error occurs if the user is already assigned to the template specified in
re_verify_workflow_id
. This can happen if you make the same API call twice. The first call succeeds, and the second fails with this error.
{ "Error_type": "already_assigned", "error_message": "Already assigned" }
User Not Found (
404 Not Found
)Returned if the
user_id
does not exist.
{ "message": "User not found." }
Invalid Data (
422 Unprocessable Entity
)Returned if the
current_workflow_id
does not match the user's current template.
{ "message": "The given data was invalid.", "errors": { "current_workflow_id": ["The selected current workflow id is invalid or does not match the user's workflow."] } }
Last updated