---
title: "List Apps"
method: GET
path: "/apps"
tags: ["Apps"]
---

# List Apps

`GET /apps`

Lists apps on the Whop platform: the app store's live apps, or — with `account_id` and developer access to that account — every app the account owns. Requires authentication, except for the publicly readable lists: `verified_apps_only=true`, and `app_type=website` with no `account_id`, which returns every live deployed website that Whop has not verified — verified templates are the curated `verified_apps_only=true` list instead.

## Query parameters

- `account_id` string
- `app_type` 'b2b_app' | 'b2c_app' | 'company_app' | 'component' | 'website'
- `view_type` 'hub' | 'discover' | 'dash' | 'dashboard' | 'analytics' | 'skills' | 'openapi'
- `verified_apps_only` boolean
- `query` string
- `order` 'created_at' | 'discoverable_at' | 'template_usage' | 'total_installs_last_30_days' | 'total_installs_last_7_days'
- `direction` 'asc' | 'desc'
- `first` integer
- `after` string
- `last` integer
- `before` string

## Response `200`

apps listed

- object
  - `data` AppListItem[], required
    - `account` AccountParent, required
      - `id` string, required — Account ID, prefixed `biz_`.
      - `logo_url` string, nullable, required — Account logo image URL.
      - `route` string, required — Account public route identifier.
      - `title` string, required — Account display name.
    - `app_type` 'b2b_app' | 'b2c_app' | 'company_app' | 'component' | 'website', required — The type of end-user the app is built for.
    - `banner_image` AppBannerImage, required
      - `url` string, required — Banner image URL, taken from the app's product listing.
    - `base_url` string, nullable, required — The production base URL where the app is hosted. `null` if no base URL is configured, if the caller lacks the `developer:basic:read` permission on the app's account, or on list responses, which never expose it.
    - `businesses_created_count` integer, required — Number of businesses created from this app as a template.
    - `businesses_created_logo_urls` string[], required
    - `creator` AppCreator, required
      - `id` string, required — User ID, prefixed `user_`.
      - `name` string, nullable, required — Display name.
      - `username` string, required — Public username.
    - `dashboard_path` string, nullable, required — URL path for the account dashboard view, or `null` when not configured.
    - `description` string, nullable, required — Short description shown in listings and search results, or `null` if none has been set.
    - `discover_path` string, nullable, required — URL path for the discover view, or `null` when not configured.
    - `domain_id` string, required — Subdomain identifier for the app's proxied URL, forming https://{domain_id}.apps.whop.com.
    - `experience_path` string, nullable, required — URL path for the member-facing hub view, or `null` when not configured.
    - `hosted_url` string, nullable, required — Full URL where the app's hosted web build is served, or `null` if no route is claimed.
    - `icon` AppIcon, required
      - `url` string, required — Icon image URL. Always present — the default app icon when none is uploaded.
    - `id` string, required — App ID, prefixed `app_`.
    - `name` string, required — Display name shown on the app store and in experience navigation.
    - `openapi_path` string, nullable, required — URL path to the app's OpenAPI spec file, or `null` when not configured.
    - `origin` string, nullable, required — Full origin URL of the app's proxied domain, for example https://ab1c2d3e4f.apps.whop.com.
    - `route` string, nullable, required — Claimed subdomain route where hosted web builds are served (`myapp` for myapp.whop.app), or `null` if no route is claimed.
    - `skills_path` string, nullable, required — URL path to the app's skills directory, or `null` when not configured.
    - `status` 'live' | 'unlisted' | 'hidden', required — Visibility on the Whop app store: `live` is publicly discoverable, `unlisted` is accessible only via direct link, `hidden` is not visible anywhere.
    - `verified` boolean, required — Whether the app has been verified by Whop and is eligible for the featured apps section.
  - `page_info` object, required
    - `end_cursor` string, nullable, required
    - `has_next_page` boolean, required
    - `has_previous_page` boolean, required
    - `start_cursor` string, nullable, required

## Other responses

- `400` — Invalid Parameters
- `401` — Unauthorized

## Changes

- **2026-08-20** `6a23760847c8` — 3 info
  - added the new enum value `template_usage` to the `query` request parameter `order`
  - added the required property `data/items/businesses_created_count` to the response with the `200` status
  - added the required property `data/items/businesses_created_logo_urls` to the response with the `200` status
- **2026-08-13** `48408451a1f0` — 1 info
  - added the required property `data/items/banner_image` to the response with the `200` status
- **2026-08-11** `a01100378e59` — 2 info
  - added the required property `data/items/account/logo_url` to the response with the `200` status
  - added the required property `data/items/account/route` to the response with the `200` status
- **2026-08-07** `f1020c3ecda4` — 2 info
  - added the optional property `error/code` to the response with the `400` status
  - added the optional property `error/code` to the response with the `401` status
- **2026-08-06** `a602de67ab25` — 1 warning, 1 info
  - added the new `website` enum value to the `data/items/app_type` response property for the response status `200`
  - added the new enum value `website` to the `query` request parameter `app_type`

[Full history](https://skmtc.dev/whop/apis/whop-api/changes/apps/get.md)

---

[API](https://skmtc.dev/whop/apis/whop-api.md) · [All operations](https://skmtc.dev/whop/apis/whop-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/whop/whop-api/revisions/f1cf47ad0ec2/schema)
