{
    "$id": "http://redfish.dmtf.org/schemas/v1/EventService.v1_0_9.json",
    "$ref": "#/definitions/EventService",
    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
    "copyright": "Copyright 2014-2019 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
    "definitions": {
        "Actions": {
            "additionalProperties": false,
            "description": "The available actions for this resource.",
            "longDescription": "This type shall contain the available actions for this resource.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "#EventService.SubmitTestEvent": {
                    "$ref": "#/definitions/SubmitTestEvent"
                },
                "Oem": {
                    "$ref": "#/definitions/OemActions",
                    "description": "This property contains the available OEM specific actions for this resource.",
                    "longDescription": "This property shall contain any additional OEM actions for this resource."
                }
            },
            "type": "object"
        },
        "EventService": {
            "additionalProperties": false,
            "description": "The Event Service resource contains properties for managing event subcriptions and generates the events sent to subscribers.  The resource has links to the actual collection of subscriptions (called Event Destinations).",
            "longDescription": "This resource shall be used to represent an event service for a Redfish implementation.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "@odata.context": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
                },
                "@odata.etag": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
                },
                "@odata.id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
                },
                "@odata.type": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
                },
                "Actions": {
                    "$ref": "#/definitions/Actions",
                    "description": "The available actions for this resource.",
                    "longDescription": "The Actions property shall contain the available actions for this resource."
                },
                "DeliveryRetryAttempts": {
                    "description": "This is the number of attempts an event posting is retried before the subscription is terminated.  This retry is at the service level, meaning the HTTP POST to the Event Destination was returned by the HTTP operation as unsuccessful (4xx or 5xx return code) or an HTTP timeout occurred this many times before the Event Destination subscription is terminated.",
                    "longDescription": "The value of this property shall be the number of retrys attempted for any given event to the subscription destination before the subscription is terminated.  This retry is at the service level, meaning the HTTP POST to the Event Destination was returned by the HTTP operation as unsuccessful (4xx or 5xx return code) or an HTTP timeout occurred this many times before the Event Destination subscription is terminated.",
                    "readonly": false,
                    "type": "integer"
                },
                "DeliveryRetryIntervalSeconds": {
                    "description": "This represents the number of seconds between retry attempts for sending any given Event.",
                    "longDescription": "The value of this property shall be the interval in seconds between the retry attempts for any given event to the subscription destination.",
                    "readonly": false,
                    "type": "integer",
                    "units": "s"
                },
                "Description": {
                    "anyOf": [
                        {
                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "readonly": true
                },
                "EventTypesForSubscription": {
                    "description": "This is the types of Events that can be subscribed to.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/Event.json#/definitions/EventType"
                    },
                    "longDescription": "The value of this property shall be the types of events that subscriptions can subscribe to.  The semantics associated with the enumerations values are defined in the Redfish specification.",
                    "readonly": true,
                    "type": "array"
                },
                "Id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
                    "readonly": true
                },
                "Name": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
                    "readonly": true
                },
                "Oem": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
                    "description": "This is the manufacturer/provider specific extension moniker used to divide the Oem object into sections.",
                    "longDescription": "The value of this string shall be of the format for the reserved word *Oem*."
                },
                "ServiceEnabled": {
                    "description": "This indicates whether this service is enabled.",
                    "longDescription": "The value of this property shall be a boolean indicating whether this service is enabled.",
                    "readonly": false,
                    "type": [
                        "boolean",
                        "null"
                    ]
                },
                "Status": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
                    "description": "This property describes the status and health of the resource and its children.",
                    "longDescription": "This property shall contain any status or health properties of the resource."
                },
                "Subscriptions": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/EventDestinationCollection.json#/definitions/EventDestinationCollection",
                    "description": "This is a reference to a collection of Event Destination resources.",
                    "longDescription": "The value of this property shall contain the link to a collection of type EventDestinationCollection.",
                    "readonly": true
                }
            },
            "required": [
                "@odata.id",
                "@odata.type",
                "Id",
                "Name"
            ],
            "type": "object"
        },
        "OemActions": {
            "additionalProperties": true,
            "description": "The available OEM specific actions for this resource.",
            "longDescription": "This type shall contain any additional OEM actions for this resource.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {},
            "type": "object"
        },
        "SubmitTestEvent": {
            "additionalProperties": false,
            "description": "This action is used to generate a test event.",
            "longDescription": "This action shall add a test event to the event service with the event data specified in the action parameters. This message should then be sent to any appropriate ListenerDestination targets.",
            "parameters": {
                "EventId": {
                    "description": "This is the ID of event to be added.",
                    "longDescription": "This parameter shall have the same semantics as the EventId property in the Event schema for Redfish.",
                    "requiredParameter": true,
                    "type": "string"
                },
                "EventTimestamp": {
                    "description": "This is the time stamp of event to be added.",
                    "format": "date-time",
                    "longDescription": "This parameter shall have the same semantics as the EventTimestamp property in the Event schema for Redfish.",
                    "requiredParameter": true,
                    "type": "string"
                },
                "EventType": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Event.json#/definitions/EventType",
                    "description": "This is the type of event to be added.",
                    "longDescription": "This parameter shall define the property name for which the following allowable values apply."
                },
                "Message": {
                    "description": "This is the human readable message of event to be added.",
                    "longDescription": "This parameter shall have the same semantics as the Message property in the Event schema for Redfish.",
                    "requiredParameter": true,
                    "type": "string"
                },
                "MessageArgs": {
                    "description": "This is the array of message arguments of the event to be added.",
                    "items": {
                        "type": "string"
                    },
                    "longDescription": "This parameter shall have the same semantics as the MessageArgs property in the Event schema for Redfish.",
                    "requiredParameter": true,
                    "type": "array"
                },
                "MessageId": {
                    "description": "This is the message ID of event to be added.",
                    "longDescription": "This parameter shall have the same semantics as the MessageId property in the Event schema for Redfish.",
                    "requiredParameter": true,
                    "type": "string"
                },
                "OriginOfCondition": {
                    "description": "This is the string of the URL within the OriginOfCondition property of the event to be added.  It is not a reference object.",
                    "format": "uri-reference",
                    "longDescription": "This parameter shall be a string that represents the URL contained by the OriginOfCondition property in the Event schema for Redfish.",
                    "requiredParameter": true,
                    "type": "string"
                },
                "Severity": {
                    "description": "This is the Severity of event to be added.",
                    "longDescription": "This parameter shall have the same semantics as the Severity property in the Event schema for Redfish.",
                    "requiredParameter": true,
                    "type": "string"
                }
            },
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "target": {
                    "description": "Link to invoke action",
                    "format": "uri-reference",
                    "type": "string"
                },
                "title": {
                    "description": "Friendly action name",
                    "type": "string"
                }
            },
            "type": "object"
        }
    },
    "owningEntity": "DMTF",
    "release": "1.0",
    "title": "#EventService.v1_0_9.EventService"
}