{
    "$id": "http://redfish.dmtf.org/schemas/v1/EventService.v1_3_2.json",
    "$ref": "#/definitions/EventService",
    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
    "copyright": "Copyright 2014-2020 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": "The available OEM-specific actions for this resource.",
                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
                }
            },
            "type": "object"
        },
        "EventFormatType": {
            "enum": [
                "Event",
                "MetricReport"
            ],
            "enumDescriptions": {
                "Event": "The subscription destination receives JSON bodies of type Event.",
                "MetricReport": "The subscription destination receives JSON bodies of type MetricReport."
            },
            "type": "string"
        },
        "EventService": {
            "additionalProperties": false,
            "description": "The EventService schema contains properties for managing event subscriptions and generates the events sent to subscribers.  The resource has links to the actual collection of subscriptions, which are called event destinations.",
            "longDescription": "This resource shall 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": "This property shall contain the available actions for this resource."
                },
                "DeliveryRetryAttempts": {
                    "description": "The number of times that the POST of an event is retried before the subscription terminates.  This retry occurs at the service level, which means that the HTTP POST to the event destination fails with an HTTP `4XX` or `5XX` status code or an HTTP timeout occurs this many times before the event destination subscription terminates.",
                    "longDescription": "This property shall contain the number of times that the POST of an event is retried before the subscription terminates.  This retry occurs at the service level, which means that the HTTP POST to the event destination fails with an HTTP `4XX` or `5XX` status code or an HTTP timeout occurs this many times before the event destination subscription terminates.",
                    "readonly": false,
                    "type": "integer"
                },
                "DeliveryRetryIntervalSeconds": {
                    "description": "The interval, in seconds, between retry attempts for sending any event.",
                    "longDescription": "This property shall contain the interval, in seconds, between the retry attempts for any event sent 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
                },
                "EventFormatTypes": {
                    "description": "The content types of the message that this service can send to the event destination.",
                    "items": {
                        "anyOf": [
                            {
                                "$ref": "http://redfish.dmtf.org/schemas/v1/EventDestination.json#/definitions/EventFormatType"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "longDescription": "This property shall contain the content types of the message that this service can send to the event destination.  If this property is not present, the EventFormatType shall be assumed to be `Event`.",
                    "readonly": true,
                    "type": "array",
                    "versionAdded": "v1_2_0"
                },
                "EventTypesForSubscription": {
                    "deprecated": "This property has been deprecated.  Starting with Redfish Specification v1.6 (Event v1.3), subscriptions are based on the RegistryPrefix and ResourceType properties and not on the EventType property.",
                    "description": "The types of events to which a client can subscribe.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/Event.json#/definitions/EventType"
                    },
                    "longDescription": "This property shall contain the types of events to which a client can subscribe.  The semantics associated with the enumeration values are defined in the Redfish Specification.",
                    "readonly": true,
                    "type": "array",
                    "versionDeprecated": "v1_3_0"
                },
                "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": "The OEM extension property.",
                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
                },
                "RegistryPrefixes": {
                    "description": "The list of the prefixes of the message registries that can be used for the RegistryPrefix property on a subscription.  If this property is absent or contains an empty array, the service does not support RegistryPrefix-based subscriptions.",
                    "items": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "longDescription": "This property shall contain the array of the prefixes of the message registries that shall be allowed for an event subscription.",
                    "readonly": true,
                    "type": "array",
                    "versionAdded": "v1_2_0"
                },
                "ResourceTypes": {
                    "description": "The list of @odata.type values, or schema names, that can be specified in the ResourceTypes array in a subscription.  If this property is absent or contains an empty array, the service does not support resource type-based subscriptions.",
                    "items": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "longDescription": "This property shall specify an array of the valid @odata.type values that can be used for an event subscription.",
                    "readonly": true,
                    "type": "array",
                    "versionAdded": "v1_2_0"
                },
                "SSEFilterPropertiesSupported": {
                    "$ref": "#/definitions/SSEFilterPropertiesSupported",
                    "description": "The set of properties that are supported in the `$filter` query parameter for the ServerSentEventUri.",
                    "longDescription": "This property shall contain the properties that are supported in the `$filter` query parameter for the URI indicated by the ServerSentEventUri property, as described by the Redfish Specification.",
                    "versionAdded": "v1_2_0"
                },
                "ServerSentEventUri": {
                    "description": "The link to a URI for receiving Server-Sent Event representations for the events that this service generates.",
                    "format": "uri-reference",
                    "longDescription": "This property shall contain a URI that specifies an HTML5 Server-Sent Event-conformant endpoint.",
                    "readonly": true,
                    "type": "string",
                    "versionAdded": "v1_1_0"
                },
                "ServiceEnabled": {
                    "description": "An indication of whether this service is enabled.",
                    "longDescription": "This property shall indicate whether this service is enabled.",
                    "readonly": false,
                    "type": [
                        "boolean",
                        "null"
                    ]
                },
                "Status": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
                    "description": "The status and health of the resource and its subordinate or dependent resources.",
                    "longDescription": "This property shall contain any status or health properties of the resource."
                },
                "SubordinateResourcesSupported": {
                    "description": "An indication of whether the service supports the SubordinateResource property on both event subscriptions and generated events.",
                    "longDescription": "This property shall indicate whether the service supports the SubordinateResource property on both event subscriptions and generated events.",
                    "readonly": true,
                    "type": [
                        "boolean",
                        "null"
                    ],
                    "versionAdded": "v1_2_0"
                },
                "Subscriptions": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/EventDestinationCollection.json#/definitions/EventDestinationCollection",
                    "description": "The link to a collection of event destinations.",
                    "longDescription": "This property shall contain the link to a resource 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 the available OEM-specific 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"
        },
        "SSEFilterPropertiesSupported": {
            "additionalProperties": false,
            "description": "The set of properties that are supported in the `$filter` query parameter for the ServerSentEventUri.",
            "longDescription": "The type shall contain a set of properties that are supported in the `$filter` query parameter for the URI indicated by the ServerSentEventUri property, as described by the Redfish Specification.",
            "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": {
                "EventFormatType": {
                    "description": "An indication of whether the service supports filtering by the EventFormatType property.",
                    "longDescription": "This property shall indicate whether this service supports filtering by the EventFormatType property.",
                    "readonly": true,
                    "type": "boolean",
                    "versionAdded": "v1_2_0"
                },
                "EventType": {
                    "deprecated": "This property has been deprecated.  Starting with Redfish Specification v1.6 (Event v1.3), subscriptions are based on the RegistryPrefix and ResourceType properties and not on the EventType property.",
                    "description": "An indication of whether the service supports filtering by the EventType property.",
                    "longDescription": "This property shall indicate whether this service supports filtering by the EventType property.",
                    "readonly": true,
                    "type": "boolean",
                    "versionAdded": "v1_2_0",
                    "versionDeprecated": "v1_3_0"
                },
                "MessageId": {
                    "description": "An indication of whether the service supports filtering by the MessageId property.",
                    "longDescription": "This property shall indicate whether this service supports filtering by the MessageId property.",
                    "readonly": true,
                    "type": "boolean",
                    "versionAdded": "v1_2_0"
                },
                "MetricReportDefinition": {
                    "description": "An indication of whether the service supports filtering by the MetricReportDefinition property.",
                    "longDescription": "This property shall indicate whether this service supports filtering by the MetricReportDefinition property.",
                    "readonly": true,
                    "type": "boolean",
                    "versionAdded": "v1_2_0"
                },
                "OriginResource": {
                    "description": "An indication of whether the service supports filtering by the OriginResource property.",
                    "longDescription": "This property shall indicate whether this service supports filtering by the OriginResource property.",
                    "readonly": true,
                    "type": "boolean",
                    "versionAdded": "v1_2_0"
                },
                "RegistryPrefix": {
                    "description": "An indication of whether the service supports filtering by the RegistryPrefix property.",
                    "longDescription": "This property shall indicate whether this service supports filtering by the RegistryPrefix property.",
                    "readonly": true,
                    "type": "boolean",
                    "versionAdded": "v1_2_0"
                },
                "ResourceType": {
                    "description": "An indication of whether the service supports filtering by the ResourceType property.",
                    "longDescription": "This property shall indicate whether this service supports filtering by the ResourceType property.",
                    "readonly": true,
                    "type": "boolean",
                    "versionAdded": "v1_2_0"
                }
            },
            "type": "object"
        },
        "SubmitTestEvent": {
            "additionalProperties": false,
            "description": "This action generates a test event.",
            "longDescription": "This action shall add a test event to the event service with the event data specified in the action parameters.  Then, this message should be sent to any appropriate event destinations.",
            "parameters": {
                "EventGroupId": {
                    "description": "The group identifier for the event.",
                    "longDescription": "The parameter shall contain the group identifier for the event.  It has the same semantics as the EventGroupId property in the Event schema for Redfish.",
                    "type": "integer",
                    "versionAdded": "v1_3_0"
                },
                "EventId": {
                    "description": "The ID for the event to add.",
                    "longDescription": "This parameter shall have the same semantics as the EventId property in the Event schema for Redfish.  A service may ignore this value and replace it with its own.",
                    "type": "string"
                },
                "EventTimestamp": {
                    "description": "The date and time for the event to add.",
                    "format": "date-time",
                    "longDescription": "This parameter shall contain the date and time for the event to add and have the same semantics as the EventTimestamp property in the Event schema for Redfish.",
                    "type": "string"
                },
                "EventType": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Event.json#/definitions/EventType",
                    "deprecated": "This parameter has been deprecated.  Starting with Redfish Specification v1.6 (Event v1.3), subscriptions are based on the RegistryPrefix and ResourceType properties and not on the EventType property.",
                    "description": "The type for the event to add.",
                    "longDescription": "This parameter shall contain the property name for which the following allowable values apply.",
                    "versionDeprecated": "v1_3_0"
                },
                "Message": {
                    "description": "The human-readable message for the event to add.",
                    "longDescription": "This parameter shall have the same semantics as the Message property in the Event schema for Redfish.",
                    "type": "string"
                },
                "MessageArgs": {
                    "description": "An array of message arguments for the event to add.",
                    "items": {
                        "type": "string"
                    },
                    "longDescription": "This parameter shall have the same semantics as the MessageArgs property in the Event schema for Redfish.",
                    "type": "array"
                },
                "MessageId": {
                    "description": "The MessageId for the event to add.",
                    "longDescription": "This parameter shall contain the MessageId for the event to add and have the same semantics as the MessageId property in the Event schema for Redfish.",
                    "requiredParameter": true,
                    "type": "string"
                },
                "OriginOfCondition": {
                    "description": "The URL in the OriginOfCondition property of the event to add.  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.",
                    "type": "string"
                },
                "Severity": {
                    "description": "The severity for the event to add.",
                    "longDescription": "This parameter shall contain the severity for the event to add and have the same semantics as the Severity property in the Event schema for Redfish.",
                    "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": "2019.1",
    "title": "#EventService.v1_3_2.EventService"
}