Sign in

Goals

Get a goal update

GET https://service.steady.space/api/v2/goal-updates/{id}

200 Response

{
  "id": "8b3c4d5e-6f70-4d8e-9a01-2345678901cd",
  "goal": {
    "id": "7a1d2e3f-4b5c-4d6e-8f90-1234567890ab",
    "title": "Reduce p95 API latency to under 200ms"
  },
  "person": {
    "id": "5d8f9a12-3c4b-4e5d-9a6b-7c8d9e0f1a2b",
    "name": "Jordan Park"
  },
  "title": "Cut tail latency by 30ms this sprint",
  "body": "- Rolled out the new connection pool to 25% of traffic\n- p95 dropped from 240ms to 210ms\n- Next: expand to 100% once we confirm error rates stay flat\n",
  "progress": 60,
  "confidence": 90,
  "confidence_description": "On track",
  "created_at": "2026-05-04T18:18:22Z",
  "updated_at": "2026-05-04T18:18:22Z",
  "url": "https://app.steady.space/goal_updates/8b3c4d5e-6f70-4d8e-9a01-2345678901cd"
}
Field reference
Name Type Description
type string
id string
goal object
person object
title string
body string

Update body rendered as Markdown.

progress integer

Progress percentage. On create, defaults to the previous update’s progress (or 1 for the goal’s first update).

confidence integer

Confidence score. Normalized on save to one of 30 (off track), 60 (at risk), or 90 (on track). On create, defaults to the previous update’s confidence (or 100 for the goal’s first update).

confidence_description string

Human-readable label for the confidence score.

created_at string
updated_at string
url string

Update a goal update

PATCH https://service.steady.space/api/v2/goal-updates/{id}

Request body

{
  "title": "Cut tail latency by 30ms this sprint",
  "body": "- Rolled out the new connection pool to 25% of traffic\n- p95 dropped from 240ms to 210ms\n- Next: expand to 100% once we confirm error rates stay flat\n",
  "progress": 60,
  "confidence": 90
}
Field reference
Name Type Required Description
type string No
id string Yes
goal object Yes
person object Yes
title string No
body string No

Update body rendered as Markdown.

progress integer No

Progress percentage. On create, defaults to the previous update’s progress (or 1 for the goal’s first update).

confidence integer No

Confidence score. Normalized on save to one of 30 (off track), 60 (at risk), or 90 (on track). On create, defaults to the previous update’s confidence (or 100 for the goal’s first update).

confidence_description string Yes

Human-readable label for the confidence score.

created_at string Yes
updated_at string Yes
url string Yes

200 Response

{
  "id": "8b3c4d5e-6f70-4d8e-9a01-2345678901cd",
  "goal": {
    "id": "7a1d2e3f-4b5c-4d6e-8f90-1234567890ab",
    "title": "Reduce p95 API latency to under 200ms"
  },
  "person": {
    "id": "5d8f9a12-3c4b-4e5d-9a6b-7c8d9e0f1a2b",
    "name": "Jordan Park"
  },
  "title": "Cut tail latency by 30ms this sprint",
  "body": "- Rolled out the new connection pool to 25% of traffic\n- p95 dropped from 240ms to 210ms\n- Next: expand to 100% once we confirm error rates stay flat\n",
  "progress": 60,
  "confidence": 90,
  "confidence_description": "On track",
  "created_at": "2026-05-04T18:18:22Z",
  "updated_at": "2026-05-04T18:18:22Z",
  "url": "https://app.steady.space/goal_updates/8b3c4d5e-6f70-4d8e-9a01-2345678901cd"
}
Field reference
Name Type Description
type string
id string
goal object
person object
title string
body string

Update body rendered as Markdown.

progress integer

Progress percentage. On create, defaults to the previous update’s progress (or 1 for the goal’s first update).

confidence integer

Confidence score. Normalized on save to one of 30 (off track), 60 (at risk), or 90 (on track). On create, defaults to the previous update’s confidence (or 100 for the goal’s first update).

confidence_description string

Human-readable label for the confidence score.

created_at string
updated_at string
url string

Delete a goal update

DELETE https://service.steady.space/api/v2/goal-updates/{id}

204 Response

The body is empty.

List goals

GET https://service.steady.space/api/v2/goals

Query parameters

Name Type Required Description
since string No

Filter to records on or after this date.

people_ids[] array No

Filter to records owned by, contributed to, or otherwise involving these people.

team_ids[] array No

Filter to records involving these teams.

goal_ids[] array No

Return only these goals. When set, archived goals are included.

page integer No

Page number (1-indexed).

