Viam Tabular Data API

Time-series and structured data captured by sensor and movement-sensor components.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

viam-tabular-data-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Viam Billing Arm Tabular Data API
  description: 'REST/JSON transcoding of the Viam BillingService gRPC API. Retrieve current-month

    usage, invoice summaries, invoice PDFs, billing tiers, and the location-level billing

    organization assignment used by Viam''s "build a robotics business" features.


    Canonical contract: https://github.com/viamrobotics/api/blob/main/proto/viam/app/v1/billing.proto

    '
  version: '2026.05'
  contact:
    name: Viam Support
    url: https://www.viam.com/contact
servers:
- url: https://app.viam.com
  description: Viam production cloud.
security:
- ApiKeyAuth: []
tags:
- name: Tabular Data
  description: Time-series and structured data captured by sensor and movement-sensor components.
paths:
  /viam.app.data.v1.DataService/TabularDataByFilter:
    post:
      summary: Viam Tabular Data By Filter
      description: Query tabular data using component, location, time-range, and tag filters.
      operationId: tabularDataByFilter
      tags:
      - Tabular Data
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                data_request:
                  type: object
                count_only:
                  type: boolean
      responses:
        '200':
          description: Successful response.
  /viam.app.data.v1.DataService/TabularDataBySQL:
    post:
      summary: Viam Tabular Data By Sql
      description: Query tabular data with SQL against the Viam hot data store.
      operationId: tabularDataBySQL
      tags:
      - Tabular Data
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - organization_id
              - sql_query
              properties:
                organization_id:
                  type: string
                sql_query:
                  type: string
      responses:
        '200':
          description: Successful response.
  /viam.app.data.v1.DataService/TabularDataByMQL:
    post:
      summary: Viam Tabular Data By Mql
      description: Query tabular data with MongoDB Query Language.
      operationId: tabularDataByMQL
      tags:
      - Tabular Data
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - organization_id
              - mql_binary
              properties:
                organization_id:
                  type: string
                mql_binary:
                  type: array
                  items:
                    type: string
                    format: byte
      responses:
        '200':
          description: Successful response.
  /viam.app.data.v1.DataService/ExportTabularData:
    post:
      summary: Viam Export Tabular Data
      description: Stream-export tabular data matching a filter.
      operationId: exportTabularData
      tags:
      - Tabular Data
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - part_id
              - resource_name
              - resource_subtype
              - method_name
              properties:
                part_id:
                  type: string
                resource_name:
                  type: string
                resource_subtype:
                  type: string
                method_name:
                  type: string
      responses:
        '200':
          description: Successful response.
  /viam.app.data.v1.DataService/GetLatestTabularData:
    post:
      summary: Viam Get Latest Tabular Data
      description: Return the latest tabular data point for a component/method.
      operationId: getLatestTabularData
      tags:
      - Tabular Data
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - part_id
              - resource_name
              - resource_subtype
              - method_name
              properties:
                part_id:
                  type: string
                resource_name:
                  type: string
                resource_subtype:
                  type: string
                method_name:
                  type: string
      responses:
        '200':
          description: Successful response.
  /viam.app.data.v1.DataService/DeleteTabularData:
    post:
      summary: Viam Delete Tabular Data
      description: Delete tabular data older than a given age in days.
      operationId: deleteTabularData
      tags:
      - Tabular Data
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - organization_id
              - delete_older_than_days
              properties:
                organization_id:
                  type: string
                delete_older_than_days:
                  type: integer
      responses:
        '200':
          description: Successful response.
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: key
      description: Viam API key.