{
    "title": "auditLog",
    "$schema": "http://json-schema.org/draft-04/schema#",
    "javaType": "com.sos.joc.model.audit.AuditLog",
    "type": "object",
    "required": [
        "deliveryDate",
        "auditLog"
    ],
    "properties": {
        "deliveryDate": {
            "description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
            "type": "string",
            "format": "date-time"
        },
        "auditLog": {
            "type": "array",
            "items": {
                "javaType": "com.sos.joc.model.audit.AuditLogItem",
                "type": "object",
                "required": [
                    "id",
                    "account",
                    "request",
                    "category",
                    "created"
                ],
                "properties": {
                    "id": {
                        "type": "number",
                        "format": "utc-millisec",
                        "minimum": 0
                    },
                    "account": {
                        "type": "string",
                        "pattern": "^[^<>]*$",
                        "maxLength": 255
                    },
                    "request": {
                        "type": "string",
                        "pattern": "^[^<>]*$",
                        "maxLength": 255
                    },
                    "created": {
                        "description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
                        "type": "string",
                        "format": "date-time"
                    },
                    "controllerId": {
                        "type": "string",
                        "pattern": "^[^/\\<>?!&:;()\"|*^]*$",
                        "maxLength": 100
                    },
                    "category": {
                        "javaType": "com.sos.joc.model.audit.CategoryType",
                        "type": "string",
                        "enum": [
                            "INVENTORY",
                            "CONTROLLER",
                            "DAILYPLAN",
                            "DEPLOYMENT",
                            "DOCUMENTATIONS",
                            "CERTIFICATES",
                            "IDENTITY",
                            "SETTINGS",
                            "MONITORING"
                        ]
                    },
                    "comment": {
                        "type": "string",
                        "maxLength": 2000
                    },
                    "parameters": {
                        "description": "JSON object as string, parameter of request",
                        "type": "string"
                    },
                    "timeSpent": {
                        "type": "integer",
                        "minimum": 0
                    },
                    "ticketLink": {
                        "type": "string"
                    },
                    "commitId": {
                        "description": "it is only relevant for category 'DEPLOYMENT' and useful to create a link to the deployment history",
                        "type": "string",
                        "pattern": "^[0-9a-fA-F-]+$"
                    }
                }
            }
        }
    }
}