Skip to main content
A release represents a merged pull request in your project. Each release includes basic GitHub metadata and a chat_id pointing to the chat where the release analysis happened.

GET /v1/releases

List releases for your project. Returns releases in descending merged_at order, newest first.

Request

Authorization
string
required
Bearer token. See Authentication.
status
string
Filter by status: "active" or "dismissed".
limit
integer
Number of releases to return. Default 20, max 100.
starting_after
string
Cursor for pagination. Pass the id of the last release from the previous page.
curl https://app.userjourneys.ai/api/v1/releases \
  -H "Authorization: Bearer uj_live_your_key_here"
{
  "object": "list",
  "data": [
    {
      "id": "6a9f3b0d-6a8c-4cde-9e47-9d53f78a3d56",
      "object": "release",
      "status": "active",
      "chat_id": "7af6cf75-20ec-49f4-b113-929c01dfbe45",
      "github_pr_number": 482,
      "github_pr_title": "Ship release summary emails",
      "github_pr_url": "https://github.com/acme/product/pull/482",
      "github_pr_author": "alex",
      "merged_at": "2026-04-10T15:22:13.000Z",
      "last_analysis_at": "2026-04-10T15:25:44.000Z",
      "created_at": "2026-04-10T15:22:20.000Z"
    }
  ],
  "has_more": false
}
Use status=active if you only want releases that are still active in the release workflow.

GET /v1/releases/:id

Retrieve a single release with full pull request metadata.

Request

Authorization
string
required
Bearer token. See Authentication.
id
string
required
Release ID (UUID).
curl https://app.userjourneys.ai/api/v1/releases/6a9f3b0d-6a8c-4cde-9e47-9d53f78a3d56 \
  -H "Authorization: Bearer uj_live_your_key_here"
{
  "id": "6a9f3b0d-6a8c-4cde-9e47-9d53f78a3d56",
  "object": "release",
  "status": "active",
  "chat_id": "7af6cf75-20ec-49f4-b113-929c01dfbe45",
  "github_pr_number": 482,
  "github_pr_title": "Ship release summary emails",
  "github_pr_description": "Adds release summary emails and related delivery metrics.",
  "github_pr_url": "https://github.com/acme/product/pull/482",
  "github_pr_author": "alex",
  "merged_at": "2026-04-10T15:22:13.000Z",
  "last_analysis_at": "2026-04-10T15:25:44.000Z",
  "created_at": "2026-04-10T15:22:20.000Z"
}
Returns 404 if the release doesn’t exist or doesn’t belong to your project.

Release object

id
string
Release ID (UUID).
object
string
"release"
status
string
"active" or "dismissed".
chat_id
string
ID of the linked chat.
github_pr_number
integer
GitHub pull request number.
github_pr_title
string
GitHub pull request title.
github_pr_description
string | null
GitHub pull request description. Only returned by GET /v1/releases/:id.
github_pr_url
string
GitHub pull request URL.
github_pr_author
string
GitHub username or author handle for the pull request.
merged_at
string
ISO 8601 timestamp for when the pull request was merged.
last_analysis_at
string | null
ISO 8601 timestamp for the last release analysis run, or null if analysis has not run yet.
created_at
string
ISO 8601 timestamp for when the release record was created.