Skip to content

/AWS1/IF_ACM=>CREATEACMEEXTRNLACCTBINDING()

About CreateAcmeExternalAccountBinding

Creates an external account binding (EAB) for an ACME endpoint. An EAB provides credentials that authorize an ACME client to register an account with the endpoint. Each EAB is associated with an IAM role that controls what certificate operations the ACME client can perform.

Method Signature

METHODS /AWS1/IF_ACM~CREATEACMEEXTRNLACCTBINDING
  IMPORTING
    !IV_IDEMPOTENCYTOKEN TYPE /AWS1/ACMSTRING00 OPTIONAL
    !IV_ACMEENDPOINTARN TYPE /AWS1/ACMACMEENDPOINTARN OPTIONAL
    !IV_ROLEARN TYPE /AWS1/ACMROLEARN OPTIONAL
    !IO_EXPIRATION TYPE REF TO /AWS1/CL_ACMEXPIRATION OPTIONAL
    !IT_TAGS TYPE /AWS1/CL_ACMTAG=>TT_TAGLIST OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_acmcreacmeextacbndrsp
  RAISING
    /AWS1/CX_ACMACCESSDENIEDEX
    /AWS1/CX_ACMCONFLICTEXCEPTION
    /AWS1/CX_ACMINTERNALSERVEREX
    /AWS1/CX_ACMRESOURCENOTFOUNDEX
    /AWS1/CX_ACMSERVICEQUOTAEXCDEX
    /AWS1/CX_ACMTHROTTLINGEX
    /AWS1/CX_ACMVALIDATIONEX
    /AWS1/CX_ACMCLIENTEXC
    /AWS1/CX_ACMSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_acmeendpointarn TYPE /AWS1/ACMACMEENDPOINTARN /AWS1/ACMACMEENDPOINTARN

The Amazon Resource Name (ARN) of the ACME endpoint.

iv_rolearn TYPE /AWS1/ACMROLEARN /AWS1/ACMROLEARN

The Amazon Resource Name (ARN) of the IAM role to associate with the external account binding.

Optional arguments:

iv_idempotencytoken TYPE /AWS1/ACMSTRING00 /AWS1/ACMSTRING00

A unique, case-sensitive identifier to ensure idempotency of the request.

io_expiration TYPE REF TO /AWS1/CL_ACMEXPIRATION /AWS1/CL_ACMEXPIRATION

The expiration configuration for the external account binding.

it_tags TYPE /AWS1/CL_ACMTAG=>TT_TAGLIST TT_TAGLIST

One or more tags to associate with the external account binding.

RETURNING

oo_output TYPE REF TO /aws1/cl_acmcreacmeextacbndrsp /AWS1/CL_ACMCREACMEEXTACBNDRSP

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->createacmeextrnlacctbinding(
  io_expiration = new /aws1/cl_acmexpiration(
    iv_type = |string|
    iv_value = 123
  )
  it_tags = VALUE /aws1/cl_acmtag=>tt_taglist(
    (
      new /aws1/cl_acmtag(
        iv_key = |string|
        iv_value = |string|
      )
    )
  )
  iv_acmeendpointarn = |string|
  iv_idempotencytoken = |string|
  iv_rolearn = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lo_acmeexternalaccountbind = lo_result->get_externalaccountbinding( ).
  IF lo_acmeexternalaccountbind IS NOT INITIAL.
    lv_acmeexternalaccountbind_1 = lo_acmeexternalaccountbind->get_acmeextrnlacctbindingarn( ).
    lv_acmeendpointarn = lo_acmeexternalaccountbind->get_acmeendpointarn( ).
    lv_rolearn = lo_acmeexternalaccountbind->get_rolearn( ).
    lv_timestamp = lo_acmeexternalaccountbind->get_expiresat( ).
    lv_timestamp = lo_acmeexternalaccountbind->get_revokedat( ).
    lv_timestamp = lo_acmeexternalaccountbind->get_lastusedat( ).
    lv_timestamp = lo_acmeexternalaccountbind->get_createdat( ).
    lv_timestamp = lo_acmeexternalaccountbind->get_updatedat( ).
  ENDIF.
ENDIF.