This page is a stub. A human will curate and expand it before publishing.
Where is it now?
ageSeconds.
A 404 means the position is genuinely unknown — no recent fix has arrived. It
deliberately does not fall back to the position the twin was placed at in the
editor: that placement is not georeferenced, so returning it would be a confident
wrong answer about where a real robot is.
takeoffAltitudeOffsetM is the height above the point the aircraft took off from,
present only once a take-off has been observed. battery and state are omitted
when the robot has not reported them, rather than being reported as zero.
GET /api/v1/twins/{uuid}/telemetry is a different thing: it queries historical
recorded telemetry and requires a time range. Use live-position for the current
value.Give me a picture, now
image/jpeg. Without pull, this endpoint serves whatever frame is already
cached and 404s if there is none. With pull=true, it asks the robot to take a
photo and waits briefly for the answer, so you get a frame even when nothing is
streaming.
The
X-Frame-Pulled response header tells you whether the frame was freshly
captured (true) or served from cache (false).
Frame rate is set by how often you ask, capped at roughly 5 frames per second —
a faster poll returns the cached frame rather than putting another capture request
on the robot. Requires a driver that supports on-demand photo capture; a 504 means
no frame could be produced — the robot was asked and did not answer, its driver does
not support on-demand capture, or it has no camera.
When you pass sensor_id, you only ever get a frame from that camera. If a photo
arrives from a different one — possible on a multi-camera robot when two requests
overlap — it is cached under its own camera and this request answers 504 rather
than handing you the wrong picture.