DRIVR Event MQTT API for Connectors 1.1.0

This page provides an overview of all MQTT topics that can be used for on-device error/informational event management. This allows you to retrieve Event information and states as well as Create, Update, Acknowledge Events within DRIVR. Each input topic, or topic where you can publish a message, has a corresponding topic ending with /error. This can be used for debugging and error handling purposes as DRIVR will return error messages which might occur. PLEASE NOTE: For comprehensive explanations of terms such as Domain, System, Component, Event, Service, Characteristic, and others used in this document, please refer to Terms.

Servers

  • mqtt://mqtt.drivr.cloud:{port}/secure-mqtt 3.1.1drivr-mqtt-broker

    DRIVR MQTT Broker

    object
    port
    required
    string
    Default value:"8883"
      Allowed values:
    • "8883"

Operations

  • SUB drivr/v1/{slug}/eventModels/{eventModelUuid}

    Subscribe for updates on the EventModel within a given Domain using the eventModelUuid. An EventModel is a prototype defining the structure of a specific type of `Event``.

    Operation IDgetEventModelInformation

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    eventModelUuid
    required
    string
    format: uuid

    The unique UUID of the EventModel within DRIVR. An EventModel acts as a template for DRIVR Events and is used to model an Event on different types of entities. They outline severity level, the type of Event, and define to which type of DRIVR entities an Event can be linked to (e.g. a Component, System).

      Examples values:
    • "24ee14a3-f1c8-49aa-95fc-ad0432e23b99"
    object

    Accepts the following message:

    EventModelInformation<anonymous-message-1>
    Message ID<anonymous-message-1>

    The current information which is stored for the EventModel within DRIVR. Information is retained until the EventModel is deleted.

    object [EventModelParameters]

    Examples

  • SUB drivr/v1/{slug}/eventModels/{eventModelUuid}/state

    Subscribe for updates on the current state of the EventModel using the eventModelUuid. The state of the EventModel can be CREATED, ACTIVATED, DEACTIVATED, ARCHIVED, DELETED. Once the EventModel's state is DELETED, the EventModel is no longer accessible.

    Operation IDgetEventModelState

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    eventModelUuid
    required
    string
    format: uuid

    The unique UUID of the EventModel within DRIVR. An EventModel acts as a template for DRIVR Events and is used to model an Event on different types of entities. They outline severity level, the type of Event, and define to which type of DRIVR entities an Event can be linked to (e.g. a Component, System).

      Examples values:
    • "24ee14a3-f1c8-49aa-95fc-ad0432e23b99"
    object

    Accepts the following message:

    EventModelMqttState<anonymous-message-2>
    Message ID<anonymous-message-2>

    The current state of the EventModel. If the state is set to DELETED the EventModel MQTT topics and all information within will be deleted.

    Payload
    string

    The state of the object as presented within MQTT.

      Allowed values:
    • "CREATED"
    • "ACTIVATED"
    • "DEACTIVATED"
    • "ARCHIVED"
    • "DELETED"
      Examples values:
    • "CREATED"
    • "ACTIVATED"
    • "DEACTIVATED"
    • "ARCHIVED"
    • "DELETED"

    Examples

  • SUB drivr/v1/{slug}/systems/{systemUuid}/events/{eventUuid}

    Subscribe for updates on an Event using it's eventUuid assigned directly to the provided System using the systemUuid within a given domain. An Event is a message which is published by a System to indicate a change in state or a specific occurrence. Retains any currently ACTIVE RANGED events.

    Operation IDgetSystemEventInformation

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    systemUuid
    required
    string
    format: uuid

    The unique UUID of the System within DRIVR.

      Examples values:
    • "24ee14a3-f1c8-49aa-95fc-ad0432e23b99"
    eventUuid
    required
    string
    format: uuid

    The unique UUID of the Event within DRIVR.

      Examples values:
    • "90525c81-88f7-4fd9-8e10-54ee353cad7d"
    object

    Accepts the following message:

    EventInformation<anonymous-message-3>
    Message ID<anonymous-message-3>

    General information about an Event in DRIVR. Information is retained while Event has an ACTIVE state.

    object [EventInformation]

    Examples

  • SUB drivr/v1/{slug}/systems/{systemUuid}/events/{eventUuid}/state

    Subscribe for updates on the current state of the Event using the eventUuid assigned to the System using the systemUuid within a given domain. A state of the event can be ACTIVE, RESOLVED. Only emitted for RANGED events. Retained if the status is ACTIVE.

    Operation IDgetSystemEventState

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    systemUuid
    required
    string
    format: uuid

    The unique UUID of the System within DRIVR.

      Examples values:
    • "24ee14a3-f1c8-49aa-95fc-ad0432e23b99"
    eventUuid
    required
    string
    format: uuid

    The unique UUID of the Event within DRIVR.

      Examples values:
    • "90525c81-88f7-4fd9-8e10-54ee353cad7d"
    object

    Accepts the following message:

    EventMqttState<anonymous-message-4>
    Message ID<anonymous-message-4>

    The current state of the Event. Retained if ACTIVE

    Payload
    string
      Examples values:
    • "ACTIVE"
    • "RESOLVED"

    Examples

  • SUB drivr/v1/{slug}/systems/{systemUuid}/events/{eventUuid}/ack

    Subscribe for updates on the acknowledgements of an Event for a system within a given domain. The System is identified by it's systemUuid and the associated Event for the acknowledgement by the eventUuid. An acknowledge is a message published by a user to indicate that they have seen the Event. Since an Event can be acknowledged by multiple people, this topic provides information if multiple users acknowledge the event.

    Operation IDgetSystemEventAck

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    systemUuid
    required
    string
    format: uuid

    The unique UUID of the System within DRIVR.

      Examples values:
    • "24ee14a3-f1c8-49aa-95fc-ad0432e23b99"
    eventUuid
    required
    string
    format: uuid

    The unique UUID of the Event within DRIVR.

      Examples values:
    • "90525c81-88f7-4fd9-8e10-54ee353cad7d"
    object

    Accepts the following message:

    EventAck<anonymous-message-5>
    Message ID<anonymous-message-5>

    A message describing a User to acknowledge an Event. Information is not retained.

    object [EventAckInformation]

    Examples

  • SUB drivr/v1/{slug}/systems/{systemUuid}/components/{componentCode}/events/{eventUuid}

    Subscribe for updates on the Event using eventUuid assigned to the referenced Component using componentCode in a System using systemUuid within a domain. Retains any currently ACTIVE RANGED events.

    Operation IDgetComponentEventInformation

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    systemUuid
    required
    string
    format: uuid

    The unique UUID of the System within DRIVR.

      Examples values:
    • "24ee14a3-f1c8-49aa-95fc-ad0432e23b99"
    componentCode
    required
    string

    A uniquely identifiable code of an ACTIVATED Component within a DRIVR System.

      Examples values:
    • "death-star-laser"
    • "ocean-evaporation-component"
    • "flood-creation-entity"
    eventUuid
    required
    string
    format: uuid

    The unique UUID of the Event within DRIVR.

      Examples values:
    • "90525c81-88f7-4fd9-8e10-54ee353cad7d"
    object

    Accepts the following message:

    EventInformation<anonymous-message-3>
    Message ID<anonymous-message-3>

    General information about an Event in DRIVR. Information is retained while Event has an ACTIVE state.

    object [EventInformation]

    Examples

  • SUB drivr/v1/{slug}/systems/{systemUuid}/components/{componentCode}/events/{eventUuid}/state

    Subscribe for updates on the current state of the Event using eventUuid within Component using componentCode of a System using systemUuid within a domain. A state of the event can be ACTIVE, RESOLVED. Only emitted for RANGED events. Retained if the status is ACTIVE.

    Operation IDgetComponentEventState

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    systemUuid
    required
    string
    format: uuid

    The unique UUID of the System within DRIVR.

      Examples values:
    • "24ee14a3-f1c8-49aa-95fc-ad0432e23b99"
    componentCode
    required
    string

    A uniquely identifiable code of an ACTIVATED Component within a DRIVR System.

      Examples values:
    • "death-star-laser"
    • "ocean-evaporation-component"
    • "flood-creation-entity"
    eventUuid
    required
    string
    format: uuid

    The unique UUID of the Event within DRIVR.

      Examples values:
    • "90525c81-88f7-4fd9-8e10-54ee353cad7d"
    object

    Accepts the following message:

    EventMqttState<anonymous-message-4>
    Message ID<anonymous-message-4>

    The current state of the Event. Retained if ACTIVE

    Payload
    string
      Examples values:
    • "ACTIVE"
    • "RESOLVED"

    Examples

  • SUB drivr/v1/{slug}/systems/{systemUuid}/components/{componentCode}/events/{eventUuid}/ack

    Subscribe for updates on the Event using eventUuid is acknowledged for a reference Component using componentCode in a System within a domain. An ack i.e acknowledgement is a message which is published by a user to indicate that they have seen the Event. As an Event can be acknowledged by multiple people this topic has more information if multiple users acknowledge the event. This information is not retained.

    Operation IDgetComponentEventAck

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    systemUuid
    required
    string
    format: uuid

    The unique UUID of the System within DRIVR.

      Examples values:
    • "24ee14a3-f1c8-49aa-95fc-ad0432e23b99"
    componentCode
    required
    string

    A uniquely identifiable code of an ACTIVATED Component within a DRIVR System.

      Examples values:
    • "death-star-laser"
    • "ocean-evaporation-component"
    • "flood-creation-entity"
    eventUuid
    required
    string
    format: uuid

    The unique UUID of the Event within DRIVR.

      Examples values:
    • "90525c81-88f7-4fd9-8e10-54ee353cad7d"
    object

    Accepts the following message:

    EventAck<anonymous-message-5>
    Message ID<anonymous-message-5>

    A message describing a User to acknowledge an Event. Information is not retained.

    object [EventAckInformation]

    Examples

  • PUB drivr/v1/{slug}/input/event/json

    Publishes the events by connectors. Only entities which are allowed to manipulate an entire Domain can use this topic. This topic is intended for other Applications which are sending data from multiple systems. Compared to adding the issuerUuid in the topic it can be added in the payload. If not set, issuerUuid will not be recorded or set. If a uuid is set in the payload, the event with it will be updated. The data payload is expected to be JSON.

    Operation IDpublishGlobalEventJson

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"

    Accepts the following message:

    GlobalEventInputWithIssuer<anonymous-message-6>
    Message ID<anonymous-message-6>

    The payload to be processed by DRIVR to import Events on the global MQTT endpoints. Allows to additionally record an issuerUuid in the payload and is intended for Connectors, Systems and mass data processing. The EventModel can be specified via either its uuid or code. Existing Events within DRIVR get updated if uuid is set or the Event can be identified via the exact time and either the eventModelUuid or eventModelCode

    oneOf

    Examples

  • SUB drivr/v1/{slug}/input/event/json/error

    Subscribe to get validation errors which occur during processing on the parent topic({slug}/input/event/json) based on the provided slug for the domain. The data payload is expected to be in the JSON format.

    Operation IDsubscribe

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"

    Accepts the following message:

    ValidationError<anonymous-message-7>
    Message ID<anonymous-message-7>

    An error message from the server.

    object [ValidationError]

    Examples

  • PUB drivr/v1/{slug}/input/event/msgpack

    Publishes the events by connectors. Only entities which are allowed to manipulate an entire Domain can use this topic. This topic is intended for other Applications which are sending data from multiple systems. Compared to adding the issuerUuid in the topic it can be added in the payload. If not set, issuerUuid will not be recorded or set. If a uuid is set in the payload, the event with it will be updated. The data payload is expected to be in the msgpack format.

    Operation IDpublishGlobalEventMsgpack

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"

    Accepts the following message:

    GlobalEventInputWithIssuer<anonymous-message-6>
    Message ID<anonymous-message-6>

    The payload to be processed by DRIVR to import Events on the global MQTT endpoints. Allows to additionally record an issuerUuid in the payload and is intended for Connectors, Systems and mass data processing. The EventModel can be specified via either its uuid or code. Existing Events within DRIVR get updated if uuid is set or the Event can be identified via the exact time and either the eventModelUuid or eventModelCode

    oneOf

    Examples

  • SUB drivr/v1/{slug}/input/event/msgpack/error

    Subscribe to get validation errors which occur during processing on the parent topic(drivr/v1/{slug}/input/event/msgpack) based on the provided slug for the domain. The data payload is expected to be in the msgpack format.

    Operation IDsubscribe

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"

    Accepts the following message:

    ValidationError<anonymous-message-7>
    Message ID<anonymous-message-7>

    An error message from the server.

    object [ValidationError]

    Examples

  • PUB drivr/v1/{slug}/input/event/json/{issuerUuid}

    Publishes the events by connectors. Only entities which are allowed to manipulate an entire Domain can use this topic. This topic is intended for other Applications which are sending data from multiple systems. Compared to adding the issuerUuid in the topic it can be added in the payload. If not set, issuerUuid will not be recorded or set. If a uuid is set in the payload, the event with it will be updated. The data payload is expected to be JSON.

    Operation IDpublishGlobalEventJsonWithIssuer

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    issuerUuid
    required
    string
    format: uuid

    The unique UUID of the User or System of the entity in DRIVR which issues the change.

      Examples values:
    • "f5b7c457-b6f8-4eb2-9bbe-9c7a81f22bea"

    Accepts the following message:

    GlobalEventInput<anonymous-message-8>
    Message ID<anonymous-message-8>

    The payload to be processed by DRIVR to import Events on the global MQTT endpoints.

    oneOf

    Examples

  • SUB drivr/v1/{slug}/input/event/json/{issuerUuid}/error

    Subscribe to get validation errors which occur during processing on the parent topic(drivr/v1/{slug}/input/event/json/{issuerUuid}) based on the provided slug for the domain using the issuerUuid. A issuerUuid is a unique identifier for the issuer of the event. The data payload is expected to be in the JSON format.

    Operation IDsubscribe

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    issuerUuid
    required
    string
    format: uuid

    The unique UUID of the User or System of the entity in DRIVR which issues the change.

      Examples values:
    • "f5b7c457-b6f8-4eb2-9bbe-9c7a81f22bea"

    Accepts the following message:

    ValidationError<anonymous-message-7>
    Message ID<anonymous-message-7>

    An error message from the server.

    object [ValidationError]

    Examples

  • PUB drivr/v1/{slug}/input/event/msgpack/{issuerUuid}

    Publishes events by connectors. Only entities which are allowed to manipulate a complete Domain can use this topic. This topic is intended for other Applications which are sending data from multiple systems. Compared to adding the issuerUuid in the topic it can be added in the payload. If not set, issuerUuid will not be recorded or set. If a uuid is set in the payload, the event with it will be updated. The data payload is expected to be in the msgpack format.

    Operation IDpublishGlobalEventMsgpackWithIssuer

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    issuerUuid
    required
    string
    format: uuid

    The unique UUID of the User or System of the entity in DRIVR which issues the change.

      Examples values:
    • "f5b7c457-b6f8-4eb2-9bbe-9c7a81f22bea"

    Accepts the following message:

    GlobalEventInput<anonymous-message-8>
    Message ID<anonymous-message-8>

    The payload to be processed by DRIVR to import Events on the global MQTT endpoints.

    oneOf

    Examples

  • SUB drivr/v1/{slug}/input/event/msgpack/{issuerUuid}/error

    Subscribe to get validation errors which occur during processing on the parent topic(drivr/v1/{slug}/input/event/msgpack/{issuerUuid}) based on the provided slug for the domain using the issuerUuid. A issuerUuid is a unique identifier for the issuer of the event. The data payload is expected to be in the msgpack format.

    Operation IDsubscribe

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    issuerUuid
    required
    string
    format: uuid

    The unique UUID of the User or System of the entity in DRIVR which issues the change.

      Examples values:
    • "f5b7c457-b6f8-4eb2-9bbe-9c7a81f22bea"

    Accepts the following message:

    ValidationError<anonymous-message-7>
    Message ID<anonymous-message-7>

    An error message from the server.

    object [ValidationError]

    Examples

  • PUB drivr/v1/{slug}/input/event/ack/json

    Publish EventAcks by Connectors. Only entities which are allowed to manipulate a complete Domain can use this topic. This topic is intended for other Applications which are sending data from multiple Systems. Compared to adding the issuerUuid in the topic it can be added in the payload. If not set, issuerUuid will not be recorded or set. The data payload is expected to be JSON.

    Operation IDpublishGlobalEventAckJson

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"

    Accepts the following message:

    GlobalEventAckInputWithIssuer<anonymous-message-9>
    Message ID<anonymous-message-9>

    The payload to be processed by DRIVR to import EventAcks on the global MQTT endpoints. Allows to additionally record an issuerUuid in the payload and is intended for Connectors and mass data processing.

    oneOf

    Examples

  • SUB drivr/v1/{slug}/input/event/ack/json/error

    Subscribe to get the errors which occur during processing on the parent topic (drivr/v1/{slug}/input/event/ack/json) of event acknowledge. The data payload is expected to be in the JSON format.

    Operation IDsubscribe

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"

    Accepts the following message:

    ValidationError<anonymous-message-7>
    Message ID<anonymous-message-7>

    An error message from the server.

    object [ValidationError]

    Examples

  • PUB drivr/v1/{slug}/input/event/ack/msgpack

    Publish EventAcks by Connectors. Only entities which are allowed to manipulate a complete Domain can use this topic. This topic is intended for other Applications which are sending data from multiple Systems. Compared to adding the issuerUuid in the topic it can be added in the payload. If not set, issuerUuid will not be recorded or set. The data payload is expected to be in the msgpack format.

    Operation IDpublishGlobalEventAckMsgpack

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"

    Accepts the following message:

    GlobalEventAckInputWithIssuer<anonymous-message-9>
    Message ID<anonymous-message-9>

    The payload to be processed by DRIVR to import EventAcks on the global MQTT endpoints. Allows to additionally record an issuerUuid in the payload and is intended for Connectors and mass data processing.

    oneOf

    Examples

  • SUB drivr/v1/{slug}/input/event/ack/msgpack/error

    Subscribe to get the errors which occur during processing on the parent topic (drivr/v1/{slug}/input/event/ack/msgpack) of event acknowledge. The data payload is expected to be in the msgpack format.

    Operation IDsubscribe

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"

    Accepts the following message:

    ValidationError<anonymous-message-7>
    Message ID<anonymous-message-7>

    An error message from the server.

    object [ValidationError]

    Examples

  • PUB drivr/v1/{slug}/input/event/ack/json/{issuerUuid}

    Publish EventAcks by Connectors. Only entities which are allowed to manipulate a complete Domain can use this topic. This topic is intended for other Applications which are sending data from multiple Systems. Compared to adding the issuerUuid in the topic it can be added in the payload. If not set, issuerUuid will not be recorded or set. The data payload is expected to be JSON.

    Operation IDpublishGlobalEventAckJsonWithIssuer

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    issuerUuid
    required
    string
    format: uuid

    The unique UUID of the User or System of the entity in DRIVR which issues the change.

      Examples values:
    • "f5b7c457-b6f8-4eb2-9bbe-9c7a81f22bea"

    Accepts the following message:

    GlobalEventAckInput<anonymous-message-10>
    Message ID<anonymous-message-10>

    The payload to be processed by DRIVR to import EventAcks on the global MQTT endpoints.

    oneOf

    Examples

  • SUB drivr/v1/{slug}/input/event/ack/json/{issuerUuid}/error

    Subscribe to get the errors which occur during processing on the parent topic (drivr/v1/{slug}/input/event/ack/json/{issuerUuid}) of event acknowledge using the issuerUuid. The data payload is expected to be in the JSON format.

    Operation IDsubscribe

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    issuerUuid
    required
    string
    format: uuid

    The unique UUID of the User or System of the entity in DRIVR which issues the change.

      Examples values:
    • "f5b7c457-b6f8-4eb2-9bbe-9c7a81f22bea"

    Accepts the following message:

    ValidationError<anonymous-message-7>
    Message ID<anonymous-message-7>

    An error message from the server.

    object [ValidationError]

    Examples

  • PUB drivr/v1/{slug}/input/event/ack/msgpack/{issuerUuid}

    Publish EventAcks by Connectors. Only entities which are allowed to manipulate a complete Domain can use this topic. This topic is intended for other Applications which are sending data from multiple Systems. Compared to adding the issuerUuid in the topic it can be added in the payload. If not set, issuerUuid will not be recorded or set. The data payload is expected to be in the msgpack format.

    Operation IDpublishGlobalEventAckMsgpackWithIssuer

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    issuerUuid
    required
    string
    format: uuid

    The unique UUID of the User or System of the entity in DRIVR which issues the change.

      Examples values:
    • "f5b7c457-b6f8-4eb2-9bbe-9c7a81f22bea"

    Accepts the following message:

    GlobalEventAckInput<anonymous-message-10>
    Message ID<anonymous-message-10>

    The payload to be processed by DRIVR to import EventAcks on the global MQTT endpoints.

    oneOf

    Examples

  • SUB drivr/v1/{slug}/input/event/ack/msgpack/{issuerUuid}/error

    Subscribe to get the errors which occur during processing on the parent topic (drivr/v1/{slug}/input/event/ack/msgpack/{issuerUuid}) of event acknowledge using the issuerUuid. The data payload is expected to be in the msgpack format.

    Operation IDsubscribe

    Available only on servers:

    object
    slug
    required
    string

    The slug of your individual Domain.

      Examples values:
    • "adam"
    • "eve"
    issuerUuid
    required
    string
    format: uuid

    The unique UUID of the User or System of the entity in DRIVR which issues the change.

      Examples values:
    • "f5b7c457-b6f8-4eb2-9bbe-9c7a81f22bea"

    Accepts the following message:

    ValidationError<anonymous-message-7>
    Message ID<anonymous-message-7>

    An error message from the server.

    object [ValidationError]

    Examples