Asteroids

An asteroid is a system object like any other location. The interesting ones are on a collision course with a populated body - divert them in time and you'll be thanked for it.

Endpoint

GET /v1/locations/{code}

Asteroids are system objects (see locations for the wider model). Scan a system and any inbound asteroids show up alongside planets, moons and belts.

Example

GET /v1/locations/{code} 200 OK
$ curl https://api.replicant.space/v1/locations/HAGAN-OBJ-1 \
    -H "Authorization: Bearer $API_KEY"
response response
{
  "code": "HAGAN-OBJ-1",
  "type": "asteroid",
  "system": "HAGAN",
  "mass_tonnes": 4.2e9,
  "trajectory": {
    "target": "HAGAN-3",
    "target_population": "intelligent",
    "impact_eta": "2026-05-18T14:22:00+00:00",
    "delta_v_required_ms": 0.42
  },
  "diversion": {
    "propulsors_required": 6,
    "propulsors_deployed": 0,
    "status": "open"
  },
  "devices": [],
  "inventory": []
}

Diversion

If trajectory.target is set, the asteroid is on an impact course. diversion.propulsors_required tells you how many propulsors you need to deflect it - this scales with the asteroid's mass and how close impact_eta is. A late discovery needs many propulsors; a calmly-spotted one needs few.

Print propulsors from your blueprint library, send them to the asteroid location, and activate them via POST /v1/devices/{code}. Once propulsors_deployed meets the requirement and all of them fire, the trajectory updates and diversion.status moves to diverted.

Rewards

A successful diversion unlocks a temporary mining bonus across the system - a thank-you from whoever was watching. If target_population is intelligent, you also earn reputation and civilisation points with the inhabitants of the target world.