per_page integer No

Number of records per page.

200 Response

[
  {
    "id": "7a1d2e3f-4b5c-4d6e-8f90-1234567890ab",
    "title": "Reduce p95 API latency to under 200ms",
    "description": "Improve end-user experience by cutting tail latency on\nthe public API. See the [perf tracker](https://example.com).\n",
    "start_date": "2026-04-01",
    "end_date": "2026-06-30",
    "update_cadence": "Weekly",
    "owner": {
      "id": "ab6e1c81-cc42-47b9-82d0-66601aea003d",
      "name": "Quinn Reed"
    },
    "parent": {
      "id": "1f0c8a44-9b21-4f3a-9c7e-8e2a5d4b6f01",
      "title": "Deliver a faster, more reliable platform"
    },
    "private": false,
    "archived": false,
    "contributors": [
      {
        "id": "5d8f9a12-3c4b-4e5d-9a6b-7c8d9e0f1a2b",
        "name": "Jordan Park"
      },
      {
        "id": "2e3f4a5b-6c7d-4e8f-9a0b-1c2d3e4f5a6b",
        "name": "Sam Okafor"
      }
    ],
    "teams": [
      {
        "id": "4c4f5632-7065-4dfb-bb90-c21b5b238ce4",
        "name": "Security"
      }
    ],
    "url": "https://app.steady.space/goals/7a1d2e3f-4b5c-4d6e-8f90-1234567890ab"
  }
]
Field reference
Name Type Description
type string
id string
title string
description string

Goal description rendered as Markdown.

start_date string
end_date string
update_cadence string
owner object
owner_id string
parent object
parent_id string
private boolean
archived boolean
contributors array
contributor_ids array
teams array
team_ids array
url string

Create a goal

POST https://service.steady.space/api/v2/goals

Request body

{
  "title": "Reduce p95 API latency to under 200ms",
  "description": "Improve end-user experience by cutting tail latency on\nthe public API. See the [perf tracker](https://example.com).\n",
  "start_date": "2026-04-01",
  "end_date": "2026-06-30",
  "update_cadence": "Weekly",
  "owner_id": "ab6e1c81-cc42-47b9-82d0-66601aea003d",
  "parent_id": "1f0c8a44-9b21-4f3a-9c7e-8e2a5d4b6f01",
  "private": false,
  "archived": false,
  "contributor_ids": [
    "5d8f9a12-3c4b-4e5d-9a6b-7c8d9e0f1a2b",
    "2e3f4a5b-6c7d-4e8f-9a0b-1c2d3e4f5a6b"
  ],
  "team_ids": [
    "4c4f5632-7065-4dfb-bb90-c21b5b238ce4"
  ]
}
Field reference
Name Type Required Description
type string No
id string Yes
title string No
description string No

Goal description rendered as Markdown.

start_date string No
end_date string No
update_cadence string No
owner object Yes
owner_id string No
parent object Yes
parent_id string No
private boolean No
archived boolean No
contributors array Yes
contributor_ids array No
teams array Yes
team_ids array No
url string Yes

201 Response

{
  "id": "7a1d2e3f-4b5c-4d6e-8f90-1234567890ab",
  "title": "Reduce p95 API latency to under 200ms",
  "description": "Improve end-user experience by cutting tail latency on\nthe public API. See the [perf tracker](https://example.com).\n",
  "start_date": "2026-04-01",
  "end_date": "2026-06-30",
  "update_cadence": "Weekly",
  "owner": {
    "id": "ab6e1c81-cc42-47b9-82d0-66601aea003d",
    "name": "Quinn Reed"
  },
  "parent": {
    "id": "1f0c8a44-9b21-4f3a-9c7e-8e2a5d4b6f01",
    "title": "Deliver a faster, more reliable platform"
  },
  "private": false,
  "archived": false,
  "contributors": [
    {
      "id": "5d8f9a12-3c4b-4e5d-9a6b-7c8d9e0f1a2b",
      "name": "Jordan Park"
    },
    {
      "id": "2e3f4a5b-6c7d-4e8f-9a0b-1c2d3e4f5a6b",
      "name": "Sam Okafor"
    }
  ],
  "teams": [
    {
      "id": "4c4f5632-7065-4dfb-bb90-c21b5b238ce4",
      "name": "Security"
    }
  ],
  "url": "https://app.steady.space/goals/7a1d2e3f-4b5c-4d6e-8f90-1234567890ab"
}
Field reference
Name Type Description
type string
id string
title string
description string

Goal description rendered as Markdown.

