Viam ML Inference API

Run cloud-hosted inference against models registered in the Viam ML registry via GetInference. Complements the device-side ML Model Service for cases where compute must live in the cloud.

Viam ML Inference API is one of 14 APIs that Viam publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 1 machine-runnable capability that can be deployed as REST, MCP, or Agent Skill surfaces via Naftiko.

Tagged areas include Robotics, Machine Learning, Inference, and Edge AI. The published artifact set on APIs.io includes API documentation, an OpenAPI specification, and 1 Naftiko capability spec.

OpenAPI Specification

viam-ml-inference-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Viam ML Inference API
  description: |
    REST/JSON transcoding of the Viam MLInferenceService gRPC API. Run cloud-hosted
    inference against models registered in the Viam ML registry.

    Canonical contract: https://github.com/viamrobotics/api/blob/main/proto/viam/app/mlinference/v1/ml_inference.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: Inference
    description: Cloud-hosted inference against registry-deployed models.
paths:
  /viam.app.mlinference.v1.MLInferenceService/GetInference:
    post:
      summary: Viam Get Inference
      description: Run inference against a registry-deployed model with binary input data.
      operationId: getInference
      tags: [Inference]
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [registry_item_id, registry_item_version, binary_id]
              properties:
                registry_item_id: { type: string }
                registry_item_version: { type: string }
                binary_id: { type: object }
                organization_id: { type: string }
      responses:
        '200':
          description: Successful response.
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: key
      description: Viam API key.