Skip to content

/AWS1/CL_IOT=>CREATEDOMAINCONFIGURATION()

About CreateDomainConfiguration

Creates a domain configuration.

Requires permission to access the CreateDomainConfiguration action.

Method Signature

IMPORTING

Required arguments:

iv_domainconfigurationname TYPE /AWS1/IOTDOMAINCONFNAME /AWS1/IOTDOMAINCONFNAME

The name of the domain configuration. This value must be unique to a region.

Optional arguments:

iv_domainname TYPE /AWS1/IOTDOMAINNAME /AWS1/IOTDOMAINNAME

The name of the domain.

it_servercertificatearns TYPE /AWS1/CL_IOTSERVERCERTARNS_W=>TT_SERVERCERTIFICATEARNS TT_SERVERCERTIFICATEARNS

The ARNs of the certificates that IoT passes to the device during the TLS handshake. Currently you can specify only one certificate ARN. This value is not required for Amazon Web Services-managed domains.

iv_validationcertificatearn TYPE /AWS1/IOTACMCERTIFICATEARN /AWS1/IOTACMCERTIFICATEARN

The certificate used to validate the server certificate and prove domain name ownership. This certificate must be signed by a public certificate authority. This value is not required for Amazon Web Services-managed domains.

io_authorizerconfig TYPE REF TO /AWS1/CL_IOTAUTHORIZERCONFIG /AWS1/CL_IOTAUTHORIZERCONFIG

An object that specifies the authorization service for a domain.

iv_servicetype TYPE /AWS1/IOTSERVICETYPE /AWS1/IOTSERVICETYPE

The type of service delivered by the endpoint.

Amazon Web Services IoT Core currently supports only the DATA service type.

it_tags TYPE /AWS1/CL_IOTTAG=>TT_TAGLIST TT_TAGLIST

Metadata which can be used to manage the domain configuration.

For URI Request parameters use format: ...key1=value1&key2=value2...

For the CLI command-line parameter use format: &&tags "key1=value1&key2=value2..."

For the cli-input-json file use format: "tags": "key1=value1&key2=value2..."

io_tlsconfig TYPE REF TO /AWS1/CL_IOTTLSCONFIG /AWS1/CL_IOTTLSCONFIG

An object that specifies the TLS configuration for a domain.

io_servercertificateconfig TYPE REF TO /AWS1/CL_IOTSERVERCERTCONFIG /AWS1/CL_IOTSERVERCERTCONFIG

The server certificate configuration.

iv_authenticationtype TYPE /AWS1/IOTAUTHENTICATIONTYPE /AWS1/IOTAUTHENTICATIONTYPE

An enumerated string that specifies the authentication type.

  • CUSTOM_AUTH_X509 - Use custom authentication and authorization with additional details from the X.509 client certificate.

  • AWS_X509 - Use X.509 client certificates without custom authentication and authorization. For more information, see X.509 client certificates.

  • DEFAULT - Use a combination of port and Application Layer Protocol Negotiation (ALPN) to specify authentication type. For more information, see Device communication protocols.

iv_applicationprotocol TYPE /AWS1/IOTAPPLICATIONPROTOCOL /AWS1/IOTAPPLICATIONPROTOCOL

An enumerated string that specifies the application-layer protocol.

  • SECURE_MQTT - MQTT over TLS.

  • MQTT_WSS - MQTT over WebSocket.

  • HTTPS - HTTP over TLS.

  • DEFAULT - Use a combination of port and Application Layer Protocol Negotiation (ALPN) to specify application_layer protocol. For more information, see Device communication protocols.

io_clientcertificateconfig TYPE REF TO /AWS1/CL_IOTCLIENTCERTCONFIG /AWS1/CL_IOTCLIENTCERTCONFIG

An object that specifies the client certificate configuration for a domain.

RETURNING

oo_output TYPE REF TO /aws1/cl_iotcreatedomconfrsp /AWS1/CL_IOTCREATEDOMCONFRSP

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_iot~createdomainconfiguration(
  io_authorizerconfig = new /aws1/cl_iotauthorizerconfig(
    iv_allowauthorizeroverride = ABAP_TRUE
    iv_defaultauthorizername = |string|
  )
  io_clientcertificateconfig = new /aws1/cl_iotclientcertconfig( |string| )
  io_servercertificateconfig = new /aws1/cl_iotservercertconfig(
    iv_enableocspcheck = ABAP_TRUE
    iv_ocspauthdresponderarn = |string|
    iv_ocsplambdaarn = |string|
  )
  io_tlsconfig = new /aws1/cl_iottlsconfig( |string| )
  it_servercertificatearns = VALUE /aws1/cl_iotservercertarns_w=>tt_servercertificatearns(
    ( new /aws1/cl_iotservercertarns_w( |string| ) )
  )
  it_tags = VALUE /aws1/cl_iottag=>tt_taglist(
    (
      new /aws1/cl_iottag(
        iv_key = |string|
        iv_value = |string|
      )
    )
  )
  iv_applicationprotocol = |string|
  iv_authenticationtype = |string|
  iv_domainconfigurationname = |string|
  iv_domainname = |string|
  iv_servicetype = |string|
  iv_validationcertificatearn = |string|
).

This is an example of reading all possible response values

lv_domainconfigurationname = lo_result->get_domainconfigurationname( ).
lv_domainconfigurationarn = lo_result->get_domainconfigurationarn( ).