Broadcom Operations for Applications REST API

The VMware Aria Operations for Applications REST API (formerly Tanzu Observability by Wavefront) enables programmatic interaction with the observability service. It supports querying metrics, managing dashboards, alerts, events, sources, user accounts, API tokens, and ingesting data directly.

OpenAPI Specification

broadcom-operations-for-applications-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Broadcom Operations for Applications REST API
  description: >-
    The VMware Aria Operations for Applications REST API (formerly Tanzu
    Observability by Wavefront) enables programmatic interaction with the
    observability service. It supports querying metrics, managing dashboards,
    alerts, events, sources, user accounts, API tokens, and ingesting data
    directly. The API uses JSON payloads over HTTPS and supports both API
    token and session-based authentication.
  version: 2.0.0
  contact:
    name: Broadcom Developer Support
    url: https://developer.broadcom.com
  license:
    name: Proprietary
    url: https://www.broadcom.com/company/legal/licensing
externalDocs:
  description: Operations for Applications REST API Documentation
  url: https://developer.broadcom.com/xapis/operations-for-applications-rest-api/latest/
servers:
  - url: https://{instance}.wavefront.com/api/v2
    description: Operations for Applications instance
    variables:
      instance:
        default: example
        description: Your Operations for Applications instance name
security:
  - bearerAuth: []
