---
title: "Teleoperation Control"
method: POST
path: "/move/teleop"
tags: ["control"]
---

# Teleoperation Control

`POST /move/teleop`

## Query parameters

- `robot_id` integer, nullable

## Request body

- AppControlData — Type of data sent by the Metaquest app.
  - `direction_x` number — Direction vector X, normalized between -1 (left) and 1 (right)
  - `direction_y` number — Direction vector Y, normalized between -1 (backward) and 1 (forward)
  - `open` number, required — 0 for closed, 1 for open
  - `rx` number, required — Absolute Pitch in degrees
  - `ry` number, required — Absolute Yaw in degrees
  - `rz` number, required — Absolute Roll in degrees
  - `source` 'left' | 'right' — Which hand the data comes from. Can be left or right.
  - `timestamp` number, nullable — Unix timestamp with milliseconds
  - `x` number, required
  - `y` number, required
  - `z` number, required

## Response `200`

Successful Response

- StatusResponse — Default response. May contain other fields.
  - `message` string, nullable
  - `status` 'ok' | 'error'

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/phospho/apis/fastapi.md) · [All operations](https://skmtc.net/phospho/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/phospho/fastapi/versions/93e83588fc02/schema)
