Introduction
The User-API returns information about the current user, like username, email-address or profile information. This depends on the scope of the tokens.
URL
You can get the URL for the User-API when editing the OAuth-Client.
Authentication
The User-API requires authentication by using an Access Token. Also, an JWT Token can be used to access this API.
You can pass the Access/JWT Token using the GET
or POST
param access_token
, but you should prefer using POST
for security reasons.
$request = new HTTPRequest('https://test.eqdkp-plus.eu/wcf/oauth-user/?access_token='.$data['access_token']);
$request->execute();
Or the token can be passed by using the HTTP Header Authorization
like this:
$request = new HTTPRequest('https://test.eqdkp-plus.eu/wcf/oauth-user/');
$request->addHeader('Authorization', 'Bearer '.$data['access_token']);
$request->execute();
Request Format
The Request should be made using GET
, but POST
is also possible.
Except the access_token
parameter, there are no other parameters.
Example Request
Example request with Access Token:
$request = new HTTPRequest('https://test.eqdkp-plus.eu/wcf/oauth-user/');
$request->addHeader('Authorization', 'Bearer 82ba1fa5bab8932a49a011c8f7004a17ee0b134c906ecf478804c79fc18ca6d2d72fd87c299f507370d2e054e79d9e887543');
$request->execute();
Example request with JWT Token:
$request = new HTTPRequest('https://test.eqdkp-plus.eu/wcf/oauth-user/?access_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9sb2NhbGhvc3RcL3NvbnN0aWdlXC9mb3J1bTUuMS43XC91cGxvYWRcLyIsImF1ZCI6Imh0dHA6XC9cL2xvY2FsaG9zdFwvc29uc3RpZ2VcL2ZvcnVtNS4xLjdcL3VwbG9hZFwvIiwiaWF0IjoxNTY5MTYxNDI5LCJuYmYiOjE1NjkxNjEzNjksImV4cCI6MTU2OTE2MzIyOSwiZGF0YSI6eyJjbGllbnRJRCI6IjE0MjE1ODkxOTgiLCJzY29wZSI6ImlkZW50aWZ5IGVtYWlsIHByb2ZpbGUiLCJ1c2VySUQiOjEsInVzZXJuYW1lIjoicm9vdCIsImVtYWlsIjoiYWRtaW5AYWRtaW4uZGUifX0.8agUuQAqoqBRHo5wHJRQMtSJHmvNfVBd7s1eURdVHw8');
$request->execute();
Response Format
The response has JSON
format. The response only contains the fields corresponding to the scope of the tokens.
Example Response
Example for scope identify
/ openid
:
{
"sub":1,
"userID":1,
"name":"root",
"username":"root",
"preferred_username":"root",
"picture":"data:image\/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjEyOCIgaGVpZ2h0PSIxMjgiPjxwYXRoIGZpbGw9IiNkYzc2ZTkiIGQ9Ik0wIDBoMTZ2MTZIMHoiLz48dGV4dCB4PSI4IiB5PSI4IiBmaWxsPSIjZmZmIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkeT0iLjNlbSIgZm9udC1mYW1pbHk9IkFyaWFsIiBmb250LXNpemU9IjciPlJPPC90ZXh0Pjwvc3ZnPg==",
"picture_height":128,
"picture_width":128
}
Example for scope email
:
{
"email":"admin@admin.de",
"email_verified": true
}
Example with all scopes (identify
/ openid
, email
and profile
):
{
"sub":1,
"userID":1,
"name":"root",
"username":"root",
"preferred_username":"root",
"picture":"data:image\/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjEyOCIgaGVpZ2h0PSIxMjgiPjxwYXRoIGZpbGw9IiNkYzc2ZTkiIGQ9Ik0wIDBoMTZ2MTZIMHoiLz48dGV4dCB4PSI4IiB5PSI4IiBmaWxsPSIjZmZmIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBkeT0iLjNlbSIgZm9udC1mYW1pbHk9IkFyaWFsIiBmb250LXNpemU9IjciPlJPPC90ZXh0Pjwvc3ZnPg==",
"picture_height":128,
"picture_width":128,
"email":"admin@admin.de",
"profile":{
"userOption1":null,
"userOption2":"0000-00-00",
"userOption3":1,
"userOption4":"0",
"userOption5":null,
"userOption6":null,
"userOption7":null,
"userOption8":null,
"userOption9":null,
"userOption10":null,
"userOption11":null,
"userOption12":null,
"userOption13":null,
"userOption14":null,
"userOption15":1,
"userOption16":null,
"userOption17":1,
"userOption18":1,
"userOption19":"0",
"userOption20":"0",
"userOption21":"0",
"userOption22":"3",
"userOption23":"1",
"userOption24":1,
"userOption25":"1",
"userOption26":"0",
"userOption27":"0",
"userOption28":"0",
"userOption29":"0",
"userOption30":"0",
"userOption31":1,
"userOption35":"0",
"userOption36":"0",
"userOption37":0,
"userOption39":null,
"groupID":4,
"cssClassName":"blue",
"registrationDate":1549550181,
"banned":0,
"banReason":null,
"banExpires":0,
"oldUsername":"",
"birthday":"",
"age":0,
"rank":{
},
"title":"root",
"userTitle":"Administrator",
"signature":""
},
"groups":{
"1":"Jeder",
"3":"Registrierte Benutzer",
"4":"Administratoren
"},
"locale":"de-DE",
"zoneinfo":"Europe\/Berlin",
"gender":"male"
}