200 |
- Required fields are
- id
- path
- objectType
- valid (true|false)
- invalidMsg (valid is false)
- state ("DEPLOYMENT_IS_NEWER", "DRAFT_IS_NEWER", "DEPLOYMENT_NOT_EXIST", "DRAFT_NOT_EXIST", "NO_CONFIGURATION_EXIST")
- deployed (=false),
- configurationDate
- deliveryDate
|
|
application/json
model |
example
{
"title": "JS Object configuration",
"$schema": "http://json-schema.org/draft-04/schema#",
"javaType": "com.sos.joc.model.inventory.ConfigurationObject",
"type": "object",
"anyOf": [{
"required": [
"path",
"objectType"
]
}, {
"required": [
"id"
]
}],
"properties": {
"id": {
"type": "number",
"format": "utc-millisec",
"minimum": 0
},
"path": {
"description": "absolute path of an object.",
"type": "string",
"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
"maxLength": 255,
"minLength": 1
},
"objectType": {
"javaType": "com.sos.joc.model.inventory.common.ConfigurationType",
"type": "string",
"enum": [
"FOLDER",
"WORKFLOW",
"JOBCLASS",
"JOBRESOURCE",
"LOCK",
"NOTICEBOARD",
"FILEORDERSOURCE",
"WORKINGDAYSCALENDAR",
"NONWORKINGDAYSCALENDAR",
"SCHEDULE",
"INCLUDESCRIPT",
"JOBTEMPLATE",
"DEPLOYMENTDESCRIPTOR",
"DESCRIPTORFOLDER"
]
},
"name": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 255
},
"configuration": {
"description": "interface for different json representations of a configuration item",
"type": "object",
"javaType": "com.sos.joc.model.common.IConfigurationObject"
},
"state": {
"javaType": "com.sos.joc.model.inventory.common.ItemStateEnum",
"type": "string",
"enum": [
"DEPLOYMENT_IS_NEWER",
"RELEASE_IS_NEWER",
"DRAFT_IS_NEWER",
"DEPLOYMENT_NOT_EXIST",
"RELEASE_NOT_EXIST",
"DRAFT_NOT_EXIST",
"NO_CONFIGURATION_EXIST"
]
},
"valid": {
"type": "boolean"
},
"invalidMsg": {
"type": "string"
},
"deleted": {
"type": "boolean"
},
"deployed": {
"type": "boolean"
},
"released": {
"type": "boolean"
},
"hasDeployments": {
"type": "boolean"
},
"hasReleases": {
"type": "boolean"
},
"isReferencedBy": {
"type": "object",
"additionalProperties": {
"type": "integer",
"minimum": 0
}
},
"syncState": {
"javaType": "com.sos.controller.model.common.SyncState",
"type": "object",
"required": [
"severity",
"_text"
],
"properties": {
"severity": {
"type": "integer"
},
"_text": {
"javaType": "com.sos.controller.model.common.SyncStateText",
"description": "SUSPENDED, OUTSTANDING only for Workflows",
"type": "string",
"enum": [
"IN_SYNC",
"NOT_IN_SYNC",
"NOT_DEPLOYED",
"SUSPENDED",
"OUTSTANDING",
"UNKNOWN"
]
}
}
},
"deployments": {
"type": "array",
"items": {
"javaType": "com.sos.joc.model.inventory.deploy.ResponseDeployableVersion",
"type": "object",
"properties": {
"id": {
"type": "number",
"format": "utc-millisec",
"minimum": 0
},
"commitId": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 255
},
"deploymentId": {
"type": "number",
"format": "utc-millisec",
"minimum": 0
},
"deploymentPath": {
"description": "absolute path of an object.",
"type": "string",
"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
"maxLength": 255,
"minLength": 1
},
"deploymentOperation": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 255
},
"versionDate": {
"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
"type": "string",
"format": "date-time"
},
"versions": {
"type": "array",
"items": {
"javaType": "com.sos.joc.model.inventory.common.ResponseItemDeployment",
"type": "object",
"properties": {
"deploymentId": {
"type": "number",
"format": "utc-millisec",
"minimum": 0
},
"path": {
"description": "absolute path of an object.",
"type": "string",
"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
"maxLength": 255,
"minLength": 1
},
"controllerId": {
"type": "string",
"pattern": "^[^/\\<>?:\"|*]*$",
"maxLength": 100
},
"version": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 255
},
"deploymentDate": {
"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
"type": "string",
"format": "date-time"
}
}
},
"uniqueItems": true
}
}
},
"uniqueItems": true
},
"configurationDate": {
"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
"type": "string",
"format": "date-time"
},
"deliveryDate": {
"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
"type": "string",
"format": "date-time"
},
"auditLog": {
"javaType": "com.sos.joc.model.audit.AuditParams",
"type": "object",
"properties": {
"comment": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 255
},
"timeSpent": {
"type": "integer",
"minimum": 0
},
"ticketLink": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 255
}
}
}
},
"additionalProperties": false
}
{ "id": 2, "path": "/agent-cluster1", "objectType": "AGENTCLUSTER", "state": "DRAFT_IS_NEWER", "valid": false, "deployed": false, "deployments": [], "configurationDate": "2020-09-11T09:37:24.836+0000", "deliveryDate": "2020-09-11T09:37:24.838+0000" }
{
"id": 2,
"path": "/agent-cluster1",
"objectType": "AGENTCLUSTER",
"state": "DRAFT_IS_NEWER",
"valid": false,
"deployed": false,
"deployments": [],
"configurationDate": "2020-09-11T09:37:24.836+0000",
"deliveryDate": "2020-09-11T09:37:24.838+0000"
}
|
401 |
Unauthorized! |
|
application/json
model |
example
{
"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 }
{
"user": "root",
"message": "Oops!",
"isAuthenticated": false,
"isPermitted": false
}
|
403 |
Forbidden! The user doesn't have sufficient permissions for 'store' |
|
application/json
model |
example
{
"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": "You don't have sufficient permissions for ...", "role": "all", "isAuthenticated": true, "isPermitted": false }
{
"user": "root",
"message": "You don't have sufficient permissions for ...",
"role": "all",
"isAuthenticated": true,
"isPermitted": false
}
|
420 |
'store' failed! |
|
application/json
model |
example
{
"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": "store failed!" } }
{
"deliveryDate": "2016-05-05T21:13:35Z",
"surveyDate": "2016-05-05T21:13:33Z",
"error": {
"code": "JOC-420",
"message": "store failed!"
}
}
|
433 |
4-eyes principle: Forbidden! The user needs approval process for 'store' |
|
application/json
model |
example
{
"title": "FourEyesResponse",
"$schema": "http://json-schema.org/draft-04/schema#",
"javaType": "com.sos.joc.model.security.foureyes.FourEyesResponse",
"type": "object",
"extends": {
"javaType": "com.sos.joc.model.security.foureyes.ApprovalBase",
"type": "object",
"properties": {
"requestor": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 255,
"minLength": 1
},
"requestUrl": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 255,
"minLength": 1
},
"requestBody": {
"type": "object",
"javaType": "com.sos.joc.model.security.foureyes.RequestBody",
"additionalProperties": true
},
"category": {
"javaType": "com.sos.joc.model.audit.CategoryType",
"type": "string",
"enum": [
"INVENTORY",
"CONTROLLER",
"DAILYPLAN",
"OTHERS",
"DEPLOYMENT",
"DOCUMENTATIONS",
"CERTIFICATES",
"IDENTITY",
"SETTINGS",
"MONITORING",
"UNKNOWN"
]
}
},
"additionalProperties": false
},
"properties": {
"deliveryDate": {
"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
"type": "string",
"format": "date-time"
},
"message": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 255,
"minLength": 1
},
"approvers": {
"type": "array",
"items": {
"javaType": "com.sos.joc.model.security.foureyes.Approver",
"type": "object",
"required": [
"accountName",
"firstName",
"lastName"
],
"properties": {
"accountName": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 255,
"minLength": 1
},
"firstName": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 30,
"minLength": 1
},
"lastName": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 30,
"minLength": 1
},
"email": {
"type": "string",
"pattern": "^[^<>]*$",
"maxLength": 255
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}
{ "deliveryDate": "2025-05-12T21:13:35Z", "accountName": "user1", "request": "./orders/add", "requestBody": { "controllerId": "standalone", "orders": [{ "workflowPath": "myWorkflow", "scheduledFor": "now" }] }, "category": "CONTROLLER", "objectType": "WORKFLOW" "objectName": "myWorkflow", "numOfObjects": 1, "action": "add orders" }
{
"deliveryDate": "2025-05-12T21:13:35Z",
"accountName": "user1",
"request": "./orders/add",
"requestBody": {
"controllerId": "standalone",
"orders": [{
"workflowPath": "myWorkflow",
"scheduledFor": "now"
}]
},
"category": "CONTROLLER",
"objectType": "WORKFLOW"
"objectName": "myWorkflow",
"numOfObjects": 1,
"action": "add orders"
}
|
440 |
Login Timeout! The client's session has expired and must log in again. |
|
application/json
model |
example
{
"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": "Session has expired. Please log in again", "role": "all", "isAuthenticated": false, "isPermitted": false }
{
"user": "root",
"message": "Session has expired. Please log in again",
"role": "all",
"isAuthenticated": false,
"isPermitted": false
}
|