Large datasets use cursor-style pagination with limit and offset.
Parameters
limit — records per page. Range: 1–10000. Default: 1000.
offset — integer offset to skip records. Default: 0.
Example: iterate pages until fewer records are returned (Python)
import requests
url = "https://api.mission.space/api/v1/poes"
params = {
"start_time": "2025-01-01T00:00:00Z",
"end_time": "2025-01-02T00:00:00Z",
"limit": 1000,
"offset": 0,
}
headers = {"X-API-Key": "YOUR_API_KEY"}
all_data = []
while True:
resp = requests.get(url, params=params, headers=headers)
resp.raise_for_status()
j = resp.json()
data = j.get("data", [])
all_data.extend(data)
# Stop when fewer records returned than requested (end reached)
if len(data) < params.get("limit", 1000):
break
params["offset"] = params.get("offset", 0) + params.get("limit", 1000)
print(f"Retrieved {len(all_data)} records")
Filtering tips
- Narrow
start_time/end_time to reduce returned records. Maximum span: 365 days.
- Use satellite filters (e.g.,
satellite=GOES16) where available to avoid record multiplication across satellites.