Ok you have a few problems here. The first and biggest one is that you are sending a Form, when the input is expected to be JSON.
You can format the JSON using a datastep, or you could simply type it in like I show below, just make sure to escape quotes with a quote.
The second is that you have auth_basic listed, when you are using oauth. you should use the OAUTH_BEARER option to send in the token.
See the example code, I think it should work for you:
proc http url="httpbin.org/post"
method="POST"
headerout=hdrs
headerout_overwrite
in= "{""client_id"":""&app"",
""client_secret"":""&clientsecret"",
""scope="":[""openid"", ""SASapp_Admin_GUEST""],
""authorized_grant_types"": [""authorization_code"", ""refresh_token""],
""access_token_validity"": 350000000,
""redirect_uri"": ""urn:ietf:wg:oauth:2.0:oob""}"
out=out
OAUTH_BEARER="&access_token";
headers "Content-Type"="application/json"
;
run;
... View more