Skip to content

describe_phone_numbers async

describe_phone_numbers(
    *,
    config_overrides: Optional[AsyncPinpointSMSVoiceV2ClientConfig] = None,
    phone_number_ids: Optional[PhoneNumberIdList] = None,
    filters: Optional[PhoneNumberFilterList] = None,
    next_token: Optional[NextToken] = None,
    max_results: Optional[MaxResults] = None,
    owner: Optional[Owner] = None,
) -> DescribePhoneNumbersResult

Describes the specified origination phone number, or all the phone numbers in your account.

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

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

Parameters:

  • phone_number_ids (Optional[PhoneNumberIdList], default: None ) –

    The unique identifier of phone numbers to find information about. This is an array of strings that can be either the PhoneNumberId or PhoneNumberArn.

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

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

    An array of PhoneNumberFilter 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 phone numbers to ones your account owns or use SHARED to filter on phone numbers shared with your account. The Owner and PhoneNumberIds parameters can't be used at the same time.

Raises:

Source code in docs_src/capo_pinpoint_sms_voice_v2/_services/async_pinpoint_sms_voice_v2.py
async def describe_phone_numbers(
    self,
    *,
    config_overrides: Optional[AsyncPinpointSMSVoiceV2ClientConfig] = None,
    phone_number_ids: Optional[
        "capo_pinpoint_sms_voice_v2.types.phone_number_id_list.PhoneNumberIdList"
    ] = None,
    filters: Optional[
        "capo_pinpoint_sms_voice_v2.types.phone_number_filter_list.PhoneNumberFilterList"
    ] = 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_phone_numbers_result.DescribePhoneNumbersResult":
    """<p>Describes the specified origination phone number, or all the phone numbers in your account.</p> <p>If you specify phone number IDs, the output includes information for only the specified phone numbers. If you specify filters, the output includes information for only those phone numbers that meet the filter criteria. If you don't specify phone number IDs or filters, the output includes information for all phone numbers.</p> <p>If you specify a phone number ID that isn't valid, an error is returned.</p>

    Args:
        phone_number_ids: <p>The unique identifier of phone numbers to find information about. This is an array of strings that can be either the PhoneNumberId or PhoneNumberArn.</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 PhoneNumberFilter 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 phone numbers to ones your account owns or use <code>SHARED</code> to filter on phone numbers shared with your account. The <code>Owner</code> and <code>PhoneNumberIds</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.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_pinpoint_sms_voice_v2.types.describe_phone_numbers_request.DescribePhoneNumbersRequest]",
    ) -> AsyncOperationResponse[
        "capo_pinpoint_sms_voice_v2.types.describe_phone_numbers_result.DescribePhoneNumbersResult"
    ]:
        import capo_pinpoint_sms_voice_v2._operations.pinpoint_sms_voice_v2.describe_phone_numbers

        (
            output,
            http_response,
        ) = await capo_pinpoint_sms_voice_v2._operations.pinpoint_sms_voice_v2.describe_phone_numbers.async_describe_phone_numbers(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DescribePhoneNumbers")
    )
    input_: capo_pinpoint_sms_voice_v2.types.describe_phone_numbers_request.DescribePhoneNumbersRequest = {}
    if phone_number_ids is not None:
        input_["phone_number_ids"] = phone_number_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 = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output