---
title: "GET /v1/origin/namespaces/{namespaceSlug}/apps"
method: GET
path: "/v1/origin/namespaces/{namespaceSlug}/apps"
tags: ["OriginService"]
---

# GET /v1/origin/namespaces/{namespaceSlug}/apps

`GET /v1/origin/namespaces/{namespaceSlug}/apps`

## Request

- Base URL: `https://api.cursor.com`
- URL: `https://api.cursor.com/v1/origin/namespaces/{namespaceSlug}/apps`
- Auth: HTTP bearer

Lists apps owned by a namespace, ordered by creation time descending.

## Path parameters

- `namespaceSlug` string, required

## Query parameters

- `pageSize` integer
- `pageToken` string

## Response `200`

OK

- ListNamespaceAppsResponse
  - `apps` AppDisplayMetadata[]
    - `id` string: Globally unique app identifier.
    - `displayName` string
    - `description` string: Publisher-provided description. Empty when unset.
  - `nextPageToken` string: Opaque cursor for the next page; empty when there are no more pages.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: The addressed resource, or its repository, does not exist or is not visible to the caller. Not-found and no-access are deliberately indistinguishable; a 404 never confirms that the resource does not exist.
- `429`: Too Many Requests
- `default`: Default error response

---

[API](https://skmtc.dev/cursor/apis/cursor-origin-api.md) - [All operations](https://skmtc.dev/cursor/apis/cursor-origin-api/llms.txt) - [OpenAPI document](https://skmtc.dev/cursor/apis/cursor-origin-api/revisions/cbc1547d6ef7?raw)
