Update App
Updates the settings, metadata, or status of an app. Fields that are omitted keep their current value.
Authorizations
An Account API key, account-scoped JWT, App API key, or user OAuth token. Prepend the key or token with Bearer, for example Bearer ***************************.
Headers
Pins the request to a dated API version.
"2026-08-21"
Path Parameters
App ID (prefixed app_), the app's claimed route, or its proxy domain id.
Body
The detailed description shown on the app store's in-depth app view page.
"Shine Time Booking turns a whop into a booking calendar. Members pick a package, choose a slot that fits the day's route, and pay up front."
The type of end-user the app is built for. Cannot be changed on an app whose type is already website.
b2b_app, b2c_app, company_app, component, website "b2c_app"
The base production URL where the app is hosted. Set to null to take the app proxy offline.
"https://booking.shinetime.example"
The URL path for the account dashboard view.
"/dashboard/[companyId]"
A short description of the app shown in listings and search results.
"Let members book a mobile detailing appointment without leaving your whop."
The URL path for the discover view.
"/discover"
The URL path for the member-facing hub view, such as /experiences/[experienceId].
"/experiences/[experienceId]"
The icon image for the app in PNG, JPEG, or GIF format, referencing an uploaded file: { id } for an existing attachment or { direct_upload_id } for a new direct upload.
The display name for the app, shown to users on the app store and product pages.
"Shine Time Booking Pro"
How the app authenticates at the OAuth token endpoint.
public, confidential "confidential"
The URL path to the app's OpenAPI spec file (requires the ai_chat capability).
"/openapi.json"
The app build (abld_ tag) to serve as the Android production build, or null to unassign it. Same rules as production_web_build_id.
"apbu_xxxxxxxxxxxxxx"
The app build (abld_ tag) to serve as the iOS production build, or null to unassign it. Same rules as production_web_build_id.
"apbu_xxxxxxxxxxxxxx"
The app build (abld_ tag) to serve as the web production build, or null to unassign it. The build must belong to this app, target web, and be in the draft or approved status; a draft build is queued for approval and takes over once approved. Requires the developer:manage_builds scope.
"apbu_xxxxxxxxxxxxxx"
The whitelisted OAuth callback URLs users are redirected to after authorizing the app.
The OAuth scopes the app requests from users when they install it.
The subdomain route where the app's hosted web builds are served.
"shine-time-booking-pro"
Secrets to add or overwrite on the app, as an object of string values. Keys not included are left untouched; pass null or an empty string as the value to delete a secret. Encrypted at rest and injected into the app's hosted server runtime.
The URL path to the app's skills directory (requires the ai_chat capability).
"/skills"
Controls whether the app is published on Whop discovery or accessible only through its direct link. Publishing requires a name, icon, and description.
live, unlisted, hidden "unlisted"
Response
app updated
The account that owns the app.
Legacy app API key used to authenticate requests on the app's behalf. null when no key exists or the caller lacks the developer:manage_api_key permission.
Detailed description shown on the app store's in-depth app page, or null when none has been set.
"Shine Time Booking turns a whop into a booking calendar. Members pick a package, choose a slot that fits the day's route, and pay up front. A reminder goes out the night before and the receipt lands as soon as the job is signed off."
The type of end-user the app is built for.
b2b_app, b2c_app, company_app, component, website "b2c_app"
Banner image from the app's product listing, or null when none is uploaded.
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.
"https://booking.shinetime.example"
Website businesses created from this app as a template.
5
Up to three logo image URLs from businesses created from this app as a template.
The user who owns the publishing account.
URL path for the account dashboard view, or null when not configured.
"/dashboard/[companyId]"
The app's default API key. null when the app has no default key or the caller lacks the developer:manage_api_key permission; secret_key is additionally null unless the caller could have created the key themselves.
What the app has left to publish, and how a publish in flight is going — status is only ever unpublished, publishing, or failed here. null means there is nothing to report: the app is fully published, there is no working copy to publish from, or the caller cannot deploy this app. Tell those apart from the app's own production_web_build.
Short description shown in listings and search results, or null if none has been set.
"Let members book a mobile detailing appointment without leaving your whop."
URL path for the discover view, or null when not configured.
"/discover"
Subdomain identifier for the app's proxied URL, forming https://{domain_id}.apps.whop.com.
"whopappdomain0000001"
URL path for the member-facing hub view, or null when not configured.
"/experiences/[experienceId]"
Full URL where the app's hosted web build is served, or null if no route is claimed.
"https://shine-time-booking.whop.app"
The app's icon. Falls back to the default app icon when none is uploaded.
App ID, prefixed app_.
"app_xxxxxxxxxxxxxx"
Approval status of the app's product listing on the Whop app store, or null when the app has no associated product.
not_available, pending_review, live_marketplace, null "not_available"
Display name shown on the app store and in experience navigation.
"Shine Time Booking"
How the app authenticates at the OAuth token endpoint.
public, confidential "public"
URL path to the app's OpenAPI spec file, or null when not configured.
"/openapi.json"
Full origin URL of the app's proxied domain, for example https://ab1c2d3e4f.apps.whop.com.
"https://whopappdomain0000001.apps.whop.com"
ID of the app's product listing on the Whop app store, or null when the app has no associated product.
"prod_xxxxxxxxxxxxxx"
The approved build currently served on Android, or null when none is deployed.
The approved build currently served on iOS, or null when none is deployed.
The approved build currently served on web, or null when none is deployed.
Whitelisted OAuth callback URLs users are redirected to after authorizing the app.
Scopes the app asks a user to grant when they authorize it, shown on the consent screen.
read_user Claimed subdomain route where hosted web builds are served (myapp for myapp.whop.app), or null if no route is claimed.
"shine-time-booking"
The app's production secrets as an object of string values, injected into the hosted server runtime. null when the caller lacks the developer:update_app permission.
URL path to the app's skills directory, or null when not configured.
"/skills"
Visibility on the Whop app store: live is publicly discoverable, unlisted is accessible only via direct link, hidden is not visible anywhere.
live, unlisted, hidden "unlisted"
Whether the app has been verified by Whop and is eligible for the featured apps section.
false

