Version 2.0.1
Request requires authentication!
{ "title": "Authentication configuration", "$schema": "http://json-schema.org/draft-04/schema#", "javaType": "com.sos.joc.model.security.SecurityConfiguration", "type": "object", "required": [ "main" ], "properties": { "deliveryDate": { "description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty", "type": "string", "format": "date-time" }, "main": { "type": "array", "items": { "type": "object", "javaType": "com.sos.joc.model.security.SecurityConfigurationMainEntry", "required": [ "entryName", "entryValue" ], "properties": { "entryName": { "type": "string" }, "entryValue": { "type": "array", "items": { "type": "string" } }, "entryComment": { "type": "array", "items": { "type": "string" } } }, "additionalProperties": false } }, "users": { "type": "array", "items": { "type": "object", "javaType": "com.sos.joc.model.security.SecurityConfigurationUser", "required": [ "user", "roles" ], "properties": { "user": { "type": "string" }, "password": { "type": "string" }, "roles": { "type": "array", "minItems": 1, "items": { "type": "string" } } }, "additionalProperties": false } }, "profiles": { "type": "array", "items": { "type": "object", "javaType": "com.sos.joc.model.configuration.Profile", "properties": { "account": { "type": "string" }, "lastLogin": { "description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty", "type": "string", "format": "date-time" } }, "additionalProperties": false } }, "roles": { "javaType": "com.sos.joc.model.security.permissions.SecurityConfigurationRoles", "type": "object", "additionalProperties": { "javaType": "com.sos.joc.model.security.permissions.SecurityConfigurationRole", "type": "object", "properties": { "folders": { "javaType": "com.sos.joc.model.security.permissions.SecurityConfigurationFolders", "type": "object", "properties": { "joc": { "type": "array", "items": { "type": "object", "javaType": "com.sos.joc.model.common.Folder", "required": [ "folder" ], "properties": { "folder": { "description": "absolute path of an object.", "type": "string", "pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$", "maxLength": 255, "minLength": 1 }, "recursive": { "type": "boolean", "default": true } }, "additionalProperties": false } }, "controllers": { "javaType": "com.sos.joc.model.security.permissions.ControllerFolders", "type": "object", "additionalProperties": { "type": "array", "items": { "type": "object", "javaType": "com.sos.joc.model.common.Folder", "required": [ "folder" ], "properties": { "folder": { "description": "absolute path of an object.", "type": "string", "pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$", "maxLength": 255, "minLength": 1 }, "recursive": { "type": "boolean", "default": true } }, "additionalProperties": false } } } }, "additionalProperties": false }, "permissions": { "javaType": "com.sos.joc.model.security.IniPermissions", "type": "object", "properties": { "joc": { "type": "array", "items": { "javaType": "com.sos.joc.model.security.permissions.IniPermission", "type": "object", "required": [ "path" ], "properties": { "path": { "type": "string", "pattern": "^[^<>]*$", "maxLength": 255 }, "excluded": { "type": "boolean" } }, "additionalProperties": false } }, "controllerDefaults": { "type": "array", "items": { "javaType": "com.sos.joc.model.security.permissions.IniPermission", "type": "object", "required": [ "path" ], "properties": { "path": { "type": "string", "pattern": "^[^<>]*$", "maxLength": 255 }, "excluded": { "type": "boolean" } }, "additionalProperties": false } }, "controllers": { "javaType": "com.sos.joc.model.security.permissions.IniControllers", "type": "object", "additionalProperties": { "type": "array", "items": { "javaType": "com.sos.joc.model.security.permissions.IniPermission", "type": "object", "required": [ "path" ], "properties": { "path": { "type": "string", "pattern": "^[^<>]*$", "maxLength": 255 }, "excluded": { "type": "boolean" } }, "additionalProperties": false } } } }, "additionalProperties": false } }, "additionalProperties": false } } }, "additionalProperties": false }
Unauthorized!
{ "title": "authentication", "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "required": [ "isAuthenticated" ], "properties": { "user": { "type": "string" }, "accessToken": { "type": "string" }, "message": { "type": "string" }, "role": { "type": "string" }, "isAuthenticated": { "type": "boolean" }, "isPermitted": { "type": "boolean", "default": false }, "sessionTimeout": { "type": "integer", "default": 1800 }, "enableTouch": { "type": "boolean", "default": true } } }
{ "user": "root", "message": "Oops!", "isAuthenticated": false, "isPermitted": false }
Forbidden! The user doesn't have sufficient permissions for 'shiro'
{ "user": "root", "message": "You don't have sufficient permissions for ...", "role": "all", "isAuthenticated": true, "isPermitted": false }
'shiro' failed!
{ "title": "error object with delivery date", "$schema": "http://json-schema.org/draft-04/schema#", "javaType": "com.sos.joc.model.common.Err420", "type": "object", "required": [ "deliveryDate", "error" ], "properties": { "deliveryDate": { "description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty", "type": "string", "format": "date-time" }, "surveyDate": { "description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty", "type": "string", "format": "date-time" }, "error": { "javaType": "com.sos.joc.model.common.Err", "type": "object", "required": [ "code", "message" ], "properties": { "code": { "type": "string" }, "message": { "type": "string" } } } } }
{ "deliveryDate": "2016-05-05T21:13:35Z", "surveyDate": "2016-05-05T21:13:33Z", "error": { "code": "JOC-420", "message": "shiro failed!" } }
Login Timeout! The client's session has expired and must log in again.
{ "user": "root", "message": "Session has expired. Please log in again", "role": "all", "isAuthenticated": false, "isPermitted": false }