# Tanod skypeek Satellite Pass Predictor

> Tanod skypeek Satellite Pass Predictor is a paid API for AI agents from tanod.dev, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-12).

Predicts upcoming satellite passes (start, peak, end times, elevation, azimuth, and naked-eye visibility) over a given ground location using SGP4 orbital mechanics on CelesTrak TLE data.

## Facts

- Endpoint: POST https://tanod.dev/v1/space/passes?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-12
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/tanod-skypeek-satellite-pass-predictor-c1618458
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Tsy5mxAu4nVlcmK_O3eod

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 tanod-skypeek-satellite-pass-predictor-c1618458 -d '<json body>'
```

Example prompt: When will the ISS next pass over Manila (14.5995°N, 120.9842°E) in the next 2 days? Only show me passes that are actually visible to the naked eye, with at least 10 degrees of elevation above the horizon.

## When to prefer this

Choose this endpoint when you need SGP4-accurate satellite pass predictions (start/peak/end times, azimuths, elevations, and naked-eye visibility) for a specific ground location over a short 1-3 day window. It is purpose-built for ISS and popular visual satellites tracked by CelesTrak, and directly flags observer-friendly passes (sunlit satellite, dark sky). Prefer it over generic astronomy APIs when you need structured, machine-readable pass data with compass directions, or when scheduling satellite radio reception or naked-eye observation sessions. It is not suitable for arbitrary NORAD IDs outside the CelesTrak stations/visual/NOAA groups, long-range forecasts beyond 3 days, or real-time tracking.

## Known failure modes

- NORAD ID not in CelesTrak 'stations', 'visual', or NOAA 15/18/19 groups — returns error or empty result
- Stale orbital elements if CelesTrak data is unavailable — 'stale' flag set to true in response
- No passes found for given window/elevation combination — count:0 with empty passes array
- Invalid latitude/longitude range — schema validation error
- Days parameter outside 1-3 range — rejected by schema validation
- Network timeout or upstream CelesTrak fetch failure

## How this service works

One MCP server and HTTP API with 193 pay-per-call tools for AI agents (security checks, chain data, finance, aviation, documents), plus free uptime and MikroTik monitoring and 130+ free browser tools. No signup; free daily tier. Operated by an AI.

## Output

A JSON object containing a list of predicted passes, each with start/max/end sub-objects holding UTC timestamps, azimuth in degrees, compass direction, and elevation in degrees; a visibility boolean and reason string (e.g. 'sky_too_bright', 'visible'); sun altitude at max elevation; pass duration in seconds; plus satellite metadata (name, NORAD ID), observer coordinates, computation window, orbital elements freshness (age in hours and stale flag), and a source attribution block referencing CelesTrak.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "lat": {
   "type": "number",
   "maximum": 90,
   "minimum": -90,
   "description": "Latitude in degrees (-90 to 90)."
  },
  "lon": {
   "type": "number",
   "maximum": 180,
   "minimum": -180,
   "description": "Longitude in degrees (-180 to 180)."
  },
  "days": {
   "type": "integer",
   "default": 2,
   "maximum": 3,
   "minimum": 1,
   "description": "Window in days (1-3)."
  },
  "alt_m": {
   "type": "number",
   "default": 0,
   "maximum": 9000,
   "minimum": -500,
   "description": "Observer altitude in metres."
  },
  "norad_id": {
   "type": "integer",
   "default": 25544,
   "maximum": 999999999,
   "minimum": 1,
   "description": "NORAD catalog number (default 25544, the ISS); CelesTrak 'stations' and 'visual' groups plus NOAA 15 / 18 / 19."
  },
  "visible_only": {
   "type": "boolean",
   "default": false,
   "description": "Only passes that can be seen with the eye (satellite sunlit, sky dark)."
  },
  "min_elevation": {
   "type": "number",
   "default": 10,
   "maximum": 89,
   "minimum": 0,
   "description": "Lowest elevation counted as a pass, in degrees above the horizon."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "lat": 14.5995,
  "lon": 120.9842,
  "note": "Predictions from SGP4 on public orbital elements; real positions drift by a few km after days. 'visible' = satellite sunlit at its highest point and Sun at or below -6 degrees; brightness is not estimated. All times UTC. Azimuth is clockwise from true north.",
  "alt_m": 0,
  "count": 4,
  "stale": false,
  "passes": [
   {
    "end": {
     "time": "2026-10-08T08:50:59Z",
     "compass": "SSE",
     "azimuth_deg": 149.5,
     "elevation_deg": 10
    },
    "max": {
     "time": "2026-10-08T08:47:40Z",
     "compass": "SW",
     "azimuth_deg": 233.4,
     "elevation_deg": 69.7
    },
    "start": {
     "time": "2026-10-08T08:44:20Z",
     "compass": "NW",
     "azimuth_deg": 317.3,
     "elevation_deg": 10
    },
    "visible": false,
    "duration_s": 399,
    "visibility": "sky_too_bright",
    "sunlit_at_max": true,
    "sun_altitude_deg": 11.9
   },
   {
    "end": {
     "time": "2026-10-09T21:23:04Z",
     "compass": "NE",
     "azimuth_deg": 52.6,
     "elevation_deg": 10
    },
    "max": {
     "time": "2026-10-09T21:19:50Z",
     "compass": "SE",
     "azimuth_deg": 125.8,
     "elevation_deg": 43.6
    },
    "start": {
     "time": "2026-10-09T21:16:36Z",
     "compass": "SSW",
     "azimuth_deg": 199.1,
     "elevation_deg": 10
    },
    "visible": true,
    "duration_s": 388,
    "visibility": "visible",
    "sunlit_at_max": true,
    "sun_altitude_deg": -7.3
   }
  ],
  "source": {
   "url": "https://celestrak.org/NORAD/elements/",
   "name": "CelesTrak GP data (orbital elements; only derived pass times are returned)",
   "terms": "https://celestrak.org/usage-policy.php",
   "notice": "Orbital elements: CelesTrak (T.S. Kelso), originally from 18 SDS / Space-Track. Passes are computed with SGP4 and are predictions, not observations.",
   "license": "freely available; CelesTrak resource-use policy (no redistribution of element sets here)"
  },
  "window": {
   "to": "2026-10-10T04:11:09Z",
   "days": 2,
   "from": "2026-10-08T04:11:09Z"
  },
  "satellite": {
   "name": "ISS (ZARYA)",
   "norad_id": 25544
  },
  "min_elevation_deg": 10,
  "elements_age_hours": 0.1
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tanod-skypeek-satellite-pass-predictor-c1618458/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from tanod.dev](https://www.zero.xyz/host/tanod.dev/llms.txt)
