# RQM Check Collision Constraints

> RQM Check Collision Constraints is a paid API for AI agents from jobs.rqmtechnologies.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Checks a robot's bounded 2D trajectory against circular obstacles, robot radius, and minimum clearance constraints to detect collisions.

## Facts

- Endpoint: POST https://jobs.rqmtechnologies.com/x402/buyer-jobs/robotics.check-collision-constraints.v1
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/rqm-check-collision-constraints-f8940cd7
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_aebd697pTC12po7x6DJDy

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability rqm-check-collision-constraints-f8940cd7 -d '<json body>'
```

Example prompt: Check whether this robot trajectory — moving through waypoints at t=0s (0,0), t=2s (5,3), t=4s (10,6) — with a robot radius of 0.5m and minimum clearance of 0.3m, is collision-free given circular obstacles: obstacle-1 at (4,2) radius 1.0m and obstacle-2 at (8,5) radius 0.8m.

## When to prefer this

Use this endpoint when you need to validate a pre-planned 2D robot trajectory against known circular obstacle geometry before execution. It is ideal for motion planning pipelines where you have a fully defined path and a static obstacle map and need a fast, cheap ($0.01) collision check. Prefer this over full trajectory optimization when you only need a pass/fail or violation report, not a corrected path. Do not use for live actuation, real-time sensor-based environments, 3D obstacle geometries, or physical safety certification.

## Known failure modes

- Fewer than 2 trajectory waypoints provided — request rejected
- No obstacles supplied (minItems:1 violated) — validation error
- robot_radius or minimum_clearance is negative — schema validation error
- Trajectory timestamps out of range (0–86400s) — validation error
- More than 4096 trajectory points or 1024 obstacles — payload too large
- Coordinates exceed ±1,000,000,000 bounds — schema rejection
- Missing required fields (trajectory, obstacles, robot_radius, minimum_clearance) — 400 error
- Payment not provided or insufficient — 402 payment required

## How this service works

Problem: Check this bounded geometry and trajectory against the supplied collision and clearance constraints. Input: JSON with trajectory, obstacles, robot radius, minimum clearance. Result: clearance, collision candidates and constraint results. Limits: Software/model evidence only; 65536 request bytes; 5 s execution.

## Output

Returns a structured result indicating whether the trajectory is collision-free, which obstacles (by obstacle_id) are violated, at which trajectory points violations occur, and whether minimum clearance constraints are breached. May include per-point clearance distances and summary pass/fail status.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "request": {
   "type": "object",
   "title": "CollisionRequest",
   "required": [
    "trajectory",
    "obstacles",
    "robot_radius",
    "minimum_clearance"
   ],
   "properties": {
    "obstacles": {
     "type": "array",
     "items": {
      "type": "object",
      "title": "CircleObstacle",
      "required": [
       "obstacle_id",
       "x",
       "y",
       "radius"
      ],
      "properties": {
       "x": {
        "type": "number",
        "title": "X",
        "maximum": 1000000000,
        "minimum": -1000000000
       },
       "y": {
        "type": "number",
        "title": "Y",
        "maximum": 1000000000,
        "minimum": -1000000000
       },
       "radius": {
        "type": "number",
        "title": "Radius",
        "maximum": 1000000000,
        "minimum": 0
       },
       "obstacle_id": {
        "type": "string",
        "title": "Obstacle Id",
        "maxLength": 128,
        "minLength": 1
       }
      },
      "additionalProperties": false
     },
     "title": "Obstacles",
     "maxItems": 1024,
     "minItems": 1
    },
    "trajectory": {
     "type": "array",
     "items": {
      "type": "object",
      "title": "Point2D",
      "required": [
       "timestamp_s",
       "x",
       "y"
      ],
      "properties": {
       "x": {
        "type": "number",
        "title": "X",
        "maximum": 1000000000,
        "minimum": -1000000000
       },
       "y": {
        "type": "number",
        "title": "Y",
        "maximum": 1000000000,
        "minimum": -1000000000
       },
       "timestamp_s": {
        "type": "number",
        "title": "Timestamp S",
        "maximum": 86400,
        "minimum": 0
       }
      },
      "additionalProperties": false
     },
     "title": "Trajectory",
     "maxItems": 4096,
     "minItems": 2
    },
    "robot_radius": {
     "type": "number",
     "title": "Robot Radius",
     "maximum": 1000000000,
     "minimum": 0
    },
    "minimum_clearance": {
     "type": "number",
     "title": "Minimum Clearance",
     "maximum": 1000000000,
     "minimum": 0
    }
   },
   "additionalProperties": false
  },
  "schema_version": {
   "const": "rqm.jobs.bazaar-buyer-job-request.v1"
  },
  "idempotency_key": {
   "type": "string",
   "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]*$",
   "maxLength": 128,
   "minLength": 1
  },
  "max_total_price": {
   "type": "string",
   "pattern": "^(?:0|[1-9]\\d{0,13})(?:\\.\\d{1,6})?$"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/rqm-check-collision-constraints-f8940cd7/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from jobs.rqmtechnologies.com](https://www.zero.xyz/host/jobs.rqmtechnologies.com/llms.txt)
