Skip to content

/AWS1/IF_QST=>CREATEOAUTHCLIENTAPPLICATION()

About CreateOAuthClientApplication

Creates an OAuthClientApplication.

Method Signature

METHODS /AWS1/IF_QST~CREATEOAUTHCLIENTAPPLICATION
  IMPORTING
    !IV_AWSACCOUNTID TYPE /AWS1/QSTAWSACCOUNTID OPTIONAL
    !IV_OAUTHCLIENTAPPLICATIONID TYPE /AWS1/QSTOAUTHCLIENTAPPID OPTIONAL
    !IV_NAME TYPE /AWS1/QSTRESOURCENAME OPTIONAL
    !IV_OAUTHCLIENTAUTHNTCTNTYPE TYPE /AWS1/QSTOAUTHCLIAUTHNTCTNTYPE OPTIONAL
    !IV_CLIENTID TYPE /AWS1/QSTOAUTHCLIENTID OPTIONAL
    !IV_CLIENTSECRET TYPE /AWS1/QSTOAUTHCLIENTSECRET OPTIONAL
    !IV_OAUTHTOKENENDPOINTURL TYPE /AWS1/QSTOAUTHTOKENENDPOINTURL OPTIONAL
    !IV_OAUTHAUTHENDPOINTURL TYPE /AWS1/QSTOAUTHAUTHENDPOINTURL OPTIONAL
    !IV_OAUTHSCOPES TYPE /AWS1/QSTOAUTHSCOPESSTRING OPTIONAL
    !IV_DATASOURCETYPE TYPE /AWS1/QSTDATASOURCETYPE OPTIONAL
    !IO_IDENTITYPVDRVPCCONNPRPS TYPE REF TO /AWS1/CL_QSTVPCCONNPROPERTIES OPTIONAL
    !IT_TAGS TYPE /AWS1/CL_QSTTAG=>TT_TAGLIST OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_qstcreoauthcliapprsp
  RAISING
    /AWS1/CX_QSTACCESSDENIEDEX
    /AWS1/CX_QSTCONFLICTEXCEPTION
    /AWS1/CX_QSTINTERNALFAILUREEX
    /AWS1/CX_QSTINVPARAMVALUEEX
    /AWS1/CX_QSTLIMITEXCEEDEDEX
    /AWS1/CX_QSTRESOURCEEXISTSEX
    /AWS1/CX_QSTRESOURCENOTFOUNDEX
    /AWS1/CX_QSTTHROTTLINGEX
    /AWS1/CX_QSTCLIENTEXC
    /AWS1/CX_QSTSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_awsaccountid TYPE /AWS1/QSTAWSACCOUNTID /AWS1/QSTAWSACCOUNTID

The Amazon Web Services account ID.

iv_oauthclientapplicationid TYPE /AWS1/QSTOAUTHCLIENTAPPID /AWS1/QSTOAUTHCLIENTAPPID

An ID for the OAuthClientApplication that you want to create. This ID is unique per Amazon Web Services Region for each Amazon Web Services account.

iv_name TYPE /AWS1/QSTRESOURCENAME /AWS1/QSTRESOURCENAME

The display name for the OAuthClientApplication.

iv_oauthclientauthntctntype TYPE /AWS1/QSTOAUTHCLIAUTHNTCTNTYPE /AWS1/QSTOAUTHCLIAUTHNTCTNTYPE

The authentication type to use for the OAuthClientApplication. This determines the OAuth 2.0 grant flow that is used when the data source connects to the identity provider. Valid values are TOKEN.

iv_clientid TYPE /AWS1/QSTOAUTHCLIENTID /AWS1/QSTOAUTHCLIENTID

The client ID of the OAuth application that is registered with the identity provider.

iv_clientsecret TYPE /AWS1/QSTOAUTHCLIENTSECRET /AWS1/QSTOAUTHCLIENTSECRET

The client secret of the OAuth application that is registered with the identity provider.

iv_oauthtokenendpointurl TYPE /AWS1/QSTOAUTHTOKENENDPOINTURL /AWS1/QSTOAUTHTOKENENDPOINTURL

The token endpoint URL of the identity provider that is used to obtain access tokens.

Optional arguments:

iv_oauthauthendpointurl TYPE /AWS1/QSTOAUTHAUTHENDPOINTURL /AWS1/QSTOAUTHAUTHENDPOINTURL

The authorization endpoint URL of the identity provider that is used to obtain authorization codes.

iv_oauthscopes TYPE /AWS1/QSTOAUTHSCOPESSTRING /AWS1/QSTOAUTHSCOPESSTRING

The OAuth scopes that are requested when the OAuthClientApplication obtains an access token from the identity provider.

iv_datasourcetype TYPE /AWS1/QSTDATASOURCETYPE /AWS1/QSTDATASOURCETYPE

The type of data source that the OAuthClientApplication is used with. Valid values are SNOWFLAKE.

io_identitypvdrvpcconnprps TYPE REF TO /AWS1/CL_QSTVPCCONNPROPERTIES /AWS1/CL_QSTVPCCONNPROPERTIES

VPC connection properties.

it_tags TYPE /AWS1/CL_QSTTAG=>TT_TAGLIST TT_TAGLIST

Contains a map of the key-value pairs for the resource tag or tags assigned to the OAuthClientApplication.

RETURNING

oo_output TYPE REF TO /aws1/cl_qstcreoauthcliapprsp /AWS1/CL_QSTCREOAUTHCLIAPPRSP

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->createoauthclientapplication(
  io_identitypvdrvpcconnprps = new /aws1/cl_qstvpcconnproperties( |string| )
  it_tags = VALUE /aws1/cl_qsttag=>tt_taglist(
    (
      new /aws1/cl_qsttag(
        iv_key = |string|
        iv_value = |string|
      )
    )
  )
  iv_awsaccountid = |string|
  iv_clientid = |string|
  iv_clientsecret = |string|
  iv_datasourcetype = |string|
  iv_name = |string|
  iv_oauthauthendpointurl = |string|
  iv_oauthclientapplicationid = |string|
  iv_oauthclientauthntctntype = |string|
  iv_oauthscopes = |string|
  iv_oauthtokenendpointurl = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_arn = lo_result->get_arn( ).
  lv_oauthclientapplicationi = lo_result->get_oauthclientapplicationid( ).
  lv_resourcestatus = lo_result->get_creationstatus( ).
  lv_string = lo_result->get_requestid( ).
  lv_statuscode = lo_result->get_status( ).
ENDIF.