IronStratum Get an API key

Robot vision API: the perception layer as a product

A robot vision API is an endpoint that takes camera frames and returns the geometry a robot acts on. That geometry comes in three forms: masks, depth maps, and camera poses. The robot sends what its cameras saw. The endpoint answers what the scene looks like, in a form code can use, on a clock the control loop sets. As a named product category, it barely exists. The first page of results for the phrase is a mix of hobby repositories, integrator pages, academic papers, and generic cloud vision docs. None of it sells what a robot builder is looking for. This page names the category anyway, because the parts are real. The outputs are settled. The sellers exist in three shapes. A per-image lane is live on this platform as of October 28, 2026.

Last verified: 2026-10-28

What counts as a robot vision API

Three neighbors crowd the search results. Splitting them apart saves a wasted test.

The first neighbor is generic cloud vision. The big cloud providers sell vision endpoints that return labels, faces, landmarks, printed text, and safety flags. Those are facts about photos. A robot that reaches for a cup needs the cup's boundary in the frame, not a caption. Generic endpoints also publish no latency story for control work. They are built for occasional queries, and a perception loop is anything but occasional.

The second neighbor is the machine vision integrator. Search the phrase and you will find industrial vision guides and cell builders. Their product is a hardware-tied system, cameras plus processing plus acceptance testing, sold as an installed cell. That is a legitimate purchase. It is not an API. Nothing about it meters per image, and nothing about it changes when your robot does.

The third neighbor is the name itself. A perception API in the wild can mean a lidar zone-occupancy product for security monitoring. It has no robot control in it anywhere. Before you compare two endpoints, read what they return. Here is the test that cuts through all three neighbors. A robot vision API takes images in, returns geometry out, and bills by the image or the request.

What the robot consumes

A robot acts on three kinds of geometry. Every serious vision output falls into one of them.

OutputWhat it isThe robot job it feeds
MaskA per-pixel boundary around each objectGrasping, part checks, workspace tests
Depth mapA per-pixel distance, relative or metricNavigation, arm approach, free-space shape
Camera poseWhere each view sits relative to the othersMulti-camera rigs, scene reconstruction

Masks answer where the object ends. Depth answers how far away it is. Poses answer how several views fit together, which is what turns a two-camera rig into one scene instead of two. Relative depth orders the scene from near to far, which is enough for obstacle logic. Metric depth carries real-world scale, which measurement and mapping need.

The outputs are not exotic research objects. They arrive as arrays your code reads directly. A 2025 paper from the team behind the Depth Anything line describes a single model that recovers depth and camera poses. It works on any number of views, with or without known poses, on one plain transformer (paper, 2025). The mask half is just as settled. The vision lane page maps both model families, their licenses, and their tiers.

Three ways vision inference is sold

Nobody sells a product called a robot vision API today. The market still sells the capability, in three shapes, and they differ in what you prompt and how you pay.

ShapeHow you prompt itHow it billsBuilt for
Prompt a general multimodal modelAsk in text, hold the shape with a response schemaPer token, images billed as tilesOccasional queries
A hosted copy of one segmenterA short noun phrase, one object per request, or clicked pointsPer requestAnnotation workflows
A dedicated per-image routeThe whole frame, no prompt fieldsPer imageControl loops

The first shape works better than its reputation. Google publishes the recipe. Ask for masks with fixed keys and coordinates on a 0 to 1000 grid, and hold the model to that shape with a response schema (Gemini API docs). It parses, and for a one-off question it is fine. The catch is the meter. Images bill as tiles, 258 tokens per 768-pixel tile in the published math. Every frame costs tokens, and the cost scales with resolution. A loop that sends every frame pays photo prices for geometry.

The second shape narrows the prompt to a noun phrase. Meta serves the current generation of its own SAM line this way. The prompts are text, boxes, and points: one concrete object per phrase, and several requests when you want several types (Meta docs). That rule set fits a labeling tool, where a human clicks and waits. A loop has no human in it, and no human clicks points at control rate.

The third shape is the one this platform takes, and the reason is the loop. The whole frame goes in as file parts. No prompt fields exist. The model returns everything it finds, and your code filters. Masking everything and filtering by logic is a loop-native design. It is not new. Automatic mask generation, with no prompt at all, has been part of the SAM line since the first generation (SAM 2 repository).

The loop sets the deadline

Speed is not a feature here. It is the entry condition, and the numbers come from the action side of the stack.