start_date string
end_date string
update_cadence string
owner object
owner_id string
parent object
parent_id string
private boolean
archived boolean
contributors array
contributor_ids array
teams array
team_ids array
url string

List a goal's updates

GET https://service.steady.space/api/v2/goals/{goal_id}/goal-updates

Query parameters

Name Type Required Description
page integer No

Page number (1-indexed).

per_page integer No

Number of records per page.

200 Response

[
  {
    "id": "8b3c4d5e-6f70-4d8e-9a01-2345678901cd",
    "goal": {
      "id": "7a1d2e3f-4b5c-4d6e-8f90-1234567890ab",
      "title": "Reduce p95 API latency to under 200ms"
    },
    "person": {
      "id": "5d8f9a12-3c4b-4e5d-9a6b-7c8d9e0f1a2b",
      "name": "Jordan Park"
    },
    "title": "Cut tail latency by 30ms this sprint",
    "body": "- Rolled out the new connection pool to 25% of traffic\n- p95 dropped from 240ms to 210ms\n- Next: expand to 100% once we confirm error rates stay flat\n",
    "progress": 60,
    "confidence": 90,
    "confidence_description": "On track",
    "created_at": "2026-05-04T18:18:22Z",
    "updated_at": "2026-05-04T18:18:22Z",
    "url": "https://app.steady.space/goal_updates/8b3c4d5e-6f70-4d8e-9a01-2345678901cd"
  }
]
Field reference
Name Type Description
type string
id string
goal object
person object
title string
body string

Update body rendered as Markdown.

progress integer

Progress percentage. On create, defaults to the previous update’s progress (or 1 for the goal’s first update).

confidence integer

Confidence score. Normalized on save to one of 30 (off track), 60 (at risk), or 90 (on track). On create, defaults to the previous update’s confidence (or 100 for the goal’s first update).

confidence_description string

Human-readable label for the confidence score.

created_at string
updated_at string
url string

Create a goal update

POST https://service.steady.space/api/v2/goals/{goal_id}/goal-updates

Request body

{
  "title": "Cut tail latency by 30ms this sprint",
  "body": "- Rolled out the new connection pool to 25% of traffic\n- p95 dropped from 240ms to 210ms\n- Next: expand to 100% once we confirm error rates stay flat\n",
  "progress": 60,
  "confidence": 90
}
Field reference
Name Type Required Description
type string No
id string Yes
goal object Yes
person object Yes
title string No
body string No

Update body rendered as Markdown.

progress integer No

Progress percentage. On create, defaults to the previous update’s progress (or 1 for the goal’s first update).

confidence integer No

Confidence score. Normalized on save to one of 30 (off track), 60 (at risk), or 90 (on track). On create, defaults to the previous update’s confidence (or 100 for the goal’s first update).

confidence_description string Yes

Human-readable label for the confidence score.

created_at string Yes
updated_at string Yes
url string Yes

201 Response

{
  "id": "8b3c4d5e-6f70-4d8e-9a01-2345678901cd",
  "goal": {
    "id": "7a1d2e3f-4b5c-4d6e-8f90-1234567890ab",
    "title": "Reduce p95 API latency to under 200ms"
  },
  "person": {
    "id": "5d8f9a12-3c4b-4e5d-9a6b-7c8d9e0f1a2b",
    "name": "Jordan Park"
  },
  "title": "Cut tail latency by 30ms this sprint",
  "body": "- Rolled out the new connection pool to 25% of traffic\n- p95 dropped from 240ms to 210ms\n- Next: expand to 100% once we confirm error rates stay flat\n",
  "progress": 60,
  "confidence": 90,
  "confidence_description": "On track",
  "created_at": "2026-05-04T18:18:22Z",
  "updated_at": "2026-05-04T18:18:22Z",
  "url": "https://app.steady.space/goal_updates/8b3c4d5e-6f70-4d8e-9a01-2345678901cd"
}
Field reference
Name Type Description
type string
id string
goal object
person object
title string
body string

Update body rendered as Markdown.

progress integer

Progress percentage. On create, defaults to the previous update’s progress (or 1 for the goal’s first update).

confidence integer

Confidence score. Normalized on save to one of 30 (off track), 60 (at risk), or 90 (on track). On create, defaults to the previous update’s confidence (or 100 for the goal’s first update).

confidence_description string

Human-readable label for the confidence score.

created_at string
updated_at string
url string

Get a goal

GET https://service.steady.space/api/v2/goals/{id}

200 Response

