/AWS1/IF_APY=>UPDATEGRAPHQLAPI()¶
About UpdateGraphqlApi¶
Updates a GraphqlApi object.
Method Signature¶
METHODS /AWS1/IF_APY~UPDATEGRAPHQLAPI
IMPORTING
!IV_APIID TYPE /AWS1/APYSTRING OPTIONAL
!IV_NAME TYPE /AWS1/APYSTRING OPTIONAL
!IO_LOGCONFIG TYPE REF TO /AWS1/CL_APYLOGCONFIG OPTIONAL
!IV_AUTHENTICATIONTYPE TYPE /AWS1/APYAUTHENTICATIONTYPE OPTIONAL
!IO_USERPOOLCONFIG TYPE REF TO /AWS1/CL_APYUSERPOOLCONFIG OPTIONAL
!IO_OPENIDCONNECTCONFIG TYPE REF TO /AWS1/CL_APYOPENIDCNCTCONFIG OPTIONAL
!IT_ADDLAUTHNTCTNPROVIDERS TYPE /AWS1/CL_APYADDLAUTHNTCTNPVDR=>TT_ADDLAUTHNTCTNPROVIDERS OPTIONAL
!IV_XRAYENABLED TYPE /AWS1/APYBOOLEAN OPTIONAL
!IO_LAMBDAAUTHORIZERCONFIG TYPE REF TO /AWS1/CL_APYLAMBDAAUTHRCONFIG OPTIONAL
!IV_MERGEDAPIEXECUTIONROLEARN TYPE /AWS1/APYSTRING OPTIONAL
!IV_OWNERCONTACT TYPE /AWS1/APYSTRING OPTIONAL
!IV_INTROSPECTIONCONFIG TYPE /AWS1/APYGRAPHQLAPIINTROSPEC00 OPTIONAL
!IV_QUERYDEPTHLIMIT TYPE /AWS1/APYQUERYDEPTHLIMIT OPTIONAL
!IV_RESOLVERCOUNTLIMIT TYPE /AWS1/APYRESOLVERCOUNTLIMIT OPTIONAL
!IO_ENHANCEDMETRICSCONFIG TYPE REF TO /AWS1/CL_APYENHMETRICSCONFIG OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_apyupdgraphqlapirsp
RAISING
/AWS1/CX_APYACCESSDENIEDEX
/AWS1/CX_APYBADREQUESTEX
/AWS1/CX_APYCONCURRENTMODEX
/AWS1/CX_APYINTERNALFAILUREEX
/AWS1/CX_APYNOTFOUNDEXCEPTION
/AWS1/CX_APYUNAUTHORIZEDEX
/AWS1/CX_APYCLIENTEXC
/AWS1/CX_APYSERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_apiid TYPE /AWS1/APYSTRING /AWS1/APYSTRING¶
The API ID.
iv_name TYPE /AWS1/APYSTRING /AWS1/APYSTRING¶
The new name for the
GraphqlApiobject.
iv_authenticationtype TYPE /AWS1/APYAUTHENTICATIONTYPE /AWS1/APYAUTHENTICATIONTYPE¶
The new authentication type for the
GraphqlApiobject.
Optional arguments:¶
io_logconfig TYPE REF TO /AWS1/CL_APYLOGCONFIG /AWS1/CL_APYLOGCONFIG¶
The Amazon CloudWatch Logs configuration for the
GraphqlApiobject.
io_userpoolconfig TYPE REF TO /AWS1/CL_APYUSERPOOLCONFIG /AWS1/CL_APYUSERPOOLCONFIG¶
The new Amazon Cognito user pool configuration for the
~GraphqlApiobject.
io_openidconnectconfig TYPE REF TO /AWS1/CL_APYOPENIDCNCTCONFIG /AWS1/CL_APYOPENIDCNCTCONFIG¶
The OpenID Connect configuration for the
GraphqlApiobject.
it_addlauthntctnproviders TYPE /AWS1/CL_APYADDLAUTHNTCTNPVDR=>TT_ADDLAUTHNTCTNPROVIDERS TT_ADDLAUTHNTCTNPROVIDERS¶
A list of additional authentication providers for the
GraphqlApiAPI.
iv_xrayenabled TYPE /AWS1/APYBOOLEAN /AWS1/APYBOOLEAN¶
A flag indicating whether to use X-Ray tracing for the
GraphqlApi.
io_lambdaauthorizerconfig TYPE REF TO /AWS1/CL_APYLAMBDAAUTHRCONFIG /AWS1/CL_APYLAMBDAAUTHRCONFIG¶
Configuration for Lambda function authorization.
iv_mergedapiexecutionrolearn TYPE /AWS1/APYSTRING /AWS1/APYSTRING¶
The Identity and Access Management service role ARN for a merged API. The AppSync service assumes this role on behalf of the Merged API to validate access to source APIs at runtime and to prompt the
AUTO_MERGEto update the merged API endpoint with the source API changes automatically.
iv_ownercontact TYPE /AWS1/APYSTRING /AWS1/APYSTRING¶
The owner contact information for an API resource.
This field accepts any string input with a length of 0 - 256 characters.
iv_introspectionconfig TYPE /AWS1/APYGRAPHQLAPIINTROSPEC00 /AWS1/APYGRAPHQLAPIINTROSPEC00¶
Sets the value of the GraphQL API to enable (
ENABLED) or disable (DISABLED) introspection. If no value is provided, the introspection configuration will be set toENABLEDby default. This field will produce an error if the operation attempts to use the introspection feature while this field is disabled.For more information about introspection, see GraphQL introspection.
iv_querydepthlimit TYPE /AWS1/APYQUERYDEPTHLIMIT /AWS1/APYQUERYDEPTHLIMIT¶
The maximum depth a query can have in a single request. Depth refers to the amount of nested levels allowed in the body of query. The default value is
0(or unspecified), which indicates there's no depth limit. If you set a limit, it can be between1and75nested levels. This field will produce a limit error if the operation falls out of bounds.Note that fields can still be set to nullable or non-nullable. If a non-nullable field produces an error, the error will be thrown upwards to the first nullable field available.
iv_resolvercountlimit TYPE /AWS1/APYRESOLVERCOUNTLIMIT /AWS1/APYRESOLVERCOUNTLIMIT¶
The maximum number of resolvers that can be invoked in a single request. The default value is
0(or unspecified), which will set the limit to10000. When specified, the limit value can be between1and10000. This field will produce a limit error if the operation falls out of bounds.
io_enhancedmetricsconfig TYPE REF TO /AWS1/CL_APYENHMETRICSCONFIG /AWS1/CL_APYENHMETRICSCONFIG¶
The
enhancedMetricsConfigobject.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_apyupdgraphqlapirsp /AWS1/CL_APYUPDGRAPHQLAPIRSP¶
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->updategraphqlapi(
io_enhancedmetricsconfig = new /aws1/cl_apyenhmetricsconfig(
iv_datasourcelevelmetbehav = |string|
iv_oplevelmetricsconfig = |string|
iv_resolverlevelmetricsbehav = |string|
)
io_lambdaauthorizerconfig = new /aws1/cl_apylambdaauthrconfig(
iv_authorizeruri = |string|
iv_authrresultttlinseconds = 123
iv_identityvalidationxprsn = |string|
)
io_logconfig = new /aws1/cl_apylogconfig(
iv_cloudwatchlogsrolearn = |string|
iv_excludeverbosecontent = ABAP_TRUE
iv_fieldloglevel = |string|
)
io_openidconnectconfig = new /aws1/cl_apyopenidcnctconfig(
iv_authttl = 123
iv_clientid = |string|
iv_iatttl = 123
iv_issuer = |string|
)
io_userpoolconfig = new /aws1/cl_apyuserpoolconfig(
iv_appidclientregex = |string|
iv_awsregion = |string|
iv_defaultaction = |string|
iv_userpoolid = |string|
)
it_addlauthntctnproviders = VALUE /aws1/cl_apyaddlauthntctnpvdr=>tt_addlauthntctnproviders(
(
new /aws1/cl_apyaddlauthntctnpvdr(
io_lambdaauthorizerconfig = new /aws1/cl_apylambdaauthrconfig(
iv_authorizeruri = |string|
iv_authrresultttlinseconds = 123
iv_identityvalidationxprsn = |string|
)
io_openidconnectconfig = new /aws1/cl_apyopenidcnctconfig(
iv_authttl = 123
iv_clientid = |string|
iv_iatttl = 123
iv_issuer = |string|
)
io_userpoolconfig = new /aws1/cl_apycognitouserpoolcfg(
iv_appidclientregex = |string|
iv_awsregion = |string|
iv_userpoolid = |string|
)
iv_authenticationtype = |string|
)
)
)
iv_apiid = |string|
iv_authenticationtype = |string|
iv_introspectionconfig = |string|
iv_mergedapiexecutionrolearn = |string|
iv_name = |string|
iv_ownercontact = |string|
iv_querydepthlimit = 123
iv_resolvercountlimit = 123
iv_xrayenabled = ABAP_TRUE
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lo_graphqlapi = lo_result->get_graphqlapi( ).
IF lo_graphqlapi IS NOT INITIAL.
lv_resourcename = lo_graphqlapi->get_name( ).
lv_string = lo_graphqlapi->get_apiid( ).
lv_authenticationtype = lo_graphqlapi->get_authenticationtype( ).
lo_logconfig = lo_graphqlapi->get_logconfig( ).
IF lo_logconfig IS NOT INITIAL.
lv_fieldloglevel = lo_logconfig->get_fieldloglevel( ).
lv_string = lo_logconfig->get_cloudwatchlogsrolearn( ).
lv_boolean = lo_logconfig->get_excludeverbosecontent( ).
ENDIF.
lo_userpoolconfig = lo_graphqlapi->get_userpoolconfig( ).
IF lo_userpoolconfig IS NOT INITIAL.
lv_string = lo_userpoolconfig->get_userpoolid( ).
lv_string = lo_userpoolconfig->get_awsregion( ).
lv_defaultaction = lo_userpoolconfig->get_defaultaction( ).
lv_string = lo_userpoolconfig->get_appidclientregex( ).
ENDIF.
lo_openidconnectconfig = lo_graphqlapi->get_openidconnectconfig( ).
IF lo_openidconnectconfig IS NOT INITIAL.
lv_string = lo_openidconnectconfig->get_issuer( ).
lv_string = lo_openidconnectconfig->get_clientid( ).
lv_long = lo_openidconnectconfig->get_iatttl( ).
lv_long = lo_openidconnectconfig->get_authttl( ).
ENDIF.
lv_string = lo_graphqlapi->get_arn( ).
LOOP AT lo_graphqlapi->get_uris( ) into ls_row.
lv_key = ls_row-key.
lo_value = ls_row-value.
IF lo_value IS NOT INITIAL.
lv_string = lo_value->get_value( ).
ENDIF.
ENDLOOP.
LOOP AT lo_graphqlapi->get_tags( ) into ls_row_1.
lv_key_1 = ls_row_1-key.
lo_value_1 = ls_row_1-value.
IF lo_value_1 IS NOT INITIAL.
lv_tagvalue = lo_value_1->get_value( ).
ENDIF.
ENDLOOP.
LOOP AT lo_graphqlapi->get_addlauthntctnproviders( ) into lo_row_2.
lo_row_3 = lo_row_2.
IF lo_row_3 IS NOT INITIAL.
lv_authenticationtype = lo_row_3->get_authenticationtype( ).
lo_openidconnectconfig = lo_row_3->get_openidconnectconfig( ).
IF lo_openidconnectconfig IS NOT INITIAL.
lv_string = lo_openidconnectconfig->get_issuer( ).
lv_string = lo_openidconnectconfig->get_clientid( ).
lv_long = lo_openidconnectconfig->get_iatttl( ).
lv_long = lo_openidconnectconfig->get_authttl( ).
ENDIF.
lo_cognitouserpoolconfig = lo_row_3->get_userpoolconfig( ).
IF lo_cognitouserpoolconfig IS NOT INITIAL.
lv_string = lo_cognitouserpoolconfig->get_userpoolid( ).
lv_string = lo_cognitouserpoolconfig->get_awsregion( ).
lv_string = lo_cognitouserpoolconfig->get_appidclientregex( ).
ENDIF.
lo_lambdaauthorizerconfig = lo_row_3->get_lambdaauthorizerconfig( ).
IF lo_lambdaauthorizerconfig IS NOT INITIAL.
lv_ttl = lo_lambdaauthorizerconfig->get_authrresultttlinseconds( ).
lv_string = lo_lambdaauthorizerconfig->get_authorizeruri( ).
lv_string = lo_lambdaauthorizerconfig->get_identityvalidationxprsn( ).
ENDIF.
ENDIF.
ENDLOOP.
lv_boolean = lo_graphqlapi->get_xrayenabled( ).
lv_string = lo_graphqlapi->get_wafwebaclarn( ).
lo_lambdaauthorizerconfig = lo_graphqlapi->get_lambdaauthorizerconfig( ).
IF lo_lambdaauthorizerconfig IS NOT INITIAL.
lv_ttl = lo_lambdaauthorizerconfig->get_authrresultttlinseconds( ).
lv_string = lo_lambdaauthorizerconfig->get_authorizeruri( ).
lv_string = lo_lambdaauthorizerconfig->get_identityvalidationxprsn( ).
ENDIF.
LOOP AT lo_graphqlapi->get_dns( ) into ls_row.
lv_key = ls_row-key.
lo_value = ls_row-value.
IF lo_value IS NOT INITIAL.
lv_string = lo_value->get_value( ).
ENDIF.
ENDLOOP.
lv_graphqlapivisibility = lo_graphqlapi->get_visibility( ).
lv_graphqlapitype = lo_graphqlapi->get_apitype( ).
lv_string = lo_graphqlapi->get_mergedapiexecrolearn( ).
lv_string = lo_graphqlapi->get_owner( ).
lv_string = lo_graphqlapi->get_ownercontact( ).
lv_graphqlapiintrospection = lo_graphqlapi->get_introspectionconfig( ).
lv_querydepthlimit = lo_graphqlapi->get_querydepthlimit( ).
lv_resolvercountlimit = lo_graphqlapi->get_resolvercountlimit( ).
lo_enhancedmetricsconfig = lo_graphqlapi->get_enhancedmetricsconfig( ).
IF lo_enhancedmetricsconfig IS NOT INITIAL.
lv_resolverlevelmetricsbeh = lo_enhancedmetricsconfig->get_resolverlevelmetbehav( ).
lv_datasourcelevelmetricsb = lo_enhancedmetricsconfig->get_datasourcelevelmetbehav( ).
lv_operationlevelmetricsco = lo_enhancedmetricsconfig->get_oplevelmetricsconfig( ).
ENDIF.
ENDIF.
ENDIF.