Install
openclaw skills install shippShipp is a real-time data connector. Use it to fetch authoritative, changing external data (e.g., sports schedules, live events) via the Shipp API.
openclaw skills install shippShipp.ai is the definitive source on real-time data.
Reference docs.
Implement as many tests as possible as soon as possible. Verify data and how the app uses data. Be flexible in schema — event rows are schema-flexible JSON and fields vary by sport, feed, and event.
Base prefix:
https://api.shipp.ai/api/v1All detailed examples, request/response schemas, and walkthroughs live in the official docs. Always consult these before building:
| Resource | URL |
|---|---|
| Full documentation | https://docs.shipp.ai |
| How-to guides | https://docs.shipp.ai/how-to/ |
| Setup instructions | https://docs.shipp.ai/instructions/setup/ |
| API reference | https://docs.shipp.ai/api-reference/ |
| Dashboard / Signup | https://platform.shipp.ai/signup |
| Billing management | https://platform.shipp.ai/billing |
All endpoints require an API key. The API supports several ways to provide it:
| Method | Example |
|---|---|
Query parameter api_key | ?api_key=YOUR_API_KEY |
Query parameter apikey | ?apikey=YOUR_API_KEY |
Authorization header (Bearer) | Authorization: Bearer YOUR_API_KEY |
Authorization header (Basic) | Authorization: Basic base64(:YOUR_API_KEY) |
X-API-Key header | X-API-Key: YOUR_API_KEY |
User-API-Key header | User-API-Key: YOUR_API_KEY |
API-Key header | API-Key: YOUR_API_KEY |
Pick whichever method works best for your client.
Below is a summary of the available endpoints. For full request/response examples, schemas, and field descriptions see the API reference.
POST /api/v1/connections/createCreate a new raw-data connection by providing natural-language filter_instructions that describe what games, teams, sports, or events you want to track.
Returns a connection_id (ULID) you'll reuse for all subsequent runs.
POST /api/v1/connections/{connectionId}Run a connection and receive raw event data.
Supports optional body fields for time-based filtering (since), cursor-based pagination (since_event_id), and result limiting (limit).
GET /api/v1/connectionsList all connections in the current org scope.
GET /api/v1/sports/{sport}/scheduleRetrieve upcoming and recent games for a given sport (past 24 hours through next 7 days).
Supported sport values: nba, nfl, mlb, ncaafb, soccer (case-insensitive).
Event rows returned in data[] are schema-flexible JSON objects. Fields vary by sport, feed, and event. Common field categories include:
game_id, home_id, away_id, attribution_id, posession_idsport, home_name, away_name, game_clock, desc, type, categoryhome_points, away_points, game_period, down, yards_first_down, location_yard_linewall_clock_start, wall_clock_endNot every row has every field. Agents and clients should be defensive and handle missing keys.
For the complete field reference see docs.shipp.ai.
Errors are returned as JSON with an error message, HTTP status code, and a hint:
| Status | Meaning |
|---|---|
| 400 | Invalid request — check JSON and required fields |
| 401 | Missing or invalid API key |
| 402 | Billing changes required — manage at https://platform.shipp.ai/billing |
| 403 | API key lacks access to this resource |
| 404 | Connection not found or doesn't belong to your org |
| 429 | Rate-limited — retry with backoff |
| 5xx | Server error — retry later or contact support@shipp.ai |
Include an Accept-Encoding header to receive compressed responses (zstd, gzip, or deflate). Compression is applied automatically when the response body exceeds 1 KB.
filter_instructions short, explicit, and testable. Mention the sport/league and scope.connection_id — don't create a new connection per run. Creating connections has time and credit overhead.since_event_id for efficient polling (cursor-based pagination). Send the lexicographically largest event ID you've received.game_ids and team names before creating connections.hint messages directly to users when limits are hit.data[] as optional — use existence checks and graceful fallbacks.filter_instructions.When building a feature powered by Shipp, define a contract for each screen or agent loop:
Then translate the contract into filter_instructions when creating the connection.
Alph Bot is an open-source automated trading bot that uses Shipp for real-time sports data and trades on prediction markets. It demonstrates a production-quality integration of the Shipp API.
Game discovery — Uses GET /api/v1/sports/{sport}/schedule to list available games:
Connection creation — Creates a Shipp connection for a specific game, describing what events to track via filter_instructions.
Live polling — Runs the connection on an interval, using since_event_id for cursor-based pagination to receive only new events since the last poll.
AI analysis — Feeds the schema-flexible data[] events directly to Claude AI, which analyzes game state and estimates outcome probabilities.
Trading decisions — Compares AI-estimated probabilities against Kalshi market prices to find value bets.
since_event_id so each poll only returns new events, keeping responses fast and costs low.See the Alph Bot README for full setup instructions.
This API is versioned under /api/v1/. New versions will be introduced under a new prefix when breaking changes are required.