Skip to content

get_bots

get_bots(
    *,
    config_overrides: Optional[LexModelBuildingServiceClientConfig] = None,
    next_token: Optional[NextToken] = None,
    max_results: Optional[MaxResults] = None,
    name_contains: Optional[BotName] = None,
) -> GetBotsResponse

Returns bot information as follows:

  • If you provide the nameContains field, the response includes information for the $LATEST version of all bots whose name contains the specified string.

  • If you don't specify the nameContains field, the operation returns information about the $LATEST version of all of your bots.

This operation requires permission for the lex:GetBots action.

Parameters:

  • next_token (Optional[NextToken], default: None ) –

    A pagination token that fetches the next page of bots. If the response to this call is truncated, Amazon Lex returns a pagination token in the response. To fetch the next page of bots, specify the pagination token in the next request.

  • max_results (Optional[MaxResults], default: None ) –

    The maximum number of bots to return in the response that the request will return. The default is 10.

  • name_contains (Optional[BotName], default: None ) –

    Substring to match in bot names. A bot will be returned if any part of its name matches the substring. For example, "xyz" matches both "xyzabc" and "abcxyz."

Raises:

  • BadRequestException –

    The request is not well formed. For example, a value is invalid or a required field is missing. Check the field values, and try again.

  • InternalFailureException –

    An internal Amazon Lex error occurred. Try your request again.

  • LimitExceededException –

    The request exceeded a limit. Try your request again.

  • NotFoundException –

    The resource specified in the request was not found. Check the resource and try again.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Examples:

To get a list of bots This example shows how to get a list of all of the bots in your account.

>>> client.get_bots(next_token='', max_results=5)
Source code in docs_src/capo_lex_model_building_service/_services/lex_model_building_service.py
def get_bots(
    self,
    *,
    config_overrides: Optional[LexModelBuildingServiceClientConfig] = None,
    next_token: Optional[
        "capo_lex_model_building_service.types.next_token.NextToken"
    ] = None,
    max_results: Optional[
        "capo_lex_model_building_service.types.max_results.MaxResults"
    ] = None,
    name_contains: Optional[
        "capo_lex_model_building_service.types.bot_name.BotName"
    ] = None,
) -> "capo_lex_model_building_service.types.get_bots_response.GetBotsResponse":
    """<p>Returns bot information as follows: </p> <ul> <li> <p>If you provide the <code>nameContains</code> field, the response includes information for the <code>$LATEST</code> version of all bots whose name contains the specified string.</p> </li> <li> <p>If you don't specify the <code>nameContains</code> field, the operation returns information about the <code>$LATEST</code> version of all of your bots.</p> </li> </ul> <p>This operation requires permission for the <code>lex:GetBots</code> action.</p>

    Args:
        next_token: <p>A pagination token that fetches the next page of bots. If the response to this call is truncated, Amazon Lex returns a pagination token in the response. To fetch the next page of bots, specify the pagination token in the next request. </p>
        max_results: <p>The maximum number of bots to return in the response that the request will return. The default is 10.</p>
        name_contains: <p>Substring to match in bot names. A bot will be returned if any part of its name matches the substring. For example, "xyz" matches both "xyzabc" and "abcxyz."</p>

    Raises:
        capo_lex_model_building_service.errors.bad_request_exception.BadRequestException: <p>The request is not well formed. For example, a value is invalid or a required field is missing. Check the field values, and try again.</p>
        capo_lex_model_building_service.errors.internal_failure_exception.InternalFailureException: <p>An internal Amazon Lex error occurred. Try your request again.</p>
        capo_lex_model_building_service.errors.limit_exceeded_exception.LimitExceededException: <p>The request exceeded a limit. Try your request again.</p>
        capo_lex_model_building_service.errors.not_found_exception.NotFoundException: <p>The resource specified in the request was not found. Check the resource and try again.</p>
        capo_lex_model_building_service.errors.UnknownServiceError: The service returned an error code this client does not model.

    Examples:
        To get a list of bots
        This example shows how to get a list of all of the bots in your account.

        >>> client.get_bots(next_token='', max_results=5)
    """

    def _handler(
        req: "OperationRequest[capo_lex_model_building_service.types.get_bots_request.GetBotsRequest]",
    ) -> OperationResponse[
        "capo_lex_model_building_service.types.get_bots_response.GetBotsResponse"
    ]:
        import capo_lex_model_building_service._operations.aws_deep_sense_model_building_service.get_bots

        output, http_response = (
            capo_lex_model_building_service._operations.aws_deep_sense_model_building_service.get_bots.get_bots(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("GetBots")
    )
    input_: capo_lex_model_building_service.types.get_bots_request.GetBotsRequest = {}
    if next_token is not None:
        input_["next_token"] = next_token
    if max_results is not None:
        input_["max_results"] = max_results
    if name_contains is not None:
        input_["name_contains"] = name_contains

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output