{ "$id": "automation-common", "description": "Type definitions for all Automation document formats.", "definitions": { "commonFieldNames": { "enum": [ "name", "description", "componentType" ] }, "commonFields": { "type": "object", "properties": { "name": { "$ref": "common#/definitions/name" }, "description": { "$ref": "common#/definitions/description" }, "componentType": { "description": "The type of component linked to this Automation.", "oneOf": [ { "const": "workflows" }, { "type": "null" } ] } } }, "gbac": { "type": "object", "properties": { "write": { "type": "array", "description": "An array of group ids that have write access to the Automation.", "items": { "$ref": "common#/definitions/ObjectIdLikeString" } }, "read": { "type": "array", "description": "An array of group ids that have read/execute access to the Automation.", "items": { "$ref": "common#/definitions/ObjectIdLikeString" } } }, "required": [ "write", "read" ], "additionalProperties": false }, "gbacDereferenced": { "type": "object", "properties": { "write": { "type": "array", "description": "An array of group objects that have write access to the Automation.", "items": { "$ref": "#/definitions/dereferencedGroup" } }, "read": { "type": "array", "description": "An array of group objects that have read/execute access to the Automation.", "items": { "$ref": "#/definitions/dereferencedGroup" } } }, "required": [ "write", "read" ], "additionalProperties": false }, "dereferencedGroup": { "type": "object", "properties": { "provenance": { "type": "string", "examples": [ "ldap", "localAAA" ] }, "name": { "type": "string", "examples": [ "operators", "admins", "designers" ] }, "description": { "type": "string", "examples": [ "Description of a group" ] } }, "required": [ "provenance", "name", "description" ] }, "componentName": { "description": "The name of the component linked to this Automation.", "oneOf": [ { "type": "string" }, { "type": "null" } ] }, "componentId": { "description": "The id of the component linked to this Automation.", "oneOf": [ { "$ref": "common#/definitions/uuid-v4" }, { "$ref": "common#/definitions/ObjectIdLikeString" }, { "type": "null" }, { "const": "" } ] } } }