---
title: "Retrieve Account Preferences"
method: GET
path: "/accounts/{account_id}/preferences"
tags: ["Accounts"]
---

# Retrieve Account Preferences

`GET /accounts/{account_id}/preferences`

Retrieves the account's preferences: a singleton settings document keyed by preference name.

## Headers

- `Api-Version-Date` string

## Response `200`

preferences retrieved

- object
  - `ads_agreement` object, required — The account's Whop Ads services and payment authorization agreement. While `pending_signature`, campaign launch is blocked; sign by answering `requested_information` via `PATCH /verifications/{id}`.
    - `accepted_at` string, nullable, required — When the agreement was signed, as an ISO 8601 timestamp. `null` until signed.
    - `agreement_version` string, nullable, required — The agreement version signed or awaiting signature, as an ISO date. `null` when no signature is required.
    - `printed_name` string, nullable, required — The signer's printed full name. `null` until signed.
    - `status` 'not_required' | 'pending_signature' | 'signed', required — Where the account's ads services agreement stands.
  - `ads_certifications` object[], required — The account's advertising certifications, one entry per certification type Whop offers. Start an application by setting a type's `status` to `pending_information` via `PATCH`, then answer the fields it requests via `GET`/`PATCH /verifications/{id}`.
    - `approved_countries` string[], required — Countries every approved application of this type covers, as ISO 3166-1 alpha-2 codes. Ads targeting only these countries are exempt from the category's restrictions.
    - `business_name` string, nullable, required — The business name on the latest application.
    - `business_type` 'online_pharmacy' | 'pharmaceutical_manufacturer' | 'telehealth_provider' | 'null', nullable, required — The kind of business on the latest application. `null` until the account applies.
    - `certification_type` 'prescription_drug_ads', required — The certification this entry describes.
    - `countries` string[], required — Countries the latest application covers, as ISO 3166-1 alpha-2 codes.
    - `denial_reason` string, nullable, required — Why the latest application was denied. `null` unless `status` is `denied`.
    - `request_id` string, nullable, required — The latest application's request ID, prefixed `inrq_`. `null` until the account applies.
    - `status` 'not_started' | 'pending_information' | 'in_review' | 'approved' | 'denied', required — `not_started` until the account applies; `pending_information` while an application waits for answers; `in_review` once submitted; then `approved` or `denied`.
    - `url` string, nullable, required — The website on the latest application.
  - `ads_payment_methods` object, nullable, required — How the account pays for Whop Ads spend. `primary` is charged first; `backup` covers the charge when the primary fails. `null` until ads billing has been configured.
    - `backup` object, nullable, required
      - `card_brand` string, nullable — Card brand, present for `card` entries.
      - `exp_month` integer, nullable — Expiration month, present for `card` entries.
      - `exp_year` integer, nullable — Expiration year, present for `card` entries.
      - `icon_url` string, nullable — Balance owner icon URL, present for `platform_balance` entries.
      - `id` string, required — The funding source ID: a Whop balance (`ldgr_`) for `platform_balance`, or a payment method (`payt_`) for `card`.
      - `last4` string, nullable — Last four digits, present for `card` entries.
      - `title` string, nullable — Balance name, present for account `platform_balance` entries (null for a personal balance).
      - `type` 'platform_balance' | 'card', required — The funding source kind: a Whop balance or a saved card.
    - `primary` object, nullable, required
      - `card_brand` string, nullable — Card brand, present for `card` entries.
      - `exp_month` integer, nullable — Expiration month, present for `card` entries.
      - `exp_year` integer, nullable — Expiration year, present for `card` entries.
      - `icon_url` string, nullable — Balance owner icon URL, present for `platform_balance` entries.
      - `id` string, required — The funding source ID: a Whop balance (`ldgr_`) for `platform_balance`, or a payment method (`payt_`) for `card`.
      - `last4` string, nullable — Last four digits, present for `card` entries.
      - `title` string, nullable — Balance name, present for account `platform_balance` entries (null for a personal balance).
      - `type` 'platform_balance' | 'card', required — The funding source kind: a Whop balance or a saved card.
  - `ads_reporting_currency` string, required — Lowercase ISO currency code, such as `usd` or `eur`, used to display ad spend and stats. Defaults to `usd`.
  - `ads_scheduling_timezone` string, required — IANA timezone (e.g. `America/New_York`) used to interpret campaign start/end times and to bucket reports. Defaults to `America/New_York` until explicitly overridden.
  - `ads_triple_whale_integration` object, required — The account's Triple Whale integration, which pushes Whop ad spend to Triple Whale's Data-In API so it reports as a `whop` channel. Available to any Triple Whale customer — Shopify, WooCommerce, a custom checkout, or no connected store — by setting `shop_domain` explicitly; Shopify merchants may instead rely on a connected store's domain. Requires the `ad_campaign:create` scope. Once connected, ad click-through URLs Whop serves carry `tw_source=whop` and `tw_adid=<ad id>` query parameters so Triple Whale's pixel attributes conversions back to the originating ad — no destination URL changes are needed.
    - `masked_api_key` string, nullable, required — The leading characters of the stored Data-In API key, followed by asterisks. The full key is never returned. `null` when no key is stored.
    - `shop_domain` string, nullable, required — The shop domain spend is reported for, such as `acme.myshopify.com` or a custom domain for a non-Shopify store. This is the explicit `shop_domain` if one was set, otherwise a connected Shopify store's domain. `null` when neither is present.
    - `status` 'connected' | 'not_connected' | 'requires_shop_domain', required — Where the integration stands. `requires_shop_domain` means no shop domain is configured — set `shop_domain` explicitly, or connect a Shopify store, before spend can be reported.
  - `cards_auto_top_up` boolean, required — Whether incoming funds are automatically moved to the account's cards balance. `false` when the account has no cards balance.
  - `cards_notifications` boolean, required — Whether Whop Card notifications reach this account's team. `true` by default, including when the account has no cards balance. Set it to `false` to stop every card email and push notification for the account — application status, verification and action-required alerts, card-ready alerts, declines, large charges, and cashback summaries. Cardholder onboarding invitations still send, because they carry the only link an invited cardholder can onboard with. Requesting a card is rejected while notifications are off, since the request reaches nobody. Cards on personal accounts are unaffected.
  - `dispute_fighter_enabled` boolean, required — Whether Whop assembles and files the evidence response when this account's payments are disputed. Off by default; enabling it also opts the account into the success fee charged only on disputes it wins.
  - `economic_intelligence` boolean, required — Whether economic intelligence is enabled for the account.

