62%macro mv_getusers(outds=work.mv_getusers
63 ,access_token_var=ACCESS_TOKEN
64 ,grant_type=sas_services
67%
if &grant_type=detect %then %
do;
68 %
if %symexist(&access_token_var) %then %let grant_type=authorization_code;
69 %
else %let grant_type=sas_services;
71%
if &grant_type=sas_services %then %
do;
72 %let oauth_bearer=oauth_bearer=sas_services;
73 %let &access_token_var=;
75%put &sysmacroname: grant_type=&grant_type;
76%mp_abort(iftrue=(&grant_type ne authorization_code and &grant_type ne password
77 and &grant_type ne sas_services
80 ,msg=%str(Invalid value
for grant_type: &grant_type)
86%let base_uri=%mf_getplatform(VIYARESTAPI);
90%let fname1=%mf_getuniquefileref();
91%let libref1=%mf_getuniquelibref();
93proc http method=
'GET' out=&fname1 &oauth_bearer
94 url=
"&base_uri/identities/users?limit=10000";
95%
if &grant_type=authorization_code %then %
do;
96 headers
"Authorization"=
"Bearer &&&access_token_var"
97 "Accept"=
"application/json";
100 headers
"Accept"=
"application/json";
104%mp_abort(iftrue=(&SYS_PROCHTTP_STATUS_CODE ne 200)
106 ,msg=%str(&SYS_PROCHTTP_STATUS_CODE &SYS_PROCHTTP_STATUS_PHRASE)
108libname &libref1 JSON fileref=&fname1;
115filename &fname1 clear;
116libname &libref1 clear;