OpenADR Alliance MQTT Notifier API

The MQTT_notifier API from OpenADR Alliance — 12 operation(s) for mqtt_notifier.

Operations 12

GET /notifiers/mqtt/topics/programs List all MQTT notifier topic names for operations on programs #
GET /notifiers/mqtt/topics/programs/{programID} List all MQTT binding topic names for operations on a program #
GET /notifiers/mqtt/topics/events List all MQTT binding topic names for operations on all events #
GET /notifiers/mqtt/topics/programs/{programID}/events List all MQTT binding topic names for operations on events for a program #
GET /notifiers/mqtt/topics/reports List all MQTT binding topic names for operations on all reports #
GET /notifiers/mqtt/topics/subscriptions List all MQTT binding topic names for operations on all subscriptions #
GET /notifiers/mqtt/topics/vens List all MQTT binding topic names for operations on vens #
GET /notifiers/mqtt/topics/vens/{venID} List all MQTT binding topic names for operations on a ven #
GET /notifiers/mqtt/topics/resources List all MQTT binding topic names for operations on resources #
GET /notifiers/mqtt/topics/vens/{venID}/events List all MQTT binding topic names for operations on events targeted for a ven #
GET /notifiers/mqtt/topics/vens/{venID}/programs List all MQTT binding topic names for operations on programs targeted for a ven #
GET /notifiers/mqtt/topics/vens/{venID}/resources List all MQTT binding topic names for operations on resources for a ven #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/openadr-alliance-mqtt-notifier-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

openadr-alliance-mqtt-notifier-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Openadr Alliance MQTT Notifier API
  version: 1.0.0
  contact:
    email: info@openadr.org
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  description: 'Operations tagged MQTT_notifier across 2 of this provider''s published API definitions: openadr-3-1-0-openapi.yaml, openadr-3-1-1-openapi.yaml. Each path carries the servers of the definition it was published in.'
servers:
- description: SwaggerHub API Auto Mocking
  url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
tags:
- name: MQTT_notifier
paths:
  /notifiers/mqtt/topics/programs:
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT notifier topic names for operations on programs

        '
      description: 'List all MQTT notifier topic names for operations on programs

        '
      operationId: listAllMqttNotifierTopicsPrograms
      security:
      - oAuth2ClientCredentials:
        - read_all
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
  /notifiers/mqtt/topics/programs/{programID}:
    parameters:
    - name: programID
      in: path
      schema:
        $ref: '#/components/schemas/objectID'
      required: true
      description: objectID of the program object
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT binding topic names for operations on a program

        '
      description: 'List all MQTT binding topic names for operations on a program

        '
      operationId: listAllMqttNotifierTopicsProgram
      security:
      - oAuth2ClientCredentials:
        - read_all
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
  /notifiers/mqtt/topics/events:
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT binding topic names for operations on all events

        '
      description: 'List all MQTT binding topic names for operations on all events

        '
      operationId: listAllMqttNotifierTopicsEvents
      security:
      - oAuth2ClientCredentials:
        - read_bl
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
  /notifiers/mqtt/topics/programs/{programID}/events:
    parameters:
    - name: programID
      in: path
      schema:
        $ref: '#/components/schemas/objectID'
      required: true
      description: Object ID of the program object
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT binding topic names for operations on events for a program

        '
      description: 'List all MQTT binding topic names for operations on events for a program

        '
      operationId: listAllMqttNotifierTopicsProgramEvents
      security:
      - oAuth2ClientCredentials:
        - read_all
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
  /notifiers/mqtt/topics/reports:
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT binding topic names for operations on all reports

        '
      description: 'List all MQTT binding topic names for operations on all reports

        '
      operationId: listAllMqttNotifierTopicsReports
      security:
      - oAuth2ClientCredentials:
        - read_bl
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
  /notifiers/mqtt/topics/subscriptions:
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT binding topic names for operations on all subscriptions

        '
      description: 'List all MQTT binding topic names for operations on all subscriptions

        '
      operationId: listAllMqttNotifierTopicsSubscriptions
      security:
      - oAuth2ClientCredentials:
        - read_bl
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
  /notifiers/mqtt/topics/vens:
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT binding topic names for operations on vens

        '
      description: 'List all MQTT binding topic names for operations on vens

        '
      operationId: listAllMqttNotifierTopicsVens
      security:
      - oAuth2ClientCredentials:
        - read_bl
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
  /notifiers/mqtt/topics/vens/{venID}:
    parameters:
    - name: venID
      in: path
      schema:
        $ref: '#/components/schemas/objectID'
      required: true
      description: venID of the vens object
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT binding topic names for operations on a ven

        '
      description: 'List all MQTT binding topic names for operations on a ven

        '
      operationId: listAllMqttNotifierTopicsVen
      security:
      - oAuth2ClientCredentials:
        - read_ven_objects
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
  /notifiers/mqtt/topics/resources:
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT binding topic names for operations on resources

        '
      description: 'List all MQTT binding topic names for operations on resources

        '
      operationId: listAllMqttNotifierTopicsResources
      security:
      - oAuth2ClientCredentials:
        - read_bl
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
  /notifiers/mqtt/topics/vens/{venID}/events:
    parameters:
    - name: venID
      in: path
      schema:
        $ref: '#/components/schemas/objectID'
      required: true
      description: object ID of the ven object
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT binding topic names for operations on events targeted for a ven

        '
      description: 'List all MQTT binding topic names for operations on events targated for a ven

        '
      operationId: listAllMqttNotifierTopicsVenEvents
      security:
      - oAuth2ClientCredentials:
        - read_ven_objects
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
  /notifiers/mqtt/topics/vens/{venID}/programs:
    parameters:
    - name: venID
      in: path
      schema:
        $ref: '#/components/schemas/objectID'
      required: true
      description: object ID of the ven object
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT binding topic names for operations on programs targeted for a ven

        '
      description: 'List all MQTT binding topic names for operations on programs targeted for a ven

        '
      operationId: listAllMqttNotifierTopicsVenPrograms
      security:
      - oAuth2ClientCredentials:
        - read_ven_objects
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
  /notifiers/mqtt/topics/vens/{venID}/resources:
    parameters:
    - name: venID
      in: path
      schema:
        $ref: '#/components/schemas/objectID'
      required: true
      description: object ID of the ven object
    get:
      tags:
      - MQTT_notifier
      summary: 'List all MQTT binding topic names for operations on resources for a ven

        '
      description: 'List all MQTT binding topic names for operations on resources for a ven

        '
      operationId: listAllMqttNotifierTopicsVenResources
      security:
      - oAuth2ClientCredentials:
        - read_ven_objects
      - bearerAuth: []
      responses:
        '200':
          $ref: '#/components/responses/notifiersTopicsResponse'
        '400':
          $ref: '#/components/responses/badRequest'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/notFound'
        '500':
          $ref: '#/components/responses/internalServerError'
    servers:
    - description: SwaggerHub API Auto Mocking
      url: https://virtserver.swaggerhub.com/OPENADR3_1/openADR3.1.0/1.0.0
