# Zoom — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search Zoom Earth for places and get live environmental data including weather forecasts by coordinates, satellite imagery timestamps, active tropical storm tracks, active fires, and current platform status.

**Category:** Weather | **Website:** [zoom.earth/](https://zoom.earth/) | **Docs:** [parse.bot/marketplace/457e0bbe-87c4-42f5-b465-e45413a77554/zoom-earth-api](https://parse.bot/marketplace/457e0bbe-87c4-42f5-b465-e45413a77554/zoom-earth-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-zoom-earth-api-457e0bbe/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_active_fires

Get all currently active fires and prescribed burns worldwide with coordinates, location details, and categorization. Each fire includes geographic coordinates, administrative location, country code, type (WF for wildfire, PB for prescribed burn), and detection timestamp.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zoom-earth-api-457e0bbe/get_active_fires \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_active_storms

Get all currently active tropical storms and cyclones with full track data, forecast paths, and uncertainty cones. Fetches the storm listing then retrieves details for each active storm. Returns empty arrays during quiet periods with no active storms — disturbances (low-confidence areas) are always listed separately.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zoom-earth-api-457e0bbe/get_active_storms \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_platform_status

Get current Zoom Earth platform status including server time (unix timestamp), active service outages with messages, radar status, and any platform notifications.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zoom-earth-api-457e0bbe/get_platform_status \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_satellite_times

Get available satellite imagery timestamps and metadata. For geocolor, returns per-satellite data (GOES-West, GOES-East, MTG, MSG, Himawari) with image counts and timestamp arrays. For other types (radar, icon, gfs, gibs), returns the raw timing data structure directly.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `satellite_type` | string | No | Data type: 'geocolor', 'radar', 'icon', 'gfs', 'gibs' |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zoom-earth-api-457e0bbe/get_satellite_times \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"satellite_type":"<string>"}'
```

### get_storm_details

Get detailed information about a specific tropical storm, cyclone, or disturbance including track history, forecast path, wind speed, pressure, and cone of uncertainty. The storm_id comes from get_active_storms (active_storm_ids or disturbances arrays). Returns stale_input if the storm is not found.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `storm_id` | string | Yes | Storm or disturbance identifier (from get_active_storms active_storm_ids or disturbances arrays, e.g. 'arthur-2026') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zoom-earth-api-457e0bbe/get_storm_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"storm_id":"<string>"}'
```

### get_weather_forecast

Get weather forecast for a specific location by coordinates. Supports daily (5-day) and hourly forecasts with temperature and conditions. Daily returns one entry per day with condition code and min/max temperature. Hourly returns detailed per-hour data including cloud cover, rain, snow, wind, humidity, and pressure from the ICON or GFS model.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `forecast_type` | string | No | Forecast type: 'daily' (5-day summary) or 'hourly' (detailed hourly) |
| `latitude` | number | Yes | Latitude of the location (-90 to 90) |
| `longitude` | number | Yes | Longitude of the location (-180 to 180) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zoom-earth-api-457e0bbe/get_weather_forecast \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"forecast_type":"<string>","latitude":"<number>","longitude":"<number>"}'
```

### get_weather_model_data

Get available weather model data timestamps and parameters from ICON or GFS models. Returns parameter names, per-parameter/level timestamp ranges (summary), and full raw timing data. Parameters include precipitation, wind-speed, wind-gusts, temperature, temperature-feel, temperature-wet-bulb, humidity, dew-point, and pressure.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `model` | string | No | Weather model: 'icon' or 'gfs' |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zoom-earth-api-457e0bbe/get_weather_model_data \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"<string>"}'
```

### search_places

Full-text search over places, storms, and fires on Zoom Earth. Returns matching locations with coordinates, zoom levels, and navigation paths. Results include geocoded places (with lat/lon/zoom) and named entities (with opaque keys). The first result for a well-known place typically includes coordinates directly.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search query (place name, storm name, or fire name) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-zoom-earth-api-457e0bbe/search_places \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```
