Skip to content

/AWS1/CL_EC2=>CREATEVPCENDPOINTSERVICECONF()

About CreateVpcEndpointServiceConfiguration

Creates a VPC endpoint service to which service consumers (Amazon Web Services accounts, users, and IAM roles) can connect.

Before you create an endpoint service, you must create one of the following for your service:

If you set the private DNS name, you must prove that you own the private DNS domain name.

For more information, see the Amazon Web Services PrivateLink Guide.

Method Signature

IMPORTING

Optional arguments:

iv_dryrun TYPE /AWS1/EC2BOOLEAN /AWS1/EC2BOOLEAN

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

iv_acceptancerequired TYPE /AWS1/EC2BOOLEAN /AWS1/EC2BOOLEAN

Indicates whether requests from service consumers to create an endpoint to your service must be accepted manually.

iv_privatednsname TYPE /AWS1/EC2STRING /AWS1/EC2STRING

(Interface endpoint configuration) The private DNS name to assign to the VPC endpoint service.

it_networkloadbalancerarns TYPE /AWS1/CL_EC2VALUESTRINGLIST_W=>TT_VALUESTRINGLIST TT_VALUESTRINGLIST

The Amazon Resource Names (ARNs) of the Network Load Balancers.

it_gatewayloadbalancerarns TYPE /AWS1/CL_EC2VALUESTRINGLIST_W=>TT_VALUESTRINGLIST TT_VALUESTRINGLIST

The Amazon Resource Names (ARNs) of the Gateway Load Balancers.

it_supportedipaddresstypes TYPE /AWS1/CL_EC2VALUESTRINGLIST_W=>TT_VALUESTRINGLIST TT_VALUESTRINGLIST

The supported IP address types. The possible values are ipv4 and ipv6.

it_supportedregions TYPE /AWS1/CL_EC2VALUESTRINGLIST_W=>TT_VALUESTRINGLIST TT_VALUESTRINGLIST

The Regions from which service consumers can access the service.

iv_clienttoken TYPE /AWS1/EC2STRING /AWS1/EC2STRING

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

it_tagspecifications TYPE /AWS1/CL_EC2TAGSPECIFICATION=>TT_TAGSPECIFICATIONLIST TT_TAGSPECIFICATIONLIST

The tags to associate with the service.

RETURNING

oo_output TYPE REF TO /aws1/cl_ec2crevpcendptsvcco01 /AWS1/CL_EC2CREVPCENDPTSVCCO01

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_ec2~createvpcendpointserviceconf(
  it_gatewayloadbalancerarns = VALUE /aws1/cl_ec2valuestringlist_w=>tt_valuestringlist(
    ( new /aws1/cl_ec2valuestringlist_w( |string| ) )
  )
  it_networkloadbalancerarns = VALUE /aws1/cl_ec2valuestringlist_w=>tt_valuestringlist(
    ( new /aws1/cl_ec2valuestringlist_w( |string| ) )
  )
  it_supportedipaddresstypes = VALUE /aws1/cl_ec2valuestringlist_w=>tt_valuestringlist(
    ( new /aws1/cl_ec2valuestringlist_w( |string| ) )
  )
  it_supportedregions = VALUE /aws1/cl_ec2valuestringlist_w=>tt_valuestringlist(
    ( new /aws1/cl_ec2valuestringlist_w( |string| ) )
  )
  it_tagspecifications = VALUE /aws1/cl_ec2tagspecification=>tt_tagspecificationlist(
    (
      new /aws1/cl_ec2tagspecification(
        it_tags = VALUE /aws1/cl_ec2tag=>tt_taglist(
          (
            new /aws1/cl_ec2tag(
              iv_key = |string|
              iv_value = |string|
            )
          )
        )
        iv_resourcetype = |string|
      )
    )
  )
  iv_acceptancerequired = ABAP_TRUE
  iv_clienttoken = |string|
  iv_dryrun = ABAP_TRUE
  iv_privatednsname = |string|
).

This is an example of reading all possible response values

LOOP AT lo_serviceconfiguration->get_servicetype( ) into lo_row.
  lv_servicetype = lo_row_1->get_servicetype( ).
ENDLOOP.
lv_string = lo_serviceconfiguration->get_serviceid( ).
lv_string = lo_serviceconfiguration->get_servicename( ).
lv_servicestate = lo_serviceconfiguration->get_servicestate( ).
LOOP AT lo_serviceconfiguration->get_availabilityzones( ) into lo_row_2.
  lv_string = lo_row_3->get_value( ).
ENDLOOP.
lv_boolean = lo_serviceconfiguration->get_acceptancerequired( ).
lv_boolean = lo_serviceconfiguration->get_managesvpcendpoints( ).
LOOP AT lo_serviceconfiguration->get_networkloadbalancerarns( ) into lo_row_2.
  lv_string = lo_row_3->get_value( ).
ENDLOOP.
LOOP AT lo_serviceconfiguration->get_gatewayloadbalancerarns( ) into lo_row_2.
  lv_string = lo_row_3->get_value( ).
ENDLOOP.
LOOP AT lo_serviceconfiguration->get_supportedipaddresstypes( ) into lo_row_4.
  lv_serviceconnectivitytype = lo_row_5->get_value( ).
ENDLOOP.
LOOP AT lo_serviceconfiguration->get_baseendpointdnsnames( ) into lo_row_2.
  lv_string = lo_row_3->get_value( ).
ENDLOOP.
lv_string = lo_serviceconfiguration->get_privatednsname( ).
lv_dnsnamestate = lo_privatednsnameconfigura->get_state( ).
lv_string = lo_privatednsnameconfigura->get_type( ).
lv_string = lo_privatednsnameconfigura->get_value( ).
lv_string = lo_privatednsnameconfigura->get_name( ).
lv_payerresponsibility = lo_serviceconfiguration->get_payerresponsibility( ).
LOOP AT lo_serviceconfiguration->get_tags( ) into lo_row_6.
  lv_string = lo_row_7->get_key( ).
  lv_string = lo_row_7->get_value( ).
ENDLOOP.
LOOP AT lo_serviceconfiguration->get_supportedregions( ) into lo_row_8.
  lv_string = lo_row_9->get_region( ).
  lv_string = lo_row_9->get_servicestate( ).
ENDLOOP.
lv_boolean = lo_serviceconfiguration->get_remoteaccessenabled( ).
lv_string = lo_result->get_clienttoken( ).