Shipeasy
Flags experimentsApiOperations

List universes

Returns a single page of universes ordered by created_at desc, id desc. The universes table has no updated_at, so this list is keyed on creation time.

Use case

Snapshot every universe in the project — for example to audit which unit_type and holdout_range are in use before launching a new experiment.

GET
/api/admin/universes

Authorization

bearerSdkKey
AuthorizationBearer <token>

Pass an admin SDK key as Authorization: Bearer sdk_admin_…. Mint via POST /api/admin/keys with type: "admin".

In: header

Query Parameters

limit?integer

Page size (1–500). Defaults to 100.

Default100
Range1 <= value <= 500
cursor?string

Opaque cursor returned in the previous page's next_cursor. Omit for the first page.

Header Parameters

X-Project-Id*string

Project the request operates on. Must match the project the SDK key belongs to.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://shipeasy.ai/api/admin/universes" \  -H "X-Project-Id: string"
{
  "data": [
    {
      "id": "uni_01j7w8a1b2c3d4e5f6g7h8i9j0",
      "name": "primary_users",
      "unitType": "user_id",
      "holdoutRange": [
        9500,
        9999
      ],
      "createdAt": "2026-04-12T10:14:08.000Z"
    }
  ],
  "next_cursor": null
}
{
  "error": "string",
  "code": "string",
  "detail": "string"
}
{
  "error": "string",
  "code": "string",
  "detail": "string"
}
{
  "error": "string",
  "code": "string",
  "detail": "string"
}
{
  "error": "string",
  "code": "string",
  "detail": "string"
}
{
  "error": "string",
  "code": "string",
  "detail": "string"
}
{
  "error": "string",
  "code": "string",
  "detail": "string"
}