API / list-owner-origin-repos-via-api

API

List Owner Origin Repos via the API

List every repository under an owner with GET https://api.cursor.com/v1/origin/repos/{ownerSlug}. Official reference: Origin API → List Owner Repos.

Origin is in Early Beta and subject to change. Authenticate with a Cursor user access token that carries namespace:repositories:read. Installation tokens discover repos through List App Installation Repositories instead. Availability: Early Beta per the API overview.

Cost: 1 point against the user principal budget for this read.

Path parameters

Param Required Meaning
ownerSlug yes Parent owner entity slug

Query parameters

Param Required Meaning
pageSize no Max repos to return; defaults to 30 when unset or 0; values above 100 clamp to 100
pageToken no Opaque cursor from a previous nextPageToken; empty for the first page
filter no Optional case-insensitive substring filter
curl --request GET \
  --url 'https://api.cursor.com/v1/origin/repos/OWNER_SLUG' \
  --header 'Authorization: Bearer YOUR_USER_ACCESS_TOKEN'

Response

The body returns repositories and nextPageToken. Each repository entry includes id, name, fullName, owner (slug, id, optional type), defaultBranch, createdAt, updatedAt, pushedAt, cloneUrl, optional mirror (source, sourceId, status), visibility, allowMergeCommit, allowSquashMerge, and deleteBranchOnMerge.

nextPageToken is empty when there are no more pages. Public list responses do not include total counts. Restart pagination when filters change.

For interactive or scripted user calls, prefer origin api after origin auth login (or CURSOR_API_KEY) so the CLI exchanges a personal user API key for a short-lived user access token. Do not put a Cursor API key directly in the Origin Authorization header.

Partners building on an installation discover repos with List App Installation Repositories. This owner list is the publisher / admin surface for a namespace.

Base URL: https://api.cursor.com/v1/origin.