Skip to content

request_sender_id

request_sender_id(
    sender_id: SenderId,
    iso_country_code: IsoCountryCode,
    *,
    config_overrides: Optional[PinpointSMSVoiceV2ClientConfig] = None,
    message_types: Optional[MessageTypeList] = None,
    deletion_protection_enabled: Optional[bool] = None,
    tags: Optional[TagList] = None,
    client_token: Optional[ClientToken] = None,
) -> RequestSenderIdResult

Request a new sender ID that doesn't require registration.

Parameters:

  • sender_id (SenderId) –

    The sender ID string to request. The sender ID can be 1-11 alphanumeric characters including letters (A-Z, a-z), numbers (0-9), or hyphens (-). The sender ID must contain at least one letter and cannot start or end with a hyphen.

  • iso_country_code (IsoCountryCode) –

    The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

  • message_types (Optional[MessageTypeList], default: None ) –

    The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

  • deletion_protection_enabled (Optional[bool], default: None ) –

    By default this is set to false. When set to true the sender ID can't be deleted.

  • tags (Optional[TagList], default: None ) –

    An array of tags (key and value pairs) to associate with the sender ID.

  • client_token (Optional[ClientToken], default: None ) –

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

Raises:

  • AccessDeniedException –

    The request was denied because you don't have sufficient permissions to access the resource.

  • ConflictException –

    Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

  • InternalServerException –

    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.

  • ServiceQuotaExceededException –

    The request would cause a service quota to be exceeded.

  • ThrottlingException –

    An error that occurred because too many requests were sent during a certain amount of time.

  • ValidationException –

    A validation exception for a field.

  • UnknownServiceError –

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

Source code in docs_src/capo_pinpoint_sms_voice_v2/_services/pinpoint_sms_voice_v2.py
def request_sender_id(
    self,
    sender_id: "capo_pinpoint_sms_voice_v2.types.sender_id.SenderId",
    iso_country_code: "capo_pinpoint_sms_voice_v2.types.iso_country_code.IsoCountryCode",
    *,
    config_overrides: Optional[PinpointSMSVoiceV2ClientConfig] = None,
    message_types: Optional[
        "capo_pinpoint_sms_voice_v2.types.message_type_list.MessageTypeList"
    ] = None,
    deletion_protection_enabled: Optional[bool] = None,
    tags: Optional["capo_pinpoint_sms_voice_v2.types.tag_list.TagList"] = None,
    client_token: Optional[
        "capo_pinpoint_sms_voice_v2.types.client_token.ClientToken"
    ] = None,
) -> "capo_pinpoint_sms_voice_v2.types.request_sender_id_result.RequestSenderIdResult":
    """<p>Request a new sender ID that doesn't require registration. </p>

    Args:
        sender_id: <p>The sender ID string to request. The sender ID can be 1-11 alphanumeric characters including letters (A-Z, a-z), numbers (0-9), or hyphens (-). The sender ID must contain at least one letter and cannot start or end with a hyphen.</p>
        iso_country_code: <p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.</p>
        message_types: <p>The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.</p>
        deletion_protection_enabled: <p>By default this is set to false. When set to true the sender ID can't be deleted.</p>
        tags: <p>An array of tags (key and value pairs) to associate with the sender ID.</p>
        client_token: <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.</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.conflict_exception.ConflictException: <p>Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of 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.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>The request would cause a service quota to be exceeded.</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.request_sender_id_request.RequestSenderIdRequest]",
    ) -> OperationResponse[
        "capo_pinpoint_sms_voice_v2.types.request_sender_id_result.RequestSenderIdResult"
    ]:
        import capo_pinpoint_sms_voice_v2._operations.pinpoint_sms_voice_v2.request_sender_id

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

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("RequestSenderId")
    )
    input_: capo_pinpoint_sms_voice_v2.types.request_sender_id_request.RequestSenderIdRequest = {
        "sender_id": sender_id,
        "iso_country_code": iso_country_code,
    }
    if message_types is not None:
        input_["message_types"] = message_types
    if deletion_protection_enabled is not None:
        input_["deletion_protection_enabled"] = deletion_protection_enabled
    if tags is not None:
        input_["tags"] = tags
    if client_token is None:
        client_token = str(uuid.uuid4())
    input_["client_token"] = client_token

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