benchling_sdk.services.v2.stable.task_service module¶
- class TaskService¶
Bases:
benchling_sdk.services.v2.base_service.BaseService
Tasks.
Endpoints that perform expensive computations launch long-running tasks. These endpoints return the task ID (a UUID) in the response body.
After launching a task, periodically invoke the Get a task endpoint with the task UUID (e.g., every 10 seconds), until the status is no longer RUNNING.
You can access a task for up to 30 minutes after its completion, after which its data will no longer be available.
Note that as of SDK version 1.19.0, most endpoint methods that create long-running tasks now return a
benchling_sdk.helpers.task_helpers.TaskHelper
, which allows you to get the task result more conveniently as a specific model type.See https://benchling.com/api/reference#/Tasks
- wait_for_task(task_id: str, interval_wait_seconds: int = 1, max_wait_seconds: int = 600) AsyncTask ¶
Wait for a task until completion or timeout.
A blocking method which polls the Benchling API and will return an AsyncTask as soon as its status is not RUNNING (in progress). This does not guarantee that the task was successful, only that Benchling has finished executing it.
If max_wait_seconds is exceeded, will raise
benchling_sdk.errors.WaitForTaskExpiredError
- Parameters
task_id â The ID of the task to poll
interval_wait_seconds â time to wait between API calls in seconds
max_wait_seconds â maximum wait time in seconds before raising WaitForTaskExpiredError
- Returns
The completed AsyncTask. Check status for success or failure
- Return type