Wait for token
Wait until a token is completed.
Waitpoint tokens pause task runs until you complete the token. They’re commonly used for approval workflows and other scenarios where you need to wait for external confirmation, such as human-in-the-loop processes.
This feature is only available in the v4 beta. To upgrade to v4, see the upgrade to v4 docs.
Usage
To get started using wait tokens, you need to first create a token using the wait.createToken
function:
Once you have a token, you can wait for it to be completed using the wait.forToken
function:
To complete a token, you can use the wait.completeToken
function:
wait.createToken
Create a waitpoint token.
options
The createToken
function accepts an object with the following properties:
The maximum amount of time to wait for the token to be completed. Defaults to “10m”.
An idempotency key for the token. If provided, the token will be completed with the same payload if the same idempotency key is used again.
The time to live for the idempotency key. Defaults to “1h”.
Tags to attach to the token. Tags can be used to filter waitpoints in the dashboard.
returns
The createToken
function returns a token object with the following properties:
The ID of the token. Starts with waitpoint_
.
Whether the token is cached. Will return true if the token was created with an idempotency key and the same idempotency key was used again.
A Public Access Token that can be used to complete the token from a client-side application (or another backend). See our frontend docs for more details.
Example
wait.completeToken
Complete a waitpoint token.
parameters
The ID of the token to complete.
The data to complete the token with.
returns
The completeToken
function returns an object with the following properties:
Whether the token was completed successfully.
Example
From another language
You can complete a token using a raw HTTP request or from another language.
wait.forToken
Wait for a token to be completed.
parameters
The token to wait for.
Options for the wait.
returns
The forToken
function returns a result object with the following properties:
Whether the token was completed successfully.
If ok
is true
, this will be the output of the token.
If ok
is false
, this will be the error that occurred. The only error that can occur is a
timeout error.
Example
wait.listTokens
List all tokens for an environment.
parameters
The listTokens
function accepts an object with the following properties:
Statuses to filter by. Can be one or more of: WAITING
, COMPLETED
, TIMED_OUT
.
The idempotency key to filter by.
Tags to filter by.
The period to filter by. Can be one of: 1h
, 1d
, 7d
, 30d
.
The start date to filter by.
The end date to filter by.
returns
The listTokens
function returns a list of tokens that can be iterated over using a for-await-of loop.
Each token is an object with the following properties:
The ID of the token.
The status of the token.
The date and time the token was completed.
The date and time the token will timeout.
The idempotency key of the token.
The date and time the idempotency key will expire.
The tags of the token.
The date and time the token was created.
The output of the token is not included in the list. To get the output, you need to retrieve the
token using the wait.retrieveToken
function.
Example
wait.retrieveToken
Retrieve a token by ID.
parameters
The ID of the token to retrieve.
returns
The retrieveToken
function returns a token object with the following properties:
The ID of the token.
The status of the token.
The date and time the token was completed.
The date and time the token will timeout.
The idempotency key of the token.
The date and time the idempotency key will expire.
The tags of the token.
The date and time the token was created.
The output of the token.
The error that occurred.