/AWS1/IF_IDS=>DESCRIBEUSER()¶
About DescribeUser¶
Retrieves the user metadata and attributes from the UserId in an identity store.
If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide.
Method Signature¶
METHODS /AWS1/IF_IDS~DESCRIBEUSER
IMPORTING
!IV_IDENTITYSTOREID TYPE /AWS1/IDSIDENTITYSTOREID OPTIONAL
!IV_USERID TYPE /AWS1/IDSRESOURCEID OPTIONAL
!IT_EXTENSIONS TYPE /AWS1/CL_IDSEXTENSIONNAMES_W=>TT_EXTENSIONNAMES OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_idsdescruserresponse
RAISING
/AWS1/CX_IDSACCESSDENIEDEX
/AWS1/CX_IDSINTERNALSERVEREX
/AWS1/CX_IDSTHROTTLINGEX
/AWS1/CX_IDSRESOURCENOTFOUNDEX
/AWS1/CX_IDSVALIDATIONEX
/AWS1/CX_IDSCLIENTEXC
/AWS1/CX_IDSSERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_identitystoreid TYPE /AWS1/IDSIDENTITYSTOREID /AWS1/IDSIDENTITYSTOREID¶
The globally unique identifier for the identity store, such as
d-1234567890. In this example,d-is a fixed prefix, and1234567890is a randomly generated string that contains numbers and lower case letters. This value is generated at the time that a new identity store is created.
iv_userid TYPE /AWS1/IDSRESOURCEID /AWS1/IDSRESOURCEID¶
The identifier for a user in the identity store.
Optional arguments:¶
it_extensions TYPE /AWS1/CL_IDSEXTENSIONNAMES_W=>TT_EXTENSIONNAMES TT_EXTENSIONNAMES¶
A collection of extension names indicating what extensions the service should retrieve alongside other user attributes.
aws:identitystore:enterpriseis the only supported extension name.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_idsdescruserresponse /AWS1/CL_IDSDESCRUSERRESPONSE¶
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->describeuser(
it_extensions = VALUE /aws1/cl_idsextensionnames_w=>tt_extensionnames(
( new /aws1/cl_idsextensionnames_w( |string| ) )
)
iv_identitystoreid = |string|
iv_userid = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lv_identitystoreid = lo_result->get_identitystoreid( ).
lv_resourceid = lo_result->get_userid( ).
lv_username = lo_result->get_username( ).
LOOP AT lo_result->get_externalids( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_externalidissuer = lo_row_1->get_issuer( ).
lv_externalididentifier = lo_row_1->get_id( ).
ENDIF.
ENDLOOP.
lo_name = lo_result->get_name( ).
IF lo_name IS NOT INITIAL.
lv_sensitivestringtype = lo_name->get_formatted( ).
lv_sensitivestringtype = lo_name->get_familyname( ).
lv_sensitivestringtype = lo_name->get_givenname( ).
lv_sensitivestringtype = lo_name->get_middlename( ).
lv_sensitivestringtype = lo_name->get_honorificprefix( ).
lv_sensitivestringtype = lo_name->get_honorificsuffix( ).
ENDIF.
lv_sensitivestringtype = lo_result->get_displayname( ).
lv_sensitivestringtype = lo_result->get_nickname( ).
lv_sensitivestringtype = lo_result->get_profileurl( ).
LOOP AT lo_result->get_emails( ) into lo_row_2.
lo_row_3 = lo_row_2.
IF lo_row_3 IS NOT INITIAL.
lv_sensitivestringtype = lo_row_3->get_value( ).
lv_sensitivestringtype = lo_row_3->get_type( ).
lv_sensitivebooleantype = lo_row_3->get_primary( ).
ENDIF.
ENDLOOP.
LOOP AT lo_result->get_addresses( ) into lo_row_4.
lo_row_5 = lo_row_4.
IF lo_row_5 IS NOT INITIAL.
lv_sensitivestringtype = lo_row_5->get_streetaddress( ).
lv_sensitivestringtype = lo_row_5->get_locality( ).
lv_sensitivestringtype = lo_row_5->get_region( ).
lv_sensitivestringtype = lo_row_5->get_postalcode( ).
lv_sensitivestringtype = lo_row_5->get_country( ).
lv_sensitivestringtype = lo_row_5->get_formatted( ).
lv_sensitivestringtype = lo_row_5->get_type( ).
lv_sensitivebooleantype = lo_row_5->get_primary( ).
ENDIF.
ENDLOOP.
LOOP AT lo_result->get_phonenumbers( ) into lo_row_6.
lo_row_7 = lo_row_6.
IF lo_row_7 IS NOT INITIAL.
lv_sensitivestringtype = lo_row_7->get_value( ).
lv_sensitivestringtype = lo_row_7->get_type( ).
lv_sensitivebooleantype = lo_row_7->get_primary( ).
ENDIF.
ENDLOOP.
lv_sensitivestringtype = lo_result->get_usertype( ).
lv_sensitivestringtype = lo_result->get_title( ).
lv_sensitivestringtype = lo_result->get_preferredlanguage( ).
lv_sensitivestringtype = lo_result->get_locale( ).
lv_sensitivestringtype = lo_result->get_timezone( ).
lv_userstatus = lo_result->get_userstatus( ).
LOOP AT lo_result->get_photos( ) into lo_row_8.
lo_row_9 = lo_row_8.
IF lo_row_9 IS NOT INITIAL.
lv_sensitivestringtype = lo_row_9->get_value( ).
lv_sensitivestringtype = lo_row_9->get_type( ).
lv_sensitivestringtype = lo_row_9->get_display( ).
lv_sensitivebooleantype = lo_row_9->get_primary( ).
ENDIF.
ENDLOOP.
lv_sensitivestringtype = lo_result->get_website( ).
lv_sensitivestringtype = lo_result->get_birthdate( ).
lv_datetype = lo_result->get_createdat( ).
lv_stringtype = lo_result->get_createdby( ).
lv_datetype = lo_result->get_updatedat( ).
lv_stringtype = lo_result->get_updatedby( ).
LOOP AT lo_result->get_extensions( ) into ls_row_10.
lv_key = ls_row_10-key.
lo_value = ls_row_10-value.
IF lo_value IS NOT INITIAL.
ENDIF.
ENDLOOP.
ENDIF.