Hydra
API Reference

Unauthenticated public endpoints on the Hydra Node.

Public Endpoints

These endpoints require no authentication and are available on every running node.


GET /health

Basic health check.

curl http://localhost:4001/health

Response: 200 OK

{
  "status": "ok"
}

GET /status

Node version and uptime information.

curl http://localhost:4001/status

Response: 200 OK

{
  "status": "ok",
  "version": "0.1.0",
  "uptime": "4h32m15s",
  "startedAt": "2026-03-21T04:00:00Z"
}
Field Type Description
status string Always "ok"
version string Node binary version
uptime string Go duration string
startedAt string ISO 8601 start time

GET /status/sources

Status of all data collection sources.

curl http://localhost:4001/status/sources

Response: 200 OK

{
  "adsb": { "enabled": true, "status": "running", "lastPoll": "2026-03-21T08:29:00Z" },
  "ais": { "enabled": true, "status": "running", "lastPoll": "2026-03-21T08:30:00Z" },
  "oref": { "enabled": true, "status": "running", "lastPoll": "2026-03-21T08:29:57Z" },
  "cyber": { "enabled": false, "status": "stopped", "lastPoll": null },
  "usgs": { "enabled": true, "status": "running", "lastPoll": "2026-03-21T08:25:00Z" }
}

GET /public/signals

Returns recent signals (max 50). No filtering available.

curl http://localhost:4001/public/signals

Response: 200 OK

{
  "signals": [
    {
      "title": "Military aircraft circling pattern detected",
      "description": "ISR aircraft performing extended orbit...",
      "severity": "MEDIUM",
      "category": "AIRCRAFT_MOVEMENT",
      "source": "ADSB",
      "sourceRef": "adsb-orbit-AE1234",
      "region": "Middle East",
      "countries": ["SY"],
      "latitude": 35.5,
      "longitude": 38.2,
      "metadata": {},
      "collectedAt": "2026-03-21T08:15:00Z"
    }
  ]
}

GET /public/aircraft

Returns thinned aircraft positions (every 3rd aircraft).

curl http://localhost:4001/public/aircraft

Response: 200 OK

[
  {
    "hex": "AE1234",
    "callsign": "FORTE12",
    "type": "GLXE",
    "registration": "10-2045",
    "operator": "US Air Force",
    "category": "ISR",
    "lat": 36.12,
    "lng": -5.35,
    "altitude": 55000,
    "speed": 310,
    "track": 92.4,
    "verticalRate": 0,
    "squawk": "3615",
    "emergency": "none",
    "flag": "US"
  }
]

GET /public/vessels

Returns recent vessel positions.

curl http://localhost:4001/public/vessels

Response: 200 OK

[
  {
    "mmsi": "211234567",
    "name": "NORTHERN SPIRIT",
    "callSign": "DABC",
    "imo": "9876543",
    "shipType": 80,
    "category": "TANKER",
    "flag": "DE",
    "destination": "ROTTERDAM",
    "lat": 57.68,
    "lng": 11.94,
    "speed": 12.3,
    "course": 245.0,
    "heading": 243,
    "navStatus": 0
  }
]

GET /public/markets

Returns recent prediction market data.

curl http://localhost:4001/public/markets

Response: 200 OK

[
  {
    "marketId": "polymarket-abc123",
    "question": "Will Russia and Ukraine reach a ceasefire by July 2026?",
    "description": "Resolves Yes if...",
    "outcomes": ["Yes", "No"],
    "prices": [0.23, 0.77],
    "volume": 4250000,
    "liquidity": 890000,
    "endDate": "2026-07-01T00:00:00Z",
    "tags": ["ukraine", "russia", "ceasefire"]
  }
]