Non-interactive Login¶
The following request, parameter and endpoint is available on the API:
Request:
POST <hostname>/noninteractivelogin/
Payload:
Content-Type: application/json
- JSON containing user credentials, for example:
{ "username":"[email protected]", "password":"mysecret" }
Parameter:
A request parameter to expose hierarchy and role related data is available:
rbacinfo
With the user credentials payload as above, the following calls result in the same response:
POST <hostname>/noninteractivelogin/
POST <hostname>/noninteractivelogin/?rbacinfo=false
POST <hostname>/noninteractivelogin/?rbacinfo=False
If the request is successful:
- the HTTP response is 200
- the JSON body is for example:
{
"is_externally_authenticated": false,
"last_successful_login_time": "2017-06-12T13:28:55.785Z",
"num_of_failed_login_attempts": 0
}
- the X-CSRFToken value
When enabling the rbacinfo
parameter and
with the same user credentials payload as above,
the following calls result in the same response:
POST <hostname>/noninteractivelogin/?rbacinfo
POST <hostname>/noninteractivelogin/?rbacinfo=true
POST <hostname>/noninteractivelogin/?rbacinfo=True
POST <hostname>/noninteractivelogin/?rbacinfo=
If the request is successful:
- the HTTP response is 200
- the JSON body is for example:
{
"hierarchy_path": "sys.Prov",
"language": "en-us",
"is_externally_authenticated": false,
"hierarchy_name": "Prov",
"hierarchy_href": "/api/data/HierarchyNode/593e8fa28719cf00060a7011/",
"role_name": "ProvRole",
"role_href": "/api/data/Role/593e91098719cf00060a7029/",
"role_pkid": "593e91098719cf00060a7029",
"last_successful_login_time": "2017-06-12T13:28:38.390Z",
"hierarchy_type": "TestHierarchyNodeType",
"hierarchy_pkid": "593e8fa28719cf00060a7011",
"num_of_failed_login_attempts": 0
}
If a data/PrivacyPolicy
instance is found at or above the logged
in user’s hierarchy, the data for the instance closest to that hierarchy
will be included in the response JSON body:
{
"privacy_policy": {
"url": "<URL from data/PrivacyPolicy>",
"name": "<Name from data/PrivacyPolicy>"
},
"hierarchy_path": "sys.Prov",
"language": "en-us",
...
Note
- Upon the first successful login, the
last_successful_login_time
is an empty string. - Upon a subsequent successful login, the
last_successful_login_time
is the login time prior to current session. - The
num_of_failed_login_attempts
value is reset to 0 after a successful login.
If the requests above fail:
the HTTP response is 403
the JSON body is:
{ "error_message": "Please enter a valid username and password.", "error_code": 27009 }
the X-CSRFToken value