Skip to content

describe_pools

describe_pools(
    *,
    config_overrides: Optional[PinpointSMSVoiceV2ClientConfig] = None,
    pool_ids: Optional[PoolIdList] = None,
    filters: Optional[PoolFilterList] = None,
    next_token: Optional[NextToken] = None,
    max_results: Optional[MaxResults] = None,
    owner: Optional[Owner] = None,
) -> DescribePoolsResult

Retrieves the specified pools or all pools associated with your Amazon Web Services account.

If you specify pool IDs, the output includes information for only the specified pools. If you specify filters, the output includes information for only those pools that meet the filter criteria. If you don't specify pool IDs or filters, the output includes information for all pools.

If you specify a pool ID that isn't valid, an error is returned.

A pool is a collection of phone numbers and SenderIds. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.

Parameters:

  • pool_ids (Optional[PoolIdList], default: None ) –

    The unique identifier of pools to find. This is an array of strings that can be either the PoolId or PoolArn.

    If you are using a shared End User Messaging SMS resource then you must use the full Amazon Resource Name(ARN).

  • filters (Optional[PoolFilterList], default: None ) –

    An array of PoolFilter objects to filter the results.

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

    The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

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

    The maximum number of results to return per each request.

  • owner (Optional[Owner], default: None ) –

    Use SELF to filter the list of Pools to ones your account owns or use SHARED to filter on Pools shared with your account. The Owner and PoolIds parameters can't be used at the same time.

Raises:

Source code in docs_src/capo_pinpoint_sms_voice_v2/_services/pinpoint_sms_voice_v2.py
def describe_pools(
    self,
    *,
    config_overrides: Optional[PinpointSMSVoiceV2ClientConfig] = None,
    pool_ids: Optional[
        "capo_pinpoint_sms_voice_v2.types.pool_id_list.PoolIdList"
    ] = None,
    filters: Optional[
        "capo_pinpoint_sms_voice_v2.types.pool_filter_list.PoolFilterList"
    ] = None,
    next_token: Optional[
        "capo_pinpoint_sms_voice_v2.types.next_token.NextToken"
    ] = None,
    max_results: Optional[
        "capo_pinpoint_sms_voice_v2.types.max_results.MaxResults"
    ] = None,
    owner: Optional["capo_pinpoint_sms_voice_v2.types.owner.Owner"] = None,
) -> "capo_pinpoint_sms_voice_v2.types.describe_pools_result.DescribePoolsResult":
    """<p>Retrieves the specified pools or all pools associated with your Amazon Web Services account.</p> <p>If you specify pool IDs, the output includes information for only the specified pools. If you specify filters, the output includes information for only those pools that meet the filter criteria. If you don't specify pool IDs or filters, the output includes information for all pools.</p> <p>If you specify a pool ID that isn't valid, an error is returned.</p> <p>A pool is a collection of phone numbers and SenderIds. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.</p>

    Args:
        pool_ids: <p>The unique identifier of pools to find. This is an array of strings that can be either the PoolId or PoolArn.</p> <important> <p>If you are using a shared End User Messaging SMS resource then you must use the full Amazon Resource Name(ARN).</p> </important>
        filters: <p>An array of PoolFilter objects to filter the results.</p>
        next_token: <p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>
        max_results: <p>The maximum number of results to return per each request.</p>
        owner: <p>Use <code>SELF</code> to filter the list of Pools to ones your account owns or use <code>SHARED</code> to filter on Pools shared with your account. The <code>Owner</code> and <code>PoolIds</code> parameters can't be used at the same time.</p>

    Raises:
        capo_pinpoint_sms_voice_v2.errors.access_denied_exception.AccessDeniedException: <p>The request was denied because you don't have sufficient permissions to access the resource.</p>
        capo_pinpoint_sms_voice_v2.errors.internal_server_exception.InternalServerException: <p>The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.</p>
        capo_pinpoint_sms_voice_v2.errors.resource_not_found_exception.ResourceNotFoundException: <p>A requested resource couldn't be found.</p>
        capo_pinpoint_sms_voice_v2.errors.throttling_exception.ThrottlingException: <p>An error that occurred because too many requests were sent during a certain amount of time.</p>
        capo_pinpoint_sms_voice_v2.errors.validation_exception.ValidationException: <p>A validation exception for a field.</p>
        capo_pinpoint_sms_voice_v2.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_pinpoint_sms_voice_v2.types.describe_pools_request.DescribePoolsRequest]",
    ) -> OperationResponse[
        "capo_pinpoint_sms_voice_v2.types.describe_pools_result.DescribePoolsResult"
    ]:
        import capo_pinpoint_sms_voice_v2._operations.pinpoint_sms_voice_v2.describe_pools

        output, http_response = (
            capo_pinpoint_sms_voice_v2._operations.pinpoint_sms_voice_v2.describe_pools.describe_pools(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DescribePools")
    )
    input_: capo_pinpoint_sms_voice_v2.types.describe_pools_request.DescribePoolsRequest = {}
    if pool_ids is not None:
        input_["pool_ids"] = pool_ids
    if filters is not None:
        input_["filters"] = filters
    if next_token is not None:
        input_["next_token"] = next_token
    if max_results is not None:
        input_["max_results"] = max_results
    if owner is not None:
        input_["owner"] = owner

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