Skip to content

/AWS1/IF_WKR=>GETOIDCINFO()

About GetOidcInfo

Retrieves the OpenID Connect (OIDC) configuration for a Wickr network, including SSO settings and optional token information if access token parameters are provided.

Method Signature

METHODS /AWS1/IF_WKR~GETOIDCINFO
  IMPORTING
    !IV_NETWORKID TYPE /AWS1/WKRNETWORKID OPTIONAL
    !IV_CLIENTID TYPE /AWS1/WKRGENERICSTRING OPTIONAL
    !IV_CODE TYPE /AWS1/WKRGENERICSTRING OPTIONAL
    !IV_GRANTTYPE TYPE /AWS1/WKRGENERICSTRING OPTIONAL
    !IV_REDIRECTURI TYPE /AWS1/WKRGENERICSTRING OPTIONAL
    !IV_URL TYPE /AWS1/WKRGENERICSTRING OPTIONAL
    !IV_CLIENTSECRET TYPE /AWS1/WKRSENSITIVESTRING OPTIONAL
    !IV_CODEVERIFIER TYPE /AWS1/WKRGENERICSTRING OPTIONAL
    !IV_CERTIFICATE TYPE /AWS1/WKRGENERICSTRING OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_wkrgetoidcinforsp
  RAISING
    /AWS1/CX_WKRBADREQUESTERROR
    /AWS1/CX_WKRFORBIDDENERROR
    /AWS1/CX_WKRINTSERVERERROR
    /AWS1/CX_WKRRATELIMITERROR
    /AWS1/CX_WKRRESNOTFOUNDERROR
    /AWS1/CX_WKRUNAUTHORIZEDERROR
    /AWS1/CX_WKRVALIDATIONERROR
    /AWS1/CX_WKRCLIENTEXC
    /AWS1/CX_WKRSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_networkid TYPE /AWS1/WKRNETWORKID /AWS1/WKRNETWORKID

The ID of the Wickr network whose OIDC configuration will be retrieved.

Optional arguments:

iv_clientid TYPE /AWS1/WKRGENERICSTRING /AWS1/WKRGENERICSTRING

The OAuth client ID for retrieving access tokens (optional).

iv_code TYPE /AWS1/WKRGENERICSTRING /AWS1/WKRGENERICSTRING

The authorization code for retrieving access tokens (optional).

iv_granttype TYPE /AWS1/WKRGENERICSTRING /AWS1/WKRGENERICSTRING

The OAuth grant type for retrieving access tokens (optional).

iv_redirecturi TYPE /AWS1/WKRGENERICSTRING /AWS1/WKRGENERICSTRING

The redirect URI for the OAuth flow (optional).

iv_url TYPE /AWS1/WKRGENERICSTRING /AWS1/WKRGENERICSTRING

The URL for the OIDC provider (optional).

iv_clientsecret TYPE /AWS1/WKRSENSITIVESTRING /AWS1/WKRSENSITIVESTRING

The OAuth client secret for retrieving access tokens (optional).

iv_codeverifier TYPE /AWS1/WKRGENERICSTRING /AWS1/WKRGENERICSTRING

The PKCE code verifier for enhanced security in the OAuth flow (optional).

iv_certificate TYPE /AWS1/WKRGENERICSTRING /AWS1/WKRGENERICSTRING

The CA certificate for secure communication with the OIDC provider (optional).

RETURNING

oo_output TYPE REF TO /aws1/cl_wkrgetoidcinforsp /AWS1/CL_WKRGETOIDCINFORSP

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->getoidcinfo(
  iv_certificate = |string|
  iv_clientid = |string|
  iv_clientsecret = |string|
  iv_code = |string|
  iv_codeverifier = |string|
  iv_granttype = |string|
  iv_networkid = |string|
  iv_redirecturi = |string|
  iv_url = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lo_oidcconfiginfo = lo_result->get_openidconnectinfo( ).
  IF lo_oidcconfiginfo IS NOT INITIAL.
    lv_genericstring = lo_oidcconfiginfo->get_applicationname( ).
    lv_genericstring = lo_oidcconfiginfo->get_clientid( ).
    lv_genericstring = lo_oidcconfiginfo->get_companyid( ).
    lv_genericstring = lo_oidcconfiginfo->get_scopes( ).
    lv_genericstring = lo_oidcconfiginfo->get_issuer( ).
    lv_sensitivestring = lo_oidcconfiginfo->get_clientsecret( ).
    lv_sensitivestring = lo_oidcconfiginfo->get_secret( ).
    lv_genericstring = lo_oidcconfiginfo->get_redirecturl( ).
    lv_genericstring = lo_oidcconfiginfo->get_userid( ).
    lv_genericstring = lo_oidcconfiginfo->get_customusername( ).
    lv_genericstring = lo_oidcconfiginfo->get_cacertificate( ).
    lv_integer = lo_oidcconfiginfo->get_applicationid( ).
    lv_integer = lo_oidcconfiginfo->get_ssotokenbufferminutes( ).
    lv_genericstring = lo_oidcconfiginfo->get_extraauthparams( ).
  ENDIF.
  lo_oidctokeninfo = lo_result->get_tokeninfo( ).
  IF lo_oidctokeninfo IS NOT INITIAL.
    lv_genericstring = lo_oidctokeninfo->get_codeverifier( ).
    lv_genericstring = lo_oidctokeninfo->get_codechallenge( ).
    lv_genericstring = lo_oidctokeninfo->get_accesstoken( ).
    lv_genericstring = lo_oidctokeninfo->get_idtoken( ).
    lv_genericstring = lo_oidctokeninfo->get_refreshtoken( ).
    lv_genericstring = lo_oidctokeninfo->get_tokentype( ).
    lv_long = lo_oidctokeninfo->get_expiresin( ).
  ENDIF.
ENDIF.

Get OIDC info successfully

Get OIDC info successfully

DATA(lo_result) = lo_client->getoidcinfo( iv_networkid = |12345678| ) .

Get OIDC info - not configured

Get OIDC info - not configured

DATA(lo_result) = lo_client->getoidcinfo( iv_networkid = |12345678| ) .