# Workflows

## Overview

### Available Operations

* [list](#list) - List Workflows
* [create](#create) - Create Workflow
* [bulk\_enable\_disable](#bulk_enable_disable) - Bulk Enable/Disable Workflows
* [delete](#delete) - Delete Workflow
* [get\_by\_id](#get_by_id) - Get Workflow By ID
* [update](#update) - Update Workflow
* [update\_actions\_order](#update_actions_order) - Update Actions Order
* [delete\_action](#delete_action) - Delete Workflow Action
* [update\_action](#update_action) - Update Workflow Action
* [enable\_disable](#enable_disable) - Enable/Disable Workflow

## list

Get a list of all Workflows

### Example Usage

```python
from squadcast import SquadcastSDK


with SquadcastSDK(
    refresh_token_auth="<YOUR_REFRESH_TOKEN_AUTH_HERE>",
) as squadcast_sdk:

    res = squadcast_sdk.workflows.list(owner_id="<id>")

    while res is not None:
        # Handle items

        res = res.next()

```

### Parameters

| Parameter     | Type                                                                          | Required             | Description                                                         |
| ------------- | ----------------------------------------------------------------------------- | -------------------- | ------------------------------------------------------------------- |
| `owner_id`    | *str*                                                                         | :heavy\_check\_mark: | N/A                                                                 |
| `page_size`   | *Optional\[int]*                                                              | :heavy\_minus\_sign: | N/A                                                                 |
| `page_number` | *Optional\[int]*                                                              | :heavy\_minus\_sign: | N/A                                                                 |
| `search`      | *Optional\[str]*                                                              | :heavy\_minus\_sign: | N/A                                                                 |
| `event`       | List\[*str*]                                                                  | :heavy\_minus\_sign: | N/A                                                                 |
| `actions`     | List\[*str*]                                                                  | :heavy\_minus\_sign: | N/A                                                                 |
| `tags`        | List\[*str*]                                                                  | :heavy\_minus\_sign: | N/A                                                                 |
| `owner`       | List\[*str*]                                                                  | :heavy\_minus\_sign: | N/A                                                                 |
| `created_by`  | List\[*str*]                                                                  | :heavy\_minus\_sign: | N/A                                                                 |
| `updated_by`  | List\[*str*]                                                                  | :heavy\_minus\_sign: | N/A                                                                 |
| `enabled`     | *Optional\[str]*                                                              | :heavy\_minus\_sign: | N/A                                                                 |
| `retries`     | [Optional\[utils.RetryConfig\]](/python-sdk/docs/models/utils/retryconfig.md) | :heavy\_minus\_sign: | Configuration to override the default retry behavior of the client. |

### Response

[**models.WorkflowsListWorkflowsResponse**](/python-sdk/docs/models/workflowslistworkflowsresponse.md)

### Errors

| Error Type                      | Status Code | Content Type     |
| ------------------------------- | ----------- | ---------------- |
| errors.BadRequestError          | 400         | application/json |
| errors.UnauthorizedError        | 401         | application/json |
| errors.PaymentRequiredError     | 402         | application/json |
| errors.ForbiddenError           | 403         | application/json |
| errors.NotFoundError            | 404         | application/json |
| errors.ConflictError            | 409         | application/json |
| errors.UnprocessableEntityError | 422         | application/json |
| errors.InternalServerError      | 500         | application/json |
| errors.BadGatewayError          | 502         | application/json |
| errors.ServiceUnavailableError  | 503         | application/json |
| errors.GatewayTimeoutError      | 504         | application/json |
| errors.SDKDefaultError          | 4XX, 5XX    | \*/\*            |

## create

Create a Workflow

### Example Usage

```python
from squadcast import SquadcastSDK, models


with SquadcastSDK(
    refresh_token_auth="<YOUR_REFRESH_TOKEN_AUTH_HERE>",
) as squadcast_sdk:

    res = squadcast_sdk.workflows.create(title="<value>", owner_id="<id>", trigger="incident_acknowledged", filters=models.V3WorkflowsCreateWorkflowFilter(), actions=[
        {
            "name": "sq_trigger_manual_webhook",
            "data": {
                "id": "<id>",
            },
        },
    ])

    # Handle response
    print(res)

```

### Parameters

| Parameter      | Type                                                                                                                                 | Required             | Description                                                         |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------ | -------------------- | ------------------------------------------------------------------- |
| `title`        | *str*                                                                                                                                | :heavy\_check\_mark: | N/A                                                                 |
| `owner_id`     | *str*                                                                                                                                | :heavy\_check\_mark: | N/A                                                                 |
| `trigger`      | [models.V3WorkflowsWorkflowTrigger](/python-sdk/docs/models/v3workflowsworkflowtrigger.md)                                           | :heavy\_check\_mark: | N/A                                                                 |
| `filters`      | [models.V3WorkflowsCreateWorkflowFilter](/python-sdk/docs/models/v3workflowscreateworkflowfilter.md)                                 | :heavy\_check\_mark: | N/A                                                                 |
| `actions`      | List\[[models.V3WorkflowsActionRequest](/python-sdk/docs/models/v3workflowsactionrequest.md)]                                        | :heavy\_check\_mark: | N/A                                                                 |
| `description`  | *Optional\[str]*                                                                                                                     | :heavy\_minus\_sign: | N/A                                                                 |
| `owner_type`   | [Optional\[models.V3WorkflowsCreateWorkflowRequestOwnerType\]](/python-sdk/docs/models/v3workflowscreateworkflowrequestownertype.md) | :heavy\_minus\_sign: | N/A                                                                 |
| `entity_owner` | [Optional\[models.V3WorkflowsEntityOwner\]](/python-sdk/docs/models/v3workflowsentityowner.md)                                       | :heavy\_minus\_sign: | N/A                                                                 |
| `tags`         | List\[[models.V3WorkflowsTag](/python-sdk/docs/models/v3workflowstag.md)]                                                            | :heavy\_minus\_sign: | N/A                                                                 |
| `enabled`      | *Optional\[bool]*                                                                                                                    | :heavy\_minus\_sign: | N/A                                                                 |
| `retries`      | [Optional\[utils.RetryConfig\]](/python-sdk/docs/models/utils/retryconfig.md)                                                        | :heavy\_minus\_sign: | Configuration to override the default retry behavior of the client. |

### Response

[**models.WorkflowsCreateWorkflowResponse**](/python-sdk/docs/models/workflowscreateworkflowresponse.md)

### Errors

| Error Type                      | Status Code | Content Type     |
| ------------------------------- | ----------- | ---------------- |
| errors.BadRequestError          | 400         | application/json |
| errors.UnauthorizedError        | 401         | application/json |
| errors.PaymentRequiredError     | 402         | application/json |
| errors.ForbiddenError           | 403         | application/json |
| errors.NotFoundError            | 404         | application/json |
| errors.ConflictError            | 409         | application/json |
| errors.UnprocessableEntityError | 422         | application/json |
| errors.InternalServerError      | 500         | application/json |
| errors.BadGatewayError          | 502         | application/json |
| errors.ServiceUnavailableError  | 503         | application/json |
| errors.GatewayTimeoutError      | 504         | application/json |
| errors.SDKDefaultError          | 4XX, 5XX    | \*/\*            |

## bulk\_enable\_disable

Bulk enable or disable workflows

### Example Usage

```python
from squadcast import SquadcastSDK


with SquadcastSDK(
    refresh_token_auth="<YOUR_REFRESH_TOKEN_AUTH_HERE>",
) as squadcast_sdk:

    res = squadcast_sdk.workflows.bulk_enable_disable(owner_id="<id>", enabled=False, workflow_ids=[
        124939,
    ])

    # Handle response
    print(res)

```

### Parameters

| Parameter      | Type                                                                          | Required             | Description                                                         |
| -------------- | ----------------------------------------------------------------------------- | -------------------- | ------------------------------------------------------------------- |
| `owner_id`     | *str*                                                                         | :heavy\_check\_mark: | N/A                                                                 |
| `enabled`      | *bool*                                                                        | :heavy\_check\_mark: | N/A                                                                 |
| `workflow_ids` | List\[*int*]                                                                  | :heavy\_check\_mark: | N/A                                                                 |
| `retries`      | [Optional\[utils.RetryConfig\]](/python-sdk/docs/models/utils/retryconfig.md) | :heavy\_minus\_sign: | Configuration to override the default retry behavior of the client. |

### Response

[**bytes**](https://github.com/solarwinds/squadcast-sdk-python/blob/main/squadcastv1/docs/models/.md/README.md)

### Errors

| Error Type                      | Status Code | Content Type     |
| ------------------------------- | ----------- | ---------------- |
| errors.BadRequestError          | 400         | application/json |
| errors.UnauthorizedError        | 401         | application/json |
| errors.PaymentRequiredError     | 402         | application/json |
| errors.ForbiddenError           | 403         | application/json |
| errors.NotFoundError            | 404         | application/json |
| errors.ConflictError            | 409         | application/json |
| errors.UnprocessableEntityError | 422         | application/json |
| errors.InternalServerError      | 500         | application/json |
| errors.BadGatewayError          | 502         | application/json |
| errors.ServiceUnavailableError  | 503         | application/json |
| errors.GatewayTimeoutError      | 504         | application/json |
| errors.SDKDefaultError          | 4XX, 5XX    | \*/\*            |

## delete

Delete a workflow by ID

### Example Usage

```python
from squadcast import SquadcastSDK


with SquadcastSDK(
    refresh_token_auth="<YOUR_REFRESH_TOKEN_AUTH_HERE>",
) as squadcast_sdk:

    res = squadcast_sdk.workflows.delete(workflow_id="<id>")

    # Handle response
    print(res)

```

### Parameters

| Parameter     | Type                                                                          | Required             | Description                                                         |
| ------------- | ----------------------------------------------------------------------------- | -------------------- | ------------------------------------------------------------------- |
| `workflow_id` | *str*                                                                         | :heavy\_check\_mark: | N/A                                                                 |
| `retries`     | [Optional\[utils.RetryConfig\]](/python-sdk/docs/models/utils/retryconfig.md) | :heavy\_minus\_sign: | Configuration to override the default retry behavior of the client. |

### Response

[**bytes**](https://github.com/solarwinds/squadcast-sdk-python/blob/main/squadcastv1/docs/models/.md/README.md)

### Errors

| Error Type                      | Status Code | Content Type     |
| ------------------------------- | ----------- | ---------------- |
| errors.BadRequestError          | 400         | application/json |
| errors.UnauthorizedError        | 401         | application/json |
| errors.PaymentRequiredError     | 402         | application/json |
| errors.ForbiddenError           | 403         | application/json |
| errors.NotFoundError            | 404         | application/json |
| errors.ConflictError            | 409         | application/json |
| errors.UnprocessableEntityError | 422         | application/json |
| errors.InternalServerError      | 500         | application/json |
| errors.BadGatewayError          | 502         | application/json |
| errors.ServiceUnavailableError  | 503         | application/json |
| errors.GatewayTimeoutError      | 504         | application/json |
| errors.SDKDefaultError          | 4XX, 5XX    | \*/\*            |

## get\_by\_id

Get a workflow by ID

### Example Usage

```python
from squadcast import SquadcastSDK


with SquadcastSDK(
    refresh_token_auth="<YOUR_REFRESH_TOKEN_AUTH_HERE>",
) as squadcast_sdk:

    res = squadcast_sdk.workflows.get_by_id(workflow_id="<id>")

    # Handle response
    print(res)

```

### Parameters

| Parameter     | Type                                                                          | Required             | Description                                                         |
| ------------- | ----------------------------------------------------------------------------- | -------------------- | ------------------------------------------------------------------- |
| `workflow_id` | *str*                                                                         | :heavy\_check\_mark: | N/A                                                                 |
| `retries`     | [Optional\[utils.RetryConfig\]](/python-sdk/docs/models/utils/retryconfig.md) | :heavy\_minus\_sign: | Configuration to override the default retry behavior of the client. |

### Response

[**models.V3WorkflowsGetWorkflowByIDResponse**](/python-sdk/docs/models/v3workflowsgetworkflowbyidresponse.md)

### Errors

| Error Type                      | Status Code | Content Type     |
| ------------------------------- | ----------- | ---------------- |
| errors.BadRequestError          | 400         | application/json |
| errors.UnauthorizedError        | 401         | application/json |
| errors.PaymentRequiredError     | 402         | application/json |
| errors.ForbiddenError           | 403         | application/json |
| errors.NotFoundError            | 404         | application/json |
| errors.ConflictError            | 409         | application/json |
| errors.UnprocessableEntityError | 422         | application/json |
| errors.InternalServerError      | 500         | application/json |
| errors.BadGatewayError          | 502         | application/json |
| errors.ServiceUnavailableError  | 503         | application/json |
| errors.GatewayTimeoutError      | 504         | application/json |
| errors.SDKDefaultError          | 4XX, 5XX    | \*/\*            |

## update

Update a Workflow

### Example Usage

```python
from squadcast import SquadcastSDK


with SquadcastSDK(
    refresh_token_auth="<YOUR_REFRESH_TOKEN_AUTH_HERE>",
) as squadcast_sdk:

    res = squadcast_sdk.workflows.update(workflow_id="<id>")

    # Handle response
    print(res)

```

### Parameters

| Parameter      | Type                                                                                                                                             | Required             | Description                                                         |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------- | ------------------------------------------------------------------- |
| `workflow_id`  | *str*                                                                                                                                            | :heavy\_check\_mark: | N/A                                                                 |
| `title`        | *Optional\[str]*                                                                                                                                 | :heavy\_minus\_sign: | N/A                                                                 |
| `description`  | *Optional\[str]*                                                                                                                                 | :heavy\_minus\_sign: | N/A                                                                 |
| `owner_id`     | *Optional\[str]*                                                                                                                                 | :heavy\_minus\_sign: | N/A                                                                 |
| `owner_type`   | [Optional\[models.V3WorkflowsCreateWorkflowRequestUpdateOwnerType\]](/python-sdk/docs/models/v3workflowscreateworkflowrequestupdateownertype.md) | :heavy\_minus\_sign: | N/A                                                                 |
| `entity_owner` | [Optional\[models.V3WorkflowsEntityOwnerUpdate\]](/python-sdk/docs/models/v3workflowsentityownerupdate.md)                                       | :heavy\_minus\_sign: | N/A                                                                 |
| `tags`         | List\[[models.V3WorkflowsTag](/python-sdk/docs/models/v3workflowstag.md)]                                                                        | :heavy\_minus\_sign: | N/A                                                                 |
| `trigger`      | [Optional\[models.V3WorkflowsWorkflowTrigger\]](/python-sdk/docs/models/v3workflowsworkflowtrigger.md)                                           | :heavy\_minus\_sign: | N/A                                                                 |
| `filters`      | [Optional\[models.V3WorkflowsCreateWorkflowFilter\]](/python-sdk/docs/models/v3workflowscreateworkflowfilter.md)                                 | :heavy\_minus\_sign: | N/A                                                                 |
| `actions`      | List\[[models.V3WorkflowsActionRequest](/python-sdk/docs/models/v3workflowsactionrequest.md)]                                                    | :heavy\_minus\_sign: | N/A                                                                 |
| `enabled`      | *Optional\[bool]*                                                                                                                                | :heavy\_minus\_sign: | N/A                                                                 |
| `retries`      | [Optional\[utils.RetryConfig\]](/python-sdk/docs/models/utils/retryconfig.md)                                                                    | :heavy\_minus\_sign: | Configuration to override the default retry behavior of the client. |

### Response

[**models.WorkflowsUpdateWorkflowResponse**](/python-sdk/docs/models/workflowsupdateworkflowresponse.md)

### Errors

| Error Type                      | Status Code | Content Type     |
| ------------------------------- | ----------- | ---------------- |
| errors.BadRequestError          | 400         | application/json |
| errors.UnauthorizedError        | 401         | application/json |
| errors.PaymentRequiredError     | 402         | application/json |
| errors.ForbiddenError           | 403         | application/json |
| errors.NotFoundError            | 404         | application/json |
| errors.ConflictError            | 409         | application/json |
| errors.UnprocessableEntityError | 422         | application/json |
| errors.InternalServerError      | 500         | application/json |
| errors.BadGatewayError          | 502         | application/json |
| errors.ServiceUnavailableError  | 503         | application/json |
| errors.GatewayTimeoutError      | 504         | application/json |
| errors.SDKDefaultError          | 4XX, 5XX    | \*/\*            |

## update\_actions\_order

Update action order in a workflow

### Example Usage

```python
from squadcast import SquadcastSDK


with SquadcastSDK(
    refresh_token_auth="<YOUR_REFRESH_TOKEN_AUTH_HERE>",
) as squadcast_sdk:

    res = squadcast_sdk.workflows.update_actions_order(workflow_id="<id>")

    # Handle response
    print(res)

```

### Parameters

| Parameter      | Type                                                                          | Required             | Description                                                         |
| -------------- | ----------------------------------------------------------------------------- | -------------------- | ------------------------------------------------------------------- |
| `workflow_id`  | *str*                                                                         | :heavy\_check\_mark: | N/A                                                                 |
| `action_order` | List\[*int*]                                                                  | :heavy\_minus\_sign: | N/A                                                                 |
| `retries`      | [Optional\[utils.RetryConfig\]](/python-sdk/docs/models/utils/retryconfig.md) | :heavy\_minus\_sign: | Configuration to override the default retry behavior of the client. |

### Response

[**models.V3WorkflowsUpdateActionsOrderResponse**](/python-sdk/docs/models/v3workflowsupdateactionsorderresponse.md)

### Errors

| Error Type                      | Status Code | Content Type     |
| ------------------------------- | ----------- | ---------------- |
| errors.BadRequestError          | 400         | application/json |
| errors.UnauthorizedError        | 401         | application/json |
| errors.PaymentRequiredError     | 402         | application/json |
| errors.ForbiddenError           | 403         | application/json |
| errors.NotFoundError            | 404         | application/json |
| errors.ConflictError            | 409         | application/json |
| errors.UnprocessableEntityError | 422         | application/json |
| errors.InternalServerError      | 500         | application/json |
| errors.BadGatewayError          | 502         | application/json |
| errors.ServiceUnavailableError  | 503         | application/json |
| errors.GatewayTimeoutError      | 504         | application/json |
| errors.SDKDefaultError          | 4XX, 5XX    | \*/\*            |

## delete\_action

Delete an action by action ID

### Example Usage

```python
from squadcast import SquadcastSDK


with SquadcastSDK(
    refresh_token_auth="<YOUR_REFRESH_TOKEN_AUTH_HERE>",
) as squadcast_sdk:

    res = squadcast_sdk.workflows.delete_action(workflow_id="<id>", action_id="<id>")

    # Handle response
    print(res)

```

### Parameters

| Parameter     | Type                                                                          | Required             | Description                                                         |
| ------------- | ----------------------------------------------------------------------------- | -------------------- | ------------------------------------------------------------------- |
| `workflow_id` | *str*                                                                         | :heavy\_check\_mark: | N/A                                                                 |
| `action_id`   | *str*                                                                         | :heavy\_check\_mark: | N/A                                                                 |
| `retries`     | [Optional\[utils.RetryConfig\]](/python-sdk/docs/models/utils/retryconfig.md) | :heavy\_minus\_sign: | Configuration to override the default retry behavior of the client. |

### Response

[**bytes**](https://github.com/solarwinds/squadcast-sdk-python/blob/main/squadcastv1/docs/models/.md/README.md)

### Errors

| Error Type                      | Status Code | Content Type     |
| ------------------------------- | ----------- | ---------------- |
| errors.BadRequestError          | 400         | application/json |
| errors.UnauthorizedError        | 401         | application/json |
| errors.PaymentRequiredError     | 402         | application/json |
| errors.ForbiddenError           | 403         | application/json |
| errors.NotFoundError            | 404         | application/json |
| errors.ConflictError            | 409         | application/json |
| errors.UnprocessableEntityError | 422         | application/json |
| errors.InternalServerError      | 500         | application/json |
| errors.BadGatewayError          | 502         | application/json |
| errors.ServiceUnavailableError  | 503         | application/json |
| errors.GatewayTimeoutError      | 504         | application/json |
| errors.SDKDefaultError          | 4XX, 5XX    | \*/\*            |

## update\_action

Update an action by action ID

### Example Usage

```python
from squadcast import SquadcastSDK


with SquadcastSDK(
    refresh_token_auth="<YOUR_REFRESH_TOKEN_AUTH_HERE>",
) as squadcast_sdk:

    res = squadcast_sdk.workflows.update_action(workflow_id="<id>", action_id="<id>", v3_workflows_action_request_update={
        "name": "slack_message_channel",
    })

    # Handle response
    print(res)

```

### Parameters

| Parameter                            | Type                                                                                               | Required             | Description                                                         |
| ------------------------------------ | -------------------------------------------------------------------------------------------------- | -------------------- | ------------------------------------------------------------------- |
| `workflow_id`                        | *str*                                                                                              | :heavy\_check\_mark: | N/A                                                                 |
| `action_id`                          | *str*                                                                                              | :heavy\_check\_mark: | N/A                                                                 |
| `v3_workflows_action_request_update` | [models.V3WorkflowsActionRequestUpdate](/python-sdk/docs/models/v3workflowsactionrequestupdate.md) | :heavy\_check\_mark: | N/A                                                                 |
| `retries`                            | [Optional\[utils.RetryConfig\]](/python-sdk/docs/models/utils/retryconfig.md)                      | :heavy\_minus\_sign: | Configuration to override the default retry behavior of the client. |

### Response

[**models.WorkflowsUpdateWorkflowActionResponse**](/python-sdk/docs/models/workflowsupdateworkflowactionresponse.md)

### Errors

| Error Type                      | Status Code | Content Type     |
| ------------------------------- | ----------- | ---------------- |
| errors.BadRequestError          | 400         | application/json |
| errors.UnauthorizedError        | 401         | application/json |
| errors.PaymentRequiredError     | 402         | application/json |
| errors.ForbiddenError           | 403         | application/json |
| errors.NotFoundError            | 404         | application/json |
| errors.ConflictError            | 409         | application/json |
| errors.UnprocessableEntityError | 422         | application/json |
| errors.InternalServerError      | 500         | application/json |
| errors.BadGatewayError          | 502         | application/json |
| errors.ServiceUnavailableError  | 503         | application/json |
| errors.GatewayTimeoutError      | 504         | application/json |
| errors.SDKDefaultError          | 4XX, 5XX    | \*/\*            |

## enable\_disable

Enable or disable workflow by ID

### Example Usage

```python
from squadcast import SquadcastSDK


with SquadcastSDK(
    refresh_token_auth="<YOUR_REFRESH_TOKEN_AUTH_HERE>",
) as squadcast_sdk:

    res = squadcast_sdk.workflows.enable_disable(workflow_id="<id>")

    # Handle response
    print(res)

```

### Parameters

| Parameter     | Type                                                                          | Required             | Description                                                         |
| ------------- | ----------------------------------------------------------------------------- | -------------------- | ------------------------------------------------------------------- |
| `workflow_id` | *str*                                                                         | :heavy\_check\_mark: | N/A                                                                 |
| `enabled`     | *Optional\[bool]*                                                             | :heavy\_minus\_sign: | N/A                                                                 |
| `retries`     | [Optional\[utils.RetryConfig\]](/python-sdk/docs/models/utils/retryconfig.md) | :heavy\_minus\_sign: | Configuration to override the default retry behavior of the client. |

### Response

[**bytes**](https://github.com/solarwinds/squadcast-sdk-python/blob/main/squadcastv1/docs/models/.md/README.md)

### Errors

| Error Type                      | Status Code | Content Type     |
| ------------------------------- | ----------- | ---------------- |
| errors.BadRequestError          | 400         | application/json |
| errors.UnauthorizedError        | 401         | application/json |
| errors.PaymentRequiredError     | 402         | application/json |
| errors.ForbiddenError           | 403         | application/json |
| errors.NotFoundError            | 404         | application/json |
| errors.ConflictError            | 409         | application/json |
| errors.UnprocessableEntityError | 422         | application/json |
| errors.InternalServerError      | 500         | application/json |
| errors.BadGatewayError          | 502         | application/json |
| errors.ServiceUnavailableError  | 503         | application/json |
| errors.GatewayTimeoutError      | 504         | application/json |
| errors.SDKDefaultError          | 4XX, 5XX    | \*/\*            |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.incidents.cloud.solarwinds.com/python-sdk/docs/sdks/workflowssdk.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