## Other responses

- `401` — Unauthorized
- `404` — Resource not found

## Changes

> 65 revisions in range; 1 not diffed.

- **2026-09-20** `51933d70d7f5` — 2 info
  - the security scope `ad_campaign:create` was added to the endpoint's security scheme `bearerAuth`
  - the security scope `company:update` was removed from the endpoint's security scheme `bearerAuth`
- **2026-09-19** `d629b0d5d839` — 2 info
  - the security scope `ad_campaign:create` was added to the endpoint's security scheme `bearerAuth`
  - the security scope `company:update` was removed from the endpoint's security scheme `bearerAuth`
- **2026-09-18** `355991ab86d5` — 2 info
  - the security scope `ad_campaign:create` was added to the endpoint's security scheme `bearerAuth`
  - the security scope `company:update` was removed from the endpoint's security scheme `bearerAuth`
- **2026-09-17** `076176906e3f` — 2 info
  - the security scope `ad_campaign:create` was added to the endpoint's security scheme `bearerAuth`
  - the security scope `company:update` was removed from the endpoint's security scheme `bearerAuth`
- **2026-09-17** `ef86d14ef691` — 2 info
  - the security scope `ad_campaign:create` was added to the endpoint's security scheme `bearerAuth`
  - the security scope `company:update` was removed from the endpoint's security scheme `bearerAuth`

[Full history](https://skmtc.dev/whop/apis/whop-api/changes/accounts/:account_id/preferences/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.dev/whop/apis/whop-api/revisions/51933d70d7f5?raw)