{
  "id": "7a1d2e3f-4b5c-4d6e-8f90-1234567890ab",
  "title": "Reduce p95 API latency to under 200ms",
  "description": "Improve end-user experience by cutting tail latency on\nthe public API. See the [perf tracker](https://example.com).\n",
  "start_date": "2026-04-01",
  "end_date": "2026-06-30",
  "update_cadence": "Weekly",
  "owner": {
    "id": "ab6e1c81-cc42-47b9-82d0-66601aea003d",
    "name": "Quinn Reed"
  },
  "parent": {
    "id": "1f0c8a44-9b21-4f3a-9c7e-8e2a5d4b6f01",
    "title": "Deliver a faster, more reliable platform"
  },
  "private": false,
  "archived": false,
  "contributors": [
    {
      "id": "5d8f9a12-3c4b-4e5d-9a6b-7c8d9e0f1a2b",
      "name": "Jordan Park"
    },
    {
      "id": "2e3f4a5b-6c7d-4e8f-9a0b-1c2d3e4f5a6b",
      "name": "Sam Okafor"
    }
  ],
  "teams": [
    {
      "id": "4c4f5632-7065-4dfb-bb90-c21b5b238ce4",
      "name": "Security"
    }
  ],
  "url": "https://app.steady.space/goals/7a1d2e3f-4b5c-4d6e-8f90-1234567890ab"
}
Field reference
Name Type Description
type string
id string
title string
description string

Goal description rendered as Markdown.

start_date string
end_date string
update_cadence string
owner object
owner_id string
parent object
parent_id string
private boolean
archived boolean
contributors array
contributor_ids array
teams array
team_ids array
url string

Update a goal

PATCH https://service.steady.space/api/v2/goals/{id}

Request body

{
  "title": "Reduce p95 API latency to under 200ms",
  "description": "Improve end-user experience by cutting tail latency on\nthe public API. See the [perf tracker](https://example.com).\n",
  "start_date": "2026-04-01",
  "end_date": "2026-06-30",
  "update_cadence": "Weekly",
  "owner_id": "ab6e1c81-cc42-47b9-82d0-66601aea003d",
  "parent_id": "1f0c8a44-9b21-4f3a-9c7e-8e2a5d4b6f01",
  "private": false,
  "archived": false,
  "contributor_ids": [
    "5d8f9a12-3c4b-4e5d-9a6b-7c8d9e0f1a2b",
    "2e3f4a5b-6c7d-4e8f-9a0b-1c2d3e4f5a6b"
  ],
  "team_ids": [
    "4c4f5632-7065-4dfb-bb90-c21b5b238ce4"
  ]
}
Field reference
Name Type Required Description
type string No
id string Yes
title string No
description string No

Goal description rendered as Markdown.

start_date string No
end_date string No
update_cadence string No
owner object Yes
owner_id string No
parent object Yes
parent_id string No
private boolean No
archived boolean No
contributors array Yes
contributor_ids array No
teams array Yes
team_ids array No
url string Yes

200 Response

{
  "id": "7a1d2e3f-4b5c-4d6e-8f90-1234567890ab",
  "title": "Reduce p95 API latency to under 200ms",
  "description": "Improve end-user experience by cutting tail latency on\nthe public API. See the [perf tracker](https://example.com).\n",
  "start_date": "2026-04-01",
  "end_date": "2026-06-30",
  "update_cadence": "Weekly",
  "owner": {
    "id": "ab6e1c81-cc42-47b9-82d0-66601aea003d",
    "name": "Quinn Reed"
  },
  "parent": {
    "id": "1f0c8a44-9b21-4f3a-9c7e-8e2a5d4b6f01",
    "title": "Deliver a faster, more reliable platform"
  },
  "private": false,
  "archived": false,
  "contributors": [
    {
      "id": "5d8f9a12-3c4b-4e5d-9a6b-7c8d9e0f1a2b",
      "name": "Jordan Park"
    },
    {
      "id": "2e3f4a5b-6c7d-4e8f-9a0b-1c2d3e4f5a6b",
      "name": "Sam Okafor"
    }
  ],
  "teams": [
    {
      "id": "4c4f5632-7065-4dfb-bb90-c21b5b238ce4",
      "name": "Security"
    }
  ],
  "url": "https://app.steady.space/goals/7a1d2e3f-4b5c-4d6e-8f90-1234567890ab"
}
Field reference
Name Type Description
type string
id string
title string
description string

Goal description rendered as Markdown.

start_date string
end_date string
update_cadence string
owner object
owner_id string
parent object
parent_id string
private boolean
archived boolean
contributors array
contributor_ids array
teams array
team_ids array
url string

Delete a goal

DELETE https://service.steady.space/api/v2/goals/{id}

204 Response

The body is empty.