Skip to content

List repositories (deprecated path)

Deprecated
GET
/projects

Deprecated. Use /repositories instead; it is the same handler, so the wire shapes are identical.

Every repository owned by the caller’s workspace. env is withheld without the projects.env.schema.read permission.

Requires: projects.read

x-uai-org
string

Org scope: me or an org slug. Absent means the caller’s active/personal org. It selects the workspace used for permission checks and for most resource filters; operation-specific access rules still apply.

Successful response.

object
projects
required
Array<object>
object
id
required

ULID

string
ownerOrgId
required
string
ownerUserId
required
string
name
required
string
slug
required
string
repoUrl
required
string
defaultPrompt
required
string
previewPorts
required

JSON-encoded PreviewPortDeclaration[] — a string, not an array

string
env
required

JSON-encoded ProjectEnvDeclaration[] — schema only, never values

string
toolVersions
required
string | null
extra
required
string | null
createdAt
required

Epoch milliseconds

integer
updatedAt
required

Epoch milliseconds

integer

UNAUTHORIZED — missing or invalid token, or an org-scoped API key (only user-scoped keys are accepted).

object
error
required
object
code
required

Stable, machine-readable error code

string
message
required

Human-readable explanation

string
details
permission

Present on 403 — the permission the caller lacked

string
feature

Present on 402 — gated feature

string
limit

Present on 402 — the plan’s cap

number
plan

Present on 402 — the current plan

string
seats

Present on 402 when the cap is seat-derived

object
seats
required

Effective seats the cap was computed from

integer
seatsMax
required
Any of:
integer
perSeat
required

Units of the resource each seat carries

number
key
additional properties
any

PLAN_LIMIT — the workspace’s plan does not include API access. Every API-key call can return this; session-token calls never do.

object
error
required
object
code
required

Stable, machine-readable error code

string
message
required

Human-readable explanation

string
details
permission

Present on 403 — the permission the caller lacked

string
feature

Present on 402 — gated feature

string
limit

Present on 402 — the plan’s cap

number
plan

Present on 402 — the current plan

string
seats

Present on 402 when the cap is seat-derived

object
seats
required

Effective seats the cap was computed from

integer
seatsMax
required
Any of:
integer
perSeat
required

Units of the resource each seat carries

number
key
additional properties
any

FORBIDDEN (lacking the required permission) or SCOPE_REQUIRED (no workspace, or a membership change in progress).

object
error
required
object
code
required

Stable, machine-readable error code

string
message
required

Human-readable explanation

string
details
permission

Present on 403 — the permission the caller lacked

string
feature

Present on 402 — gated feature

string
limit

Present on 402 — the plan’s cap

number
plan

Present on 402 — the current plan

string
seats

Present on 402 when the cap is seat-derived

object
seats
required

Effective seats the cap was computed from

integer
seatsMax
required
Any of:
integer
perSeat
required

Units of the resource each seat carries

number
key
additional properties
any

SCOPE_REQUIRED — the x-uai-org scope names a workspace that does not exist, or one the caller is not a member of. The two are deliberately indistinguishable: a 403 would confirm the workspace exists.

object
error
required
object
code
required

Stable, machine-readable error code

string
message
required

Human-readable explanation

string
details
permission

Present on 403 — the permission the caller lacked

string
feature

Present on 402 — gated feature

string
limit

Present on 402 — the plan’s cap

number
plan

Present on 402 — the current plan

string
seats

Present on 402 when the cap is seat-derived

object
seats
required

Effective seats the cap was computed from

integer
seatsMax
required
Any of:
integer
perSeat
required

Units of the resource each seat carries

number
key
additional properties
any

SCOPE_REQUIRED — membership reconciliation required, or membership verification unavailable.

object
error
required
object
code
required

Stable, machine-readable error code

string
message
required

Human-readable explanation

string
details
permission

Present on 403 — the permission the caller lacked

string
feature

Present on 402 — gated feature

string
limit

Present on 402 — the plan’s cap

number
plan

Present on 402 — the current plan

string
seats

Present on 402 when the cap is seat-derived

object
seats
required

Effective seats the cap was computed from

integer
seatsMax
required
Any of:
integer
perSeat
required

Units of the resource each seat carries

number
key
additional properties
any