Log trips, itineraries, accommodation, expenses. See all your travel history in one place. For frequent travelers who want their data out of TripIt.
Every operation in Waystation is available through a JSON REST API. No SDK required — use curl, fetch, or any HTTP client.
GET /api/trips — list all trips with optional search and filter query parametersPOST /api/trips — create a new trip recordGET /api/trips/{id} — retrieve a single trip by IDPUT /api/trips/{id} — update an existing tripDELETE /api/trips/{id} — remove a tripGET /api/stats — aggregated statistics with status breakdownGET /api/health — health check endpoint for monitoringSaaS tools hold your data hostage. Export formats are incomplete, migrations are painful, and pricing changes whenever the vendor feels like it. Waystation stores everything in SQLite on your own server. Your data is a file you control, back up, and query directly.
Point curl at /api/trips to interact with Waystation programmatically. The API follows predictable REST conventions: GET to list or fetch, POST to create, PUT to update, DELETE to remove. The response schema matches the internal data model exactly, so what you see in the dashboard is what the API returns.
An agency managing trips for multiple clients runs one Waystation instance per client on isolated VMs. Each instance gets its own data directory. There is no shared database, no multi-tenant risk, no worry about one client's data appearing in another client's export.
GET /api/trips — List all trips. Supports ?q=keyword for search and ?status=value for filteringPOST /api/trips — Create a new trip. Send JSON with at least nameGET /api/trips/{id} — Fetch one trip by IDPUT /api/trips/{id} — Update fields on an existing tripDELETE /api/trips/{id} — Remove a tripGET /api/stats — Returns total count and breakdown by statusGET /api/health — Returns {"status":"ok"} for uptime monitoringSelf-hosted travel and trip planner. Self-hosted on your infrastructure. Your data never leaves your server.
curl -fsSL https://stockyard.dev/install.sh | sh -s -- --tool waystation
PORT=9930 ./waystation
http://localhost:9930
Single binary. Embedded SQLite. No Docker. No database. No dependencies.
Your license key arrives by email within 5 minutes of checkout. Set it as an environment variable and restart the binary.
export WAYSTATION_LICENSE_KEY=stockyard_xxxxxxxxxxxxxxxxxxxx ./waystation
No cloud connectivity required. The binary validates the key offline with Ed25519 signatures.