Skip to content

/AWS1/CL_PP2=>REQUESTPHONENUMBER()

About RequestPhoneNumber

Request an origination phone number for use in your account. For more information on phone number request see Request a phone number in the AWS End User Messaging SMS User Guide.

Method Signature

IMPORTING

Required arguments:

iv_isocountrycode TYPE /AWS1/PP2ISOCOUNTRYCODE /AWS1/PP2ISOCOUNTRYCODE

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

iv_messagetype TYPE /AWS1/PP2MESSAGETYPE /AWS1/PP2MESSAGETYPE

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.

it_numbercapabilities TYPE /AWS1/CL_PP2NUMCAPABILITYLST_W=>TT_NUMBERCAPABILITYLIST TT_NUMBERCAPABILITYLIST

Indicates if the phone number will be used for text messages, voice messages, or both.

iv_numbertype TYPE /AWS1/PP2REQUESTABLENUMBERTYPE /AWS1/PP2REQUESTABLENUMBERTYPE

The type of phone number to request.

When you request a SIMULATOR phone number, you must set MessageType as TRANSACTIONAL.

Optional arguments:

iv_optoutlistname TYPE /AWS1/PP2OPTOUTLISTNAMEORARN /AWS1/PP2OPTOUTLISTNAMEORARN

The name of the OptOutList to associate with the phone number. You can use the OptOutListName or OptOutListArn.

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

iv_poolid TYPE /AWS1/PP2POOLIDORARN /AWS1/PP2POOLIDORARN

The pool to associated with the phone number. You can use the PoolId or PoolArn.

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

iv_registrationid TYPE /AWS1/PP2REGISTRATIONIDORARN /AWS1/PP2REGISTRATIONIDORARN

Use this field to attach your phone number for an external registration process.

iv_deletionprotectionenabled TYPE /AWS1/PP2BOOLEAN /AWS1/PP2BOOLEAN

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

it_tags TYPE /AWS1/CL_PP2TAG=>TT_TAGLIST TT_TAGLIST

An array of tags (key and value pairs) associate with the requested phone number.

iv_clienttoken TYPE /AWS1/PP2CLIENTTOKEN /AWS1/PP2CLIENTTOKEN

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.

RETURNING

oo_output TYPE REF TO /aws1/cl_pp2reqphonenumberrslt /AWS1/CL_PP2REQPHONENUMBERRSLT

Domain /AWS1/RT_ACCOUNT_ID
Primitive Type NUMC

Examples

Syntax Example

This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.

DATA(lo_result) = lo_client->/aws1/if_pp2~requestphonenumber(
  it_numbercapabilities = VALUE /aws1/cl_pp2numcapabilitylst_w=>tt_numbercapabilitylist(
    ( new /aws1/cl_pp2numcapabilitylst_w( |string| ) )
  )
  it_tags = VALUE /aws1/cl_pp2tag=>tt_taglist(
    (
      new /aws1/cl_pp2tag(
        iv_key = |string|
        iv_value = |string|
      )
    )
  )
  iv_clienttoken = |string|
  iv_deletionprotectionenabled = ABAP_TRUE
  iv_isocountrycode = |string|
  iv_messagetype = |string|
  iv_numbertype = |string|
  iv_optoutlistname = |string|
  iv_poolid = |string|
  iv_registrationid = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_string = lo_result->get_phonenumberarn( ).
  lv_string = lo_result->get_phonenumberid( ).
  lv_phonenumber = lo_result->get_phonenumber( ).
  lv_numberstatus = lo_result->get_status( ).
  lv_isocountrycode = lo_result->get_isocountrycode( ).
  lv_messagetype = lo_result->get_messagetype( ).
  LOOP AT lo_result->get_numbercapabilities( ) into lo_row.
    lo_row_1 = lo_row.
    IF lo_row_1 IS NOT INITIAL.
      lv_numbercapability = lo_row_1->get_value( ).
    ENDIF.
  ENDLOOP.
  lv_requestablenumbertype = lo_result->get_numbertype( ).
  lv_string = lo_result->get_monthlyleasingprice( ).
  lv_primitiveboolean = lo_result->get_twowayenabled( ).
  lv_twowaychannelarn = lo_result->get_twowaychannelarn( ).
  lv_iamrolearn = lo_result->get_twowaychannelrole( ).
  lv_primitiveboolean = lo_result->get_selfmanagedoptoutsenbd( ).
  lv_optoutlistname = lo_result->get_optoutlistname( ).
  lv_primitiveboolean = lo_result->get_deletionprotectionenbd( ).
  lv_string = lo_result->get_poolid( ).
  lv_string = lo_result->get_registrationid( ).
  LOOP AT lo_result->get_tags( ) into lo_row_2.
    lo_row_3 = lo_row_2.
    IF lo_row_3 IS NOT INITIAL.
      lv_tagkey = lo_row_3->get_key( ).
      lv_tagvalue = lo_row_3->get_value( ).
    ENDIF.
  ENDLOOP.
  lv_timestamp = lo_result->get_createdtimestamp( ).
ENDIF.