What is Stations?
Stations is a workflow orchestration platform that helps you design, manage, and execute complex multi-step processes. Think of it like a railway system for your workflows - you define stations (stops along the way), create routes (the path through those stations), and track progress as work moves through the system.
The Railway Metaphor
Stations uses a railway metaphor to make workflow concepts intuitive:
| Concept | Railway Equivalent | Description |
|---|---|---|
| Station | Train Station | A discrete step or checkpoint in your workflow |
| Route | Train Route | An active journey through multiple stations |
| Stop | Stop on a Route | A specific station visit within a route |
| Track | Railway Track | The path connecting stops in a route |
| Route Template | Scheduled Service | A reusable pattern for creating routes |
Key Concepts
Stations
Stations are the building blocks of your workflows. Each station represents a discrete task, checkpoint, or decision point. Stations are reusable - you can include the same station in multiple routes.
type Station { id: ID name: String description: String remotePortalId: ID # Connect to external systems}Example stations:
- “Review Application”
- “Manager Approval”
- “Send Notification”
- “Process Payment”
Routes
Routes are active workflows - they represent work moving through your system. A route has a status and tracks which stops have been completed.
type Route { id: ID! name: String status: RouteStatus # active, paused, completed, cancelled stops: [Stop] track: AWSJSON # The route structure actionLog: [StopActionRecord] # History of actions}Route Statuses:
active- Route is in progresspaused- Route is temporarily stoppedcompleted- All stops finishedcancelled- Route was terminated
Route Templates
Templates let you save workflow patterns for reuse. When you have a common process that runs repeatedly, create a template and spawn routes from it.
type RouteTemplate { id: ID name: String description: String stops: [Stop] track: AWSJSON}Stops
Stops are the actual visits to stations within a route. While a station is a reusable definition, a stop is a specific instance of visiting that station in a particular route.
type Stop { id: ID! type: StopType # station, portal, or route stationId: ID name: String status: String station: Station asynchronousChildren: Boolean}Architecture Overview
┌─────────────────────────────────────────────────────────┐│ Your Application │└─────────────────────────────────────────────────────────┘ │ ▼┌─────────────────────────────────────────────────────────┐│ GraphQL API Layer ││ ┌──────────┐ ┌──────────┐ ┌──────────────────────┐ ││ │ Queries │ │Mutations │ │ Subscriptions │ ││ └──────────┘ └──────────┘ └──────────────────────┘ │└─────────────────────────────────────────────────────────┘ │ ▼┌─────────────────────────────────────────────────────────┐│ Stations Platform ││ ┌──────────┐ ┌──────────┐ ┌──────────────────────┐ ││ │ Stations │ │ Routes │ │ Route Templates │ ││ └──────────┘ └──────────┘ └──────────────────────┘ │└─────────────────────────────────────────────────────────┘Multi-Tenant Architecture
Stations is built as a multi-tenant platform with role-based access control:
| Role | Description | Permissions |
|---|---|---|
| Owner | Account owner | Full access, billing management |
| Admin | Administrator | Manage stations, routes, users |
| User | Standard user | View and mark stops completed |
| Free | Free tier | Limited feature access |
Use Cases
Stations is versatile and can power many different workflow types:
Approval Workflows
Track documents, requests, or decisions through multiple approval stages.
Onboarding Processes
Guide new employees or customers through setup steps.
Project Management
Define project phases and track completion across teams.
Data Pipelines
Orchestrate data processing steps with status tracking.
Quality Assurance
Create testing checklists that must be completed in order.
Next Steps
Now that you understand the concepts, let’s get hands-on:
- Quick Start Guide - Create your first station and route
- Stations Deep Dive - Learn more about stations
- Routes Deep Dive - Master route creation and management