components:
  responses:
    forbidden:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/problem'
    notifiersTopicsResponse:
      description: OK
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/notifierTopicsResponse'
    notFound:
      description: The specified resource was not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/problem'
    internalServerError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/problem'
    unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/problem'
    badRequest:
      description: The request is malformed or invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/problem'
  schemas:
    problem:
      type: object
      description: 'reusable error response. From https://opensource.zalando.com/problem/schema.yaml.

        '
      properties:
        type:
          type: string
          format: uri
          minLength: 2
          maxLength: 8000
          description: 'An absolute URI that identifies the problem type.

            When dereferenced, it SHOULD provide human-readable documentation for the problem type

            (e.g., using HTML).

            '
          default: about:blank
          example: https://zalando.github.io/problem/constraint-violation
        title:
          type: string
          description: 'A short, summary of the problem type. Written in english and readable

            for engineers (usually not suited for non technical stakeholders and

            not localized); example: Service Unavailable.

            '
        status:
          type: integer
          format: int32
          description: 'The HTTP status code generated by the origin server for this occurrence

            of the problem.

            '
          minimum: 100
          example: 503
          exclusiveMaximum: 600
        detail:
          type: string
          description: 'A human readable explanation specific to this occurrence of the

            problem.

            '
          example: Connection to database timed out
        instance:
          type: string
          minLength: 3
          maxLength: 8000
          format: uri
          description: 'An absolute URI that identifies the specific occurrence of the problem.

            It may or may not yield further information if dereferenced.

            '
    notifierTopicsResponse:
      type: object
      required:
      - topics
      properties:
        topics:
          $ref: '#/components/schemas/notifierOperationsTopics'
    objectID:
      type: string
      pattern: ^[a-zA-Z0-9_-]*$
      minLength: 1
      maxLength: 128
      description: URL safe VTN assigned object ID.
      example: object-999
    notifierOperationsTopics:
      type: object
      description: MQTT notifier topic names for notifications of subscribable-object operations
      required:
      - UPDATE
      - DELETE
      properties:
        CREATE:
          type: string
          description: "'Topic path for CREATE operations,\n not provided for notifications for a specific object ID,\n e.g. until programID foo is created, clients unable to\n request notifications of its creation'\n"
          example: '{objectType}s/create'
        UPDATE:
          type: string
          description: Topic path for UPDATE operations
          example: '{objectType}s/update'
        DELETE:
          type: string
          description: Topic path for DELETE operations
          example: '{objectType}s/delete'
        ALL:
          type: string
          description: Topic path for ALL operations, if supported by VTN
          example: '{objectType}s/+'
  securitySchemes:
    oAuth2ClientCredentials:
      type: oauth2
      description: Client credential flow.
      flows:
        clientCredentials:
          tokenUrl: auth/token
          scopes:
            read_all: BL can read all resources
            read_targets: VENs may only read objects with targets by providing matching targets
            read_ven_objects: VENs may only read objects whose clientID matches their own
            write_programs: Only BL can write to programs
            write_events: Only BL can write to events
            write_reports: only VENs can write to reports
            write_subscriptions: VENs and BL can write to subscriptions
            write_vens: VENS and BL can write to vens and resources
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
x-refined-from:
- openadr-3-1-0-openapi.yaml
- openadr-3-1-1-openapi.yaml