API docs

Zapier Integration

Connect AIS Intelligence to 5,000+ apps via Zapier — without writing code. Use cases: log vessel arrivals to Google Sheets, send Slack alerts when a port is congested, email your dispatch team when a specific vessel departs.

Option A — Webhooks (simplest, no Zapier account needed)

AIS Intelligence has a built-in webhook system. Every time a vessel enters or exits a port, your registered webhook URL receives a POST with the vessel data. Zapier's "Catch Hook" action accepts this natively.

STEP 1 — CREATE A ZAPIER "CATCH HOOK" TRIGGER

In Zapier: New Zap → Trigger → Webhooks by Zapier → Catch Hook. Copy the webhook URL (looks like https://hooks.zapier.com/hooks/catch/...).

STEP 2 — REGISTER THE WEBHOOK IN AIS INTELLIGENCE
curl -X POST https://ais.binnacleai.com/v1/webhooks \
  -H "X-API-Key: YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://hooks.zapier.com/hooks/catch/...", \
       "events": ["vessel_update"], "port": "dutch_harbor"}'
STEP 3 — TEST THE WEBHOOK
curl -X POST https://ais.binnacleai.com/v1/webhooks/{id}/test \
  -H "X-API-Key: YOUR_KEY"

Zapier will show the test payload. Map the fields (mmsi, ship_name, sog, lat, lng) to your action.

Option B — Polling (for port congestion, dark ships, fleet status)

For data that changes over time (congestion score, fleet position), use Zapier's Schedule trigger + HTTP request action to poll the API on a timer.

Every hour, check Dutch Harbor congestion:
Trigger: Schedule (every 1 hour)
Action: Webhooks by Zapier → GET → https://ais.binnacleai.com/v1/intelligence/congestion?port=dutch_harbor
Headers: X-API-Key: YOUR_KEY
Filter: continue only if score > 75
Action 2: Slack → Send Channel Message → "Dutch Harbor is congested (score: {{score}})"

Webhook payload format

{
  "event": "vessel_update",
  "port": "dutch_harbor",
  "timestamp": "2026-06-17T18:30:00Z",
  "vessels": [
    { "mmsi": "338234631", "ship_name": "F/V SEA ROVER",
      "lat": 53.885, "lng": -166.54, "sog": 0.1,
      "country": "USA", "ais_class": "B" }
  ]
}

Common Zap recipes

TriggerActionUse case
AIS webhook → vessel_updateSlack messageDispatch team notified on arrivals
Schedule hourlyPoll /v1/intelligence/congestion + Google Sheets rowCongestion log
AIS webhook → vessel_updateGmail to fleet ownerPersonal arrival notification
Schedule dailyPoll /v1/reports/port/dutch_harbor + Airtable rowDaily ops log

Get an API key    Full API docs