paths:
  /query:
    get:
      summary: Broadcom Execute a query
      description: Performs a query against the metrics data store and returns the results.
      operationId: queryMetrics
      tags:
        - Query
      parameters:
        - name: q
          in: query
          required: true
          description: The query expression
          schema:
            type: string
        - name: s
          in: query
          required: true
          description: Start time in epoch seconds or ms
          schema:
            type: string
        - name: e
          in: query
          description: End time in epoch seconds or ms
          schema:
            type: string
        - name: g
          in: query
          description: Granularity (s, m, h, d)
          schema:
            type: string
            enum:
              - s
              - m
              - h
              - d
      responses:
        '200':
          description: Query results
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QueryResult'
        '401':
          description: Unauthorized
  /dashboard:
    get:
      summary: Broadcom List dashboards
      description: Returns all dashboards accessible to the user.
      operationId: listDashboards
      tags:
        - Dashboards
      parameters:
        - name: offset
          in: query
          schema:
            type: integer
            default: 0
        - name: limit
          in: query
          schema:
            type: integer
            default: 100
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardList'
    post:
      summary: Broadcom Create a dashboard
      description: Creates a new dashboard.
      operationId: createDashboard
      tags:
        - Dashboards
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Dashboard'
      responses:
        '200':
          description: Dashboard created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Dashboard'
        '401':
          description: Unauthorized
  /dashboard/{id}:
    get:
      summary: Broadcom Get a dashboard
      description: Returns the specified dashboard.
      operationId: getDashboard
      tags:
        - Dashboards
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Dashboard'
        '404':
          description: Dashboard not found
    put:
      summary: Broadcom Update a dashboard
      description: Updates the specified dashboard.
      operationId: updateDashboard
      tags:
        - Dashboards
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Dashboard'
      responses:
        '200':
          description: Dashboard updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Dashboard'
    delete:
      summary: Broadcom Delete a dashboard
      description: Deletes the specified dashboard.
      operationId: deleteDashboard
      tags:
        - Dashboards
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '204':
          description: Dashboard deleted
  /alert:
    get:
      summary: Broadcom List alerts
      description: Returns all alerts.
      operationId: listAlerts
      tags:
        - Alerts
      parameters:
        - name: offset
          in: query
          schema:
            type: integer
        - name: limit
          in: query
          schema:
            type: integer
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AlertList'
    post:
      summary: Broadcom Create an alert
      description: Creates a new alert.
      operationId: createAlert
      tags:
        - Alerts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Alert'
      responses:
        '200':
          description: Alert created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Alert'
  /alert/{id}:
    get:
      summary: Broadcom Get an alert
      description: Returns the specified alert.
      operationId: getAlert
      tags:
        - Alerts
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Alert'
    put:
      summary: Broadcom Update an alert
      description: Updates the specified alert.
      operationId: updateAlert
      tags:
        - Alerts
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Alert'
      responses:
        '200':
          description: Alert updated
    delete:
      summary: Broadcom Delete an alert
      description: Deletes the specified alert.
      operationId: deleteAlert
      tags:
        - Alerts
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '204':
          description: Alert deleted
  /event:
    get:
      summary: Broadcom List events
      description: Returns events matching the specified filters.
      operationId: listEvents
      tags:
        - Events
      parameters:
        - name: earliestStartTimeEpochMillis
          in: query
          schema:
            type: integer
            format: int64
        - name: latestStartTimeEpochMillis
          in: query
          schema:
            type: integer
            format: int64
        - name: limit
          in: query
          schema:
            type: integer
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventList'
    post:
      summary: Broadcom Create an event
      description: Creates a new event.
      operationId: createEvent
      tags:
        - Events
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Event'
      responses:
        '200':
          description: Event created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Event'
  /source:
    get:
      summary: Broadcom List sources
      description: Returns all sources.
      operationId: listSources
      tags:
        - Sources
      parameters:
        - name: limit
          in: query
          schema:
            type: integer
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SourceList'
  /source/{id}:
    get:
      summary: Broadcom Get a source
      description: Returns the specified source.
      operationId: getSource
      tags:
        - Sources
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Source'
  /proxy:
    get:
      summary: Broadcom List proxies
      description: Returns all registered proxies.
      operationId: listProxies
      tags:
        - Proxies
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProxyList'
  /proxy/{id}:
    get:
      summary: Broadcom Get a proxy
      description: Returns details of the specified proxy.
      operationId: getProxy
      tags:
        - Proxies
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Proxy'
    delete:
      summary: Broadcom Delete a proxy
      description: Deletes the specified proxy.
      operationId: deleteProxy
      tags:
        - Proxies
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '204':
          description: Proxy deleted
  /api-token:
    get:
      summary: Broadcom List API tokens
      description: Returns all API tokens for the authenticated user.
      operationId: listApiTokens
      tags:
        - API Tokens
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ApiToken'
    post:
      summary: Broadcom Create an API token
      description: Creates a new API token for the authenticated user.
      operationId: createApiToken
      tags:
        - API Tokens
      responses:
        '200':
          description: Token created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiToken'
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API token for authentication
  schemas:
    QueryResult:
      type: object
      properties:
        timeseries:
          type: array
          items:
            type: object
            properties:
              label:
                type: string
              data:
                type: array
                items:
                  type: array
                  items:
                    type: number
        query:
          type: string
        granularity:
          type: integer
    DashboardList:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/Dashboard'
        offset:
          type: integer
        limit:
          type: integer
        totalItems:
          type: integer
    Dashboard:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type: string
        url:
          type: string
        sections:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              rows:
                type: array
                items:
                  type: object
        tags:
          type: object
          properties:
            customerTags:
              type: array
              items:
                type: string
        creatorId:
          type: string
        updaterId:
          type: string
    AlertList:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/Alert'
        offset:
          type: integer
        limit:
          type: integer
        totalItems:
          type: integer
    Alert:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        condition:
          type: string
        minutes:
          type: integer
        severity:
          type: string
          enum:
            - INFO
            - SMOKE
            - WARN
            - SEVERE
        target:
          type: string
        tags:
          type: object
          properties:
            customerTags:
              type: array
              items:
                type: string
    EventList:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/Event'
    Event:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        annotations:
          type: object
          additionalProperties:
            type: string
        tags:
          type: array
          items:
            type: string
    SourceList:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/Source'
    Source:
      type: object
      properties:
        id:
          type: string
        sourceName:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        description:
          type: string
    ProxyList:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/Proxy'
    Proxy:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        hostname:
          type: string
        version:
          type: string
        status:
          type: string
          enum:
            - ACTIVE
            - INACTIVE
        lastCheckInTime:
          type: integer
          format: int64
    ApiToken:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        createdEpochMillis:
          type: integer
          format: int64
tags:
  - name: Alerts
    description: Alert management
  - name: API Tokens
    description: API token management
  - name: Dashboards
    description: Dashboard management
  - name: Events
    description: Event management
  - name: Proxies
    description: Proxy management
  - name: Query
    description: Query metrics data
  - name: Sources
    description: Source management