A policy, the network that decides what the robot does, runs at tens of calls per second. A 2026 study frames 10 calls per second as the acceptable floor and 100 as high performance. The same study measures a pi 0 class policy at about 19 cycles per second on a robot-grade Jetson module (VLA-Perf study, 2026). The original pi 0 paper reports control at up to 50 cycles per second. Fresh inference runs twice a second, every 25 actions (pi 0 paper, 2024).

Two design facts fall out of those numbers. First, answers arrive in chunks. The robot runs the current chunk while the next one computes. A slower answer degrades smoothness instead of stalling the arm. Your perception layer joins that pipeline, and it does not get a second and a half per frame. Second, the network fits the budget when the serving side is close. Physical Intelligence runs its policy inference remotely in production. The published case study reports 10 to 15 milliseconds of added network overhead, with deployments pinned near the robots (case study, 2026).

This is where the generic tools fail, quietly. A labeling endpoint that answers in seconds is measuring human patience. A perception answer that lands in tens of milliseconds, at camera rate, is a different product with a different meter. When a vendor prints no latency number anywhere, assume the second product is not what is for sale.

The metering shape, without numbers

This section sets the math, because no rate on this page is typed by hand.

The three shapes above bill three ways: per token, per request, per image. For a robot, the unit that predicts the bill is the camera. One camera at 10 frames per second produces 36 thousand frames an hour. Two cameras double it. A perception pass on every frame multiplies the metering unit by that count, whichever unit it is. The token shape adds a second multiplier, since bigger frames tile into more billed units.

The honest planning move is to compute the hourly number for your own loop. Do that before you compare any two vendors. Rate times frames times hours. The pricing page renders every listed rate on this platform from the platform's own model data. The pricing guide explains the units and the wallet. Spend draws down a prepaid balance. The balance is the hard stop: a call that arrives after the money is gone is refused with a named error, not billed. A robot that loops all night cannot run a debt by accident.

Where the vision lane stands today

The dated state, as of October 28, 2026. Each sentence mirrors the platform's own model data, and the models index is the live catalog.

Two of the three vision rows are on the public list, confirmed there since the October 6, 2026 requests. Those two are sam2.1-base, the base mask model, and da3-small, the small depth model. The large mask tier, sam2.1-large, is not on the public list, and no date rides with that fact. The vision lane page carries the lane in full: the families, the license map, and the member panel.

The route meters per image, takes multipart form data, and returns the model's findings plus a usage object. Both served families ship under Apache 2.0. The grant covers the model weights, not just the code (SAM 2 repository, Depth Anything 3 repository). Perception is also only half of what a robot senses. The action half is the VLA lane: vision language action models that return motor commands. Scene reasoning rides two listed rows on the chat category. The robot inference API page maps all three classes in one place.

A first call, on a row that serves

The route contract is published, and the request is three fields. This call runs against a listed row today:

curl -sS -w '\n%{http_code}\n' $IRONSTRATUM_BASE_URL/v1/vision \
  -H "Authorization: Bearer $IRONSTRATUM_API_KEY" \
  -F "model=sam2.1-base" \
  -F "file=@cam0.jpg" \
  -F "response_format=json"

Set the key and the base URL once. Every published example then runs the same way. The body is multipart form data, the same thing a web form uses to upload a file. One file part per frame: a request with four parts bills four images. The answer holds the model's findings, passed through unchanged. It also carries a usage object with the billed image count and the wallet debit. A response_format switch asks for rendered bytes instead. That returns a mask overlaid on the frame, ready for a dashboard or a review step. Send a prompt field of any name and the answer is a 400 that names it. The field-by-field contract lives on the vision route page and the run-vision reference. Keys start at the signup page.

Running perception yourself

Both served families carry open weights, so the self-host path is real: download the models, write the loop, own the machine. Two costs hide in that sentence.

The first is glue. A self-hosted stack usually runs a segmenter beside a depth model. The glue is hand-written code that fuses the two, projecting masks onto depth to get 3D points. That glue code is plain engineering work, and it is yours forever. The second is throughput. Practitioners report that SAM-class segmentation crawls on CPUs. That pushes you toward a graphics card per robot, or toward a smaller, less accurate model. The Jetson versus cloud guide works that trade with real numbers. The segmentation and depth guide covers the model-choice side.

Hosting earns its keep on the parts around the model. An endpoint that stays up through a long session. Metering and spend history you did not write. Headroom on the busy shifts. And the freedom to try the other tier by changing one string in the request. Teams whose robot is a product rather than a research project tend to make that trade. Teams still learning what their robot needs tend not to yet.

Where to go next

  1. Open a console account. The wallet, the keys, and the spend history live there, and you can start at the signup page. One account covers every lane the platform lists.
  2. Read the rates once, in one place. The pricing page renders every listed row's rate from the platform's own model data, and the pricing guide explains the units.
  3. Pick your surface. Perception: the vision lane page. Action: the VLA lane. Scene reasoning: the chat category. The robot inference API page maps all three.
  4. Read the spokes listed with this page. The segmentation and depth guide carries the output decision. The mask generation guide covers the whole-frame workflow. The SAM versus YOLO guide handles the speed tradeoff, and the CPU-tier guide handles the depth side. The alternatives guide maps the perception-layer vendors, and the VLM versus VLA guide draws the boundary between seeing and acting.

The robot lanes are young on every platform, this one included. Read them the way you would read any metered service. Check the dated state, run the first call, and watch the meter before you scale. The models index lists every row the platform carries, and every lane draws from one wallet.

Guides

Questions

What is a robot vision API?
It is a hosted endpoint that takes camera frames from a robot and returns the geometry the robot acts on. The three outputs that matter are segmentation masks, depth maps, and camera poses. Masks say where an object ends, pixel by pixel. Depth maps say how far away each part of the scene sits. Camera poses stitch several views into one model of the scene. Your code sends frames over HTTP, the same tool you would point at a language model. The answer has to land on the robot's clock. The outputs and the sellers are real, but the name is new. Most of what ranks for the phrase today is explainer content, integrator pages, and generic cloud vision docs.
Is a robot vision API the same as a cloud vision API?
No, and the difference decides whether your project works. A generic cloud vision API returns facts about photos: labels, faces, landmarks, printed text, safety flags. A robot vision API returns geometry a machine can act on: masks, depth, poses. The generic kind also carries no latency story. It is built for rare queries at human patience. It is not built for a perception pass at camera rate inside a control loop. Both are valid products. Only one of them steers a robot.
What does a robot vision API return?
Three families of output. Masks are per-pixel boundaries, one cutout per object, and they drive grasping, part checks, and workspace tests. Depth maps are per-pixel distances, relative or metric, and they drive navigation, arm approach, and free-space reasoning. Camera poses say where each view sits relative to the others. That is what turns a multi-camera rig into one consistent scene model. Some model families return all three at once. A 2025 paper from the team behind the Depth Anything line describes one model that recovers depth and poses. It works on any number of views, with or without known camera poses.
How fast does a robot vision API need to answer?
Inside the policy loop it feeds. A 2026 study frames 10 calls per second as the acceptable floor for a policy and 100 as high performance. The pi 0 paper reports robot control at up to 50 cycles per second, with fresh inference twice a second. Chunked answers are what make that work. The robot keeps running the current chunk of actions while the next answer computes. For the perception layer, the practical budget is tens of milliseconds per answer at camera rate. A tool that answers in seconds is a labeling tool, not a perception loop.
What does a robot vision API cost?
That depends on the metering unit, and the category uses three. Dedicated robot routes meter per image: one frame in, one answer out, one unit billed. Single-model hosts meter per request. General multimodal models meter per token. Every frame bills as tiles, so the bill grows with resolution. For a robot, the honest planning unit is images times camera rate times hours. One camera at 10 frames per second is 36 thousand images an hour. This page types no rate by design. Every live rate on this platform renders on the pricing page from the platform's own model data. Spend draws down a prepaid wallet, and the balance is the hard stop.
Can I call a robot vision API on this platform today?
Yes, on two of the three vision rows. As of October 28, 2026, sam2.1-base, the mask model, and da3-small, the depth model, are on the public list and serve on the vision route, listed since the October 6, 2026 requests. The large mask tier, sam2.1-large, is not on the public list, and no date rides with that fact. The route meters per image and takes multipart form data. A request carries a model field, one file part per frame, and a format switch. The models index is the live catalog.
How is a robot vision API different from a VLA API?
They answer different questions and they chain together. A vision API answers what the scene looks like: masks, depth, poses. A vision language action API answers what the robot should do next. It reads the cameras and an instruction and returns a chunk of motor commands. Perception feeds policy. Many stacks run both. On this platform both draw from one prepaid wallet. The vision route meters per image and the action route meters per call. The action lane page carries the action half in full.