Viam
Viam is a robotics and edge AI platform founded in 2020 by Eliot Horowitz (MongoDB co-founder and former CTO). It pairs viam-server — a gRPC-based runtime that runs on Linux single-board computers (RDK) and ESP32-class microcontrollers (micro-rdk) — with viam.app, a multi-tenant cloud for fleet management, data capture, ML training, and remote operations. Every hardware component (motors, cameras, sensors, arms) and every machine-level service (motion, vision, SLAM, ML inference, navigation) is exposed through a uniform gRPC contract defined in viamrobotics/api with first-class SDKs for Python, Go, Rust, TypeScript, C++, Java, .NET, and Flutter. A modular registry lets vendors and community contributors publish new hardware drivers, vision models, and services as OCI images or packages that any Viam machine can pull at config time, making physical-world control feel like building a microservice.
Solid contracts, transparent operations, and an easy start — typically complete on four or five facets with one clear soft spot.
API Evangelist profiles Viam the way a machine reads it — 137 machine-readable artifacts across 52 APIs, pulled from the provider's own public surface and indexed so a developer, an analyst, or an AI agent can evaluate it against every other provider on the network.
Every provider in the network is reduced to the same set of machine-readable artifacts — OpenAPI contracts, event specifications, GraphQL schemas, runnable collections, pricing and rate-limit signals, security posture, OAuth scopes, and the agent surfaces (MCP servers and skills) that let software drive the API on its own. We profile them because the interface is the part of a company you can actually inspect: it is a truer signal of what a provider does than any marketing page. From those artifacts we compute the Kin Score — Viam scores 67.7/100 (strong), with a separate agent-readiness read of 55/100 (agent ready). The full breakdown is below, followed by every artifact we hold — each card links through to its machine-readable definition on apis.io.
Kin Score
This is the API Evangelist rating — a single, repeatable read computed from the artifacts on this page. Green fill is points earned; the red track is points possible, so every bar shows earned-versus-possible at a glance.
How we profile Viam
Each block below is one kind of artifact we hold for Viam. For each we say what it is and why it earns a place in the profile, then list every one we've indexed — capped at two rows, scroll within the panel for the rest.
APIs 52
Each API is captured as its own OpenAPI definition — every operation, parameter, and response. This is the single most useful machine-readable description of what an API does, and it's what lets us score, lint, mock, and generate against it without asking the provider for anything.
Individual APIs this provider publishes, each with its own machine-readable definition.
Viam Provisioning API
Bootstrap a smart machine onto Wi-Fi and into the viam.app cloud over Bluetooth or hotspot. SetNetworkCredentials, SetSmartMachineCredentials, GetNetworkList, GetSmartMachineSta...
Viam Arm API
Robotic arms — joint and end-effector control.
Viam Audio In API
Audio capture devices.
Viam Audio Out API
Audio playback devices.
Viam Base API
Mobile platforms (wheeled, tracked).
Viam Billing Tiers API
Available billing tiers for end-customer billing.
Viam Binary Data API
Images, video, audio, and other binary blobs captured by cameras and audio components.
Viam Board API
GPIO boards (Raspberry Pi, Jetson, ESP32).
Viam Button API
Physical buttons.
Viam Camera API
2D image and 3D point cloud sources.
Viam Charges API
Charge an organization or create-and-charge an invoice.
Viam Database API
Direct database connection (MongoDB) for advanced analytics.
Viam Datasets API
Curated collections of binary data used for ML training.
Viam Encoder API
Position encoders.
Viam Fragments API
Reusable machine configuration snippets, versioned and shareable across orgs.
Viam Frame System API
Frame system config and pose transformations.
Viam Gantry API
Linear actuator coordination.
Viam Generic API
Custom component with DoCommand-only interface.
Viam Gripper API
End-effector grippers.
Viam Inference API
Cloud-hosted inference against registry-deployed models.
Viam Invoices API
Invoices and invoice PDFs.
Viam Locations API
Logical grouping of machines (e.g., a building, site, or robot fleet).
Viam Machine Parts API
A single viam-server process running on a device. A machine can have multiple parts.
Viam Machines API
A robot or smart machine running viam-server. Composed of one or more parts.
Viam Members API
Organization membership, invites, and authorizations (RBAC).
Viam ML Model API
Device-side ML inference.
Viam Modules API
Modular component and service lifecycle.
Viam Motion API
Plan and execute motion across components.
Viam Motor API
DC, servo, and stepper motors.
Viam Movement Sensor API
GPS, IMU, odometry.
Viam OAuth Apps API
OAuth applications registered against a Viam organization for third-party integrations.
Viam Operations API
Long-running operations executing on the machine.
Viam Organizations API
Tenant boundary for Viam — owns locations, machines, members, billing, and registry items.
Viam Pipelines API
Scheduled MQL aggregation pipelines.
Viam Power Sensor API
Voltage, current, and power measurements.
Viam Resources API
Resources (components and services) registered on the machine.
Viam Saved Queries API
Reusable SQL/MQL queries stored in the cloud.
Viam Secrets API
Location and machine-part secrets used by SDKs to authenticate.
Viam Sensor API
Generic sensor readings.
Viam Sequences API
Ordered sequences of dataset items for time-series training.
Viam Servo API
Angular-position servos.
Viam Sessions API
Client sessions with safety-timeout heartbeats.
Viam SLAM API
Simultaneous Localization And Mapping.
Viam Status API
Status, version, cloud metadata, and machine state.
Viam Switch API
Multi-position switches.
Viam Tabular Data API
Time-series and structured data captured by sensor and movement-sensor components.
Viam Tags API
Bounding boxes and labels applied to binary data items.
Viam Training Jobs API
Built-in TFLite trainers and custom containerized trainers.
Viam Tunneling API
TCP tunneling through the machine.
Viam Upload API
Streaming and one-shot uploads of captured data.
Viam Usage API
Current-month usage reporting.
Viam Vision API
Detections, classifications, and 3D segmentation.
Scroll within the panel for all 52 ·
Postman Collections 14
A runnable collection turns the contract into something a developer can execute in seconds. We profile them because the fastest way to trust an API is to make a real call against it.
Ready-to-run Postman collections for exercising this provider's APIs.
Viam Billing API
POSTMANViam Component APIs
POSTMANViam Data Client API
POSTMANViam Data Pipelines API
POSTMANViam Data Sync API
POSTMANViam Fleet Management API
POSTMANViam Machine Management API
POSTMANViam ML Inference API
POSTMANViam ML Model Service API
POSTMANViam ML Training API
POSTMANViam Motion Service API
POSTMANViam Provisioning API
POSTMANViam SLAM Service API
POSTMANViam Vision Service API
POSTMANScroll within the panel for all 14 ·
Open Collections 14
Open, tool-agnostic collections carry the same runnable value as Postman without locking you to one client — the portable, forkable form of the same exercise.
Open, tool-agnostic API collections (OpenAPI-derived and Bruno).
Viam Billing API
OPEN COLLECTIONViam Component APIs
OPEN COLLECTIONViam Data Client API
OPEN COLLECTIONViam Data Pipelines API
OPEN COLLECTIONViam Data Sync API
OPEN COLLECTIONViam Fleet Management API
OPEN COLLECTIONViam Machine Management API
OPEN COLLECTIONViam ML Inference API
OPEN COLLECTIONViam ML Model Service API
OPEN COLLECTIONViam ML Training API
OPEN COLLECTIONViam Motion Service API
OPEN COLLECTIONViam Provisioning API
OPEN COLLECTIONViam SLAM Service API
OPEN COLLECTIONViam Vision Service API
OPEN COLLECTIONScroll within the panel for all 14 ·
Arazzo Workflows 12
Real integrations are rarely a single call. Arazzo describes the multi-step sequences — auth, then create, then confirm — so both a human and an agent can follow the choreography, not just the endpoints.
Multi-step API workflows described with the Arazzo specification.
Viam Add a Machine With a Part
Create a machine in an existing location and add a viam-server part to it.
ARAZZOViam Bill a Customer Location
Reassign a location's billing org, read usage, and charge the customer.
ARAZZOViam Curate a Training Dataset
Find binary data by filter, tag the matches, and add them to a dataset.
ARAZZOViam Data Pipeline Lifecycle
Create a scheduled MQL pipeline, resolve it, enable it, and list its runs.
ARAZZOViam Roll Out a Configuration Fragment
Create a reusable config fragment and restart a machine part to adopt it.
ARAZZOViam Machine Health Check
Inspect a live machine's status, resources, version, and cloud identity.
ARAZZOViam Onboard an Organization Member
Verify an organization, invite a new member, and confirm the pending invite.
ARAZZOViam Provision a New Fleet
Stand up a brand-new organization, location, and machine in one pass.
ARAZZOViam Provision a Smart Machine
Bootstrap a fresh device onto Wi-Fi and into the Viam cloud over the hotspot.
ARAZZOViam Saved Query Lifecycle
Create a saved SQL query, resolve it from the list, read it, and update it.
ARAZZOViam Train and Monitor an ML Model
Submit a TFLite training job, poll its status, and branch to logs or cancel.
ARAZZOScroll within the panel for all 12 ·
Pricing Plans 1
Pricing is part of the interface. Machine-readable plans tell you what a tier costs and includes before you commit — one of the six things the Kin Score reads for commercial clarity.
Published pricing tiers and plan structures.
Viam Plans Pricing
PLANSRate Limits 1
Rate limits are the difference between a demo that works and a production integration that doesn't fall over. Publishing them is an operational-transparency signal — and a hard requirement for any agent that plans its own throughput.
Documented rate limits and quota policies.
Viam Rate Limits
RATE LIMITSFinOps 1
Cost, billing, and metering signals let a buyer model the financial operations of an API before it's live. We profile them for the same reason we profile pricing: the money is part of the contract.
Cost, billing, and metering signals for API financial operations.
Viam Finops
FINOPSFeatures 22
The notable capabilities this provider advertises, captured as structured features so they can be searched and compared instead of read one landing page at a time.
Notable capabilities this provider offers.
Scroll within the panel for all 22 ·
Semantic Vocabularies 1
JSON-LD contexts give the data shared meaning across APIs. We profile them because semantics are what let a machine reconcile 'customer' here with 'customer' somewhere else.
JSON-LD contexts and semantic vocabularies used across these APIs.
Viam Context
JSON-LDSpectral Rules 2
Governance rulesets we run against this provider's specs — the automated checks behind parts of the score. Profiling them makes the quality bar explicit and re-runnable, not a matter of opinion.
Viam API Rules
SPECTRALViam API Rules
SPECTRALJSON Schema 5
Standalone JSON Schema definitions describe the data models behind the API. We profile them so the shapes are validatable on their own — useful long after a single request is forgotten.
Standalone JSON Schema definitions for this provider's data models.
Viam Binary Data Item
JSON SCHEMAViam Location
JSON SCHEMAViam Machine
JSON SCHEMAViam Organization
JSON SCHEMAViam Tabular Data Point
JSON SCHEMAExamples 9
Real request and response payloads are what turn a spec from abstract into obvious — and they're one of the twelve things an agent needs to call an API correctly on the first try.
Example request and response payloads for these APIs.
Viam Camera Images Example
EXAMPLEViam List Machines Example
EXAMPLEViam Motor Go For Example
EXAMPLEViam Tabular By Sql Example
EXAMPLEScroll within the panel for all 9 ·
Security Posture 2
Authentication, domain security, vulnerability disclosure, and trust-center signals — the evidence that a provider takes security seriously enough to document it. We profile it because you can't govern what you can't see.
Authentication, domain security, vulnerability disclosure, and trust-center signals.
Agentic Access 1
An x-agentic-access contract marks which operations are safe for an agent to run on its own and which need a human in the loop. It is the difference between an API an agent can use and one it can use safely.
Recommended x-agentic-access execution contracts for AI agents.
Resources
Every other property we hold for Viam — documentation, portals, status pages, policies, and corporate surface — grouped by the job it does, following the integrator's arc from getting started to running in production.
Get Started 4
Portal, sign-up, and the first successful call
Documentation 5
Reference material describing how the API behaves
Agent Surfaces 1
MCP servers, agent skills, and machine-readable catalogs
Design & Contract 12
Pagination, idempotency, versioning, errors, and events
Scroll within the panel for all 12 ·
Build 21
SDKs, sample code, and the tooling you integrate with
Scroll within the panel for all 21 ·
Access & Security 3
Authentication, authorization, and security posture
Learn 1
Tutorials, courses, talks, and written guidance
Operate 5
Status, limits, changes, and where to get help
Commercial 5
Pricing, plans, and the legal terms of use
Company 4
The organization behind the API
Other 2
Properties that don't map to a standard resource type
← All providers · Data indexed from github.com/api-evangelist/viam · machine-readable index on apis.io