diff --git a/schemas/data-ingress/message-envelope.json b/schemas/data-ingress/message-envelope.json new file mode 100644 index 0000000..c644208 --- /dev/null +++ b/schemas/data-ingress/message-envelope.json @@ -0,0 +1,32 @@ +{ + "$id": "https://schema.owlboard.info/data-ingress/message-envelope.schema.json", + "$schema": "https://json-schema.org/draft-07/schema#", + "title": "MessageEnvelope", + "type": "object", + "properties": { + "service_name": { + "type": "string", + "description": "Name of the service submitting the update" + }, + "service_id": { + "type": "string", + "description": "ID of the service sending the message - usually a hostname" + }, + "data_type": { + "type": "string", + "enum": ["file"], + "description": "The type of data contained in this message object" + }, + "sent_timestamp": { + "type": "integer", + "description": "Unix timestamp representing the time the message was sent" + }, + "data_kind": { + "type": "string", + "enum": ["pis", "timetable", "knowledgebase"], + "description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data" + } + }, + "required": ["service_name", "service_id", "data_type", "sent_timestamp"], + "additionalProperties": true +} \ No newline at end of file