Synchronous and asynchronous checks
Checks have two modes:
Synchronous: When the check is run, the results are returned from the data provider immediately. You can see the result in the response from the call to run the check.
Asynchronous: The results are not returned from the data provider immediately. The response from the call to run the check will return
PENDING
orRUNNING
as thestate
. Listen to the check completed webhook to find out when the result has been returned, and make a call to get the results of a specific check.
This only applies to checks you're running via the API. It does not apply to checks run by the smart policy.
How the check mode is set to synchronous or asynchronous
To specify whether the check should run synchronously or asynchronously, send the mode
query parameter when you make the request to run the check.
To run the check synchronously, send the
mode
assync
.To run the check asynchronously, send the
mode
asasync
.
If you do not send the mode
parameter, Identity checks will run synchronously and all other checks will run asynchronously.
If you run a check synchronously but a response is not received from the data provider within 120 seconds, the mode will switch to asynchronous automatically. This means you should support asynchronous checks, even if you intend to run checks synchronously.
Not all data providers guarantee a check response within 120 seconds. For example, idvcheck assigns specialists to verify documents manually, which takes longer. To learn more about guaranteed response times, speak to your data provider. To learn more about running a check, see Run a check in the developer resources.