Skip to main content

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 or RUNNING as the state. 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 as sync.

  • To run the check asynchronously, send the mode as async.

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.

Additional information