curl --location --request POST 'https://api.userorbit.com/v1/public/stages.list' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"roadmapId": "roadmap-uuid"
}'
const response = await fetch('https://api.userorbit.com/v1/public/stages.list', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
roadmapId: 'roadmap-uuid'
})
});
const { data: stages } = await response.json();
import requests
response = requests.post(
'https://api.userorbit.com/v1/public/stages.list',
headers={
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
json={
'roadmapId': 'roadmap-uuid'
}
)
stages = response.json()['data']
{
"data": [
{
"id": "stage-uuid-1",
"name": "Under Consideration",
"roadmapId": "roadmap-uuid",
"order": 1,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#E5E7EB"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
},
{
"id": "stage-uuid-2",
"name": "Planned",
"roadmapId": "roadmap-uuid",
"order": 2,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#3B82F6"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
},
{
"id": "stage-uuid-3",
"name": "In Progress",
"roadmapId": "roadmap-uuid",
"order": 3,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#F59E0B"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
},
{
"id": "stage-uuid-4",
"name": "Completed",
"roadmapId": "roadmap-uuid",
"order": 4,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#10B981"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
}
]
}
Stages
List Stages
Get all stages for a roadmap. Returns public stages ordered by their display order.
POST
/
v1
/
public
/
stages.list
curl --location --request POST 'https://api.userorbit.com/v1/public/stages.list' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"roadmapId": "roadmap-uuid"
}'
const response = await fetch('https://api.userorbit.com/v1/public/stages.list', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
roadmapId: 'roadmap-uuid'
})
});
const { data: stages } = await response.json();
import requests
response = requests.post(
'https://api.userorbit.com/v1/public/stages.list',
headers={
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
json={
'roadmapId': 'roadmap-uuid'
}
)
stages = response.json()['data']
{
"data": [
{
"id": "stage-uuid-1",
"name": "Under Consideration",
"roadmapId": "roadmap-uuid",
"order": 1,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#E5E7EB"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
},
{
"id": "stage-uuid-2",
"name": "Planned",
"roadmapId": "roadmap-uuid",
"order": 2,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#3B82F6"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
},
{
"id": "stage-uuid-3",
"name": "In Progress",
"roadmapId": "roadmap-uuid",
"order": 3,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#F59E0B"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
},
{
"id": "stage-uuid-4",
"name": "Completed",
"roadmapId": "roadmap-uuid",
"order": 4,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#10B981"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
}
]
}
Authentication
Authorization: Bearer YOUR_API_KEY
Request Body
string
required
The roadmap ID to get stages for
boolean
default:"false"
Include private stages (requires team member authentication)
Response
array
Array of stage objects
Show Stage Object
Show Stage Object
string
Stage ID (UUID)
string
Stage display name (e.g., “Planned”, “In Progress”, “Completed”)
string
Roadmap this stage belongs to
number
Display order of the stage
object
string
ISO 8601 timestamp
string
ISO 8601 timestamp
curl --location --request POST 'https://api.userorbit.com/v1/public/stages.list' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"roadmapId": "roadmap-uuid"
}'
const response = await fetch('https://api.userorbit.com/v1/public/stages.list', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
roadmapId: 'roadmap-uuid'
})
});
const { data: stages } = await response.json();
import requests
response = requests.post(
'https://api.userorbit.com/v1/public/stages.list',
headers={
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
json={
'roadmapId': 'roadmap-uuid'
}
)
stages = response.json()['data']
{
"data": [
{
"id": "stage-uuid-1",
"name": "Under Consideration",
"roadmapId": "roadmap-uuid",
"order": 1,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#E5E7EB"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
},
{
"id": "stage-uuid-2",
"name": "Planned",
"roadmapId": "roadmap-uuid",
"order": 2,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#3B82F6"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
},
{
"id": "stage-uuid-3",
"name": "In Progress",
"roadmapId": "roadmap-uuid",
"order": 3,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#F59E0B"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
},
{
"id": "stage-uuid-4",
"name": "Completed",
"roadmapId": "roadmap-uuid",
"order": 4,
"meta": {
"isPrivate": false,
"disableModeration": false,
"color": "#10B981"
},
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
}
]
}
Behavior
- Public Only: By default, returns only public stages (
isPrivate: false) - Ordered: Stages returned in display order (order field)
- Customizable: Each roadmap can have different stages
Use Cases
- Roadmap Column Headers: Display stage names as column headers
- Status Dropdowns: Populate stage selection dropdowns
- Filtering: Allow users to filter topics by stage
Notes
- Stages are specific to each roadmap
- Order determines display sequence (1, 2, 3, etc.)
- Private stages only visible to team members
- Stages can have custom colors for visual organization
Was this page helpful?
⌘I

