43%macro ms_createuser(username,password
46 ,outds=work.ms_createuser
52 ,mac=ms_createuser.sas
53 ,msg=%str(syscc=&syscc on macro entry)
56%local fref0 fref1 fref2 libref optval rc msg;
57%let fref0=%mf_getuniquefileref();
58%let fref1=%mf_getuniquefileref();
59%let fref2=%mf_getuniquefileref();
60%let libref=%mf_getuniquelibref();
63%let optval=%sysfunc(getoption(bomfile));
67 file &fref0 termstr=crlf;
68 username=quote(cats(symget(
'username')));
69 password=quote(cats(symget(
'password')));
70 isadmin=symget(
'isadmin');
71 displayname=quote(cats(symget(
'displayname')));
72 if displayname=
'"0"' then displayname=username;
74%
if &mdebug=1 %then %
do;
79 put
'"displayName":' displayname @;
80 put
',"username":' username @;
81 put
',"password":' password @;
82 put
',"isAdmin":' isadmin @;
83 put
',"isActive": true }';
87 file &fref1 lrecl=1000;
88 infile
"&_sasjs_tokenfile" lrecl=1000;
91 put
"Content-Type: application/json";
92 put
"accept: application/json";
97%
if &mdebug=1 %then %
do;
109proc http method=
'POST' in=&fref0 headerin=&fref1 out=&fref2
110 url=
"&_sasjs_apiserverurl/SASjsApi/user";
111%
if &mdebug=1 %then %
do;
118 ,mac=ms_createuser.sas
119 ,msg=%str(Issue submitting query to SASjsApi/user)
122libname &libref JSON fileref=&fref2;
132 ,mac=ms_createuser.sas
133 ,msg=%str(Issue reading response JSON)
139%
if &mdebug=1 %then %
do;
140 filename &fref0 clear;
141 filename &fref1 clear;
142 filename &fref2 clear;
143 libname &libref clear;