ServicesCatalogHTTP APIBranch history

List the branch events of a project

GET
/api/catalog/projects/{project_id}/ref-events

List the branch events of all branches in the project, in descending order of branchEventId. Event timestamps do not set the order, and identity order is not commit order. This is a live listing: new events with an identity below the current page can appear in later pages. Events above the current page do not appear again. You must have permission to read the branch history of the project.

This operation returns results in pages. To get the next page, send the nextPageToken value of the response as pageToken in a new request with the same parameters. When the response has no nextPageToken, there are no more pages. A page can have an empty events list before the last page.

Authorization

bearerAuth
headerAuthorizationBearer <token>

Path Parameters

project_id*string

Owning project identifier. Nonempty, at most 128 UTF-8 bytes, with no control characters. Project creation belongs to the project service.

Query Parameters

pageSize?|null
pageToken?|null

Response Body

Success

application/json
  1. response

Project-wide events in descending UUIDv7 identity order. This is a live traversal, not a snapshot of committed events. Concurrent inserts below the cursor may appear on later pages; inserts above it are not revisited.

events*array<>
nextPageToken?|null
curl -X GET 'https://api.spiraldb.dev/api/catalog/projects/string/ref-events'
{  "events": [    {      "actor": "string",      "branchEventId": "652c6cb3-38b8-46ef-8926-780723491e40",      "branchId": "712f308d-801e-48bc-b072-9c404734ceb7",      "message": "string",      "newCommitId": "13517670-88c3-4c6a-a869-3a07050599df",      "newName": "string",      "occurredAtMicros": "string",      "oldCommitId": "bf8dd278-3b22-4584-82a5-b50b07acd157",      "oldName": "string",      "operation": "create",      "previousBranchEventId": "bc9045a0-48a1-4c4c-87b2-295e480fbf76",      "transactionId": "75906707-8c31-479c-b354-aa805c4cefbc"    }  ],  "nextPageToken": "string"}