··· Upper Texas Coast ··· classic sea-breeze pattern ··· mornings reliable · storms mid-afternoon · evenings clear ···

GulfLine

GulfLine for Developers

Everything the GulfLine app knows is available over a clean, versioned REST API — the app is built on these exact endpoints. Zone timelines, go/no-go plan verdicts, exposed-rider nowcasts, and satellite lightning clearance with configurable pool policies.

API access is paid & key-gated

While GulfLine is in beta, keys are issued by hand and pricing is worked out per use case — whether that’s a golf-cart platform pulling nowcasts or a pool operator wiring clearance into their front desk. Tell us what you’re building.

Request an API key

Quickstart

Base URL

https://api.gulfline.app

Auth

X-Api-Key header on every request

Honesty contract

Every payload carries meta.source, meta.dataAgeSeconds, and confidence with reasons

curl -H "X-Api-Key: gl_your_key" \
  "https://api.gulfline.app/api/v1/zones/league-city-east/timeline"

Safety note: a lightning clearance status of "unknown" means the feed is stale — treat it as closed. The API will never report a false all-clear. Raw spec: openapi.json

Zones & Location

GET /api/v1/zones
param type notes
city string

responses: 200

GET /api/v1/zones/{zoneId}
param type notes
zoneId * string

responses: 200 · 404

GET /api/v1/locate
param type notes
lat * number
lon * number

responses: 200

Forecasts & Planning

GET /api/v1/zones/{zoneId}/timeline
param type notes
date string Local calendar date (America/Chicago); defaults to today
zoneId * string

responses: 200 · 404

GET /api/v1/timeline
param type notes
lat * number
lon * number
date string Local calendar date (America/Chicago); defaults to today

responses: 200

GET /api/v1/plan
param type notes
lat * number
lon * number
start * string
end * string

responses: 200 · 400

GET /api/v1/regime
param type notes
city string
date string

responses: 200 · 404

Now — Alerts & Nowcast

GET /api/v1/alerts
param type notes
lat * number
lon * number

responses: 200

GET /api/v1/nowcast
param type notes
lat * number
lon * number
minutes integer

responses: 200

Lightning & Pool Clearance

GET /api/v1/lightning/clearance
param type notes
radiusMiles number
clearMinutes integer
lat * number
lon * number

responses: 200

GET /api/v1/lightning/recent
param type notes
lat * number
lon * number
radiusMiles number
minutes integer

responses: 200

Ask (Natural Language)

POST /api/v1/ask

JSON body — e.g. { "query": "pool tomorrow afternoon?", "lat": 29.51, "lon": -95.03 }

responses: 200 · 422 · 503

Operational

GET /api/v1/health

responses: 200

GET /api/v1/openapi.json

responses: 200