---
title: "Get recurring plans"
method: GET
path: "/v1/recurring_plans"
tags: ["Recurring plans"]
---

# Get recurring plans

`GET /v1/recurring_plans`

This request allows you to read your Fundraise Up recurring plan records. The supporter data will be displayed as it appears on the Recurring plan page in your Dashboard.

## Query parameters

- `livemode` boolean
- `starting_after` string
- `ending_before` string
- `limit` integer
- `created` CreatedQuery — Filters results by the record creation date. Accepts a single date or a date range in RFC 3339 format.
  - `created[gt]` string, date-time — Minimum creation date (exclusive). Returns records after this timestamp.
  - `created[gte]` string, date-time — Minimum creation date (inclusive). Returns records from and after this timestamp.
  - `created[lt]` string, date-time — Maximum creation date (exclusive). Returns records before this timestamp.
  - `created[lte]` string, date-time — Maximum creation date (inclusive). Returns records up to and including this timestamp.

## Response `200`

On success, the API returns the list of recurring plans. The response includes the recurring plan data array and a boolean indicating if more records are available.

- RecurringPlansResponse — Provides a response for recurring plans.
  - `data` RecurringPlanResponse[], required — An array containing the entity records, paginated by any request parameters.
    - `account` AccountResponse, required — Organization account information.
      - `code` string, nullable, required — Custom identifier for the organization, set as the Account code in the Fundraise Up account.
      - `id` string, required — Unique identifier of the organization in the format A[A-Z]{7}.
      - `name` string, required — The name of the organization as set in the Fundraise Up account.
    - `amount` string, required — Donation amount for each recurring installment, in the plan's currency.
    - `amount_before_fees_covered` string, required — Amount before fees were covered by supporter.
    - `amount_before_fees_covered_in_default_currency` string, required — Amount before fees were covered by supporter, converted to the organization's default currency at the time of the donation.
    - `amount_in_default_currency` string, required — Donation amount for each recurring installment, converted to the organization's default currency at the time of the donation.
    - `anonymous` boolean, required — Indicates if the recurring donations are made anonymously (`true`) or not (`false`).
    - `benefit` union, required
      - object — Represents the benefit associated with a recurring plan.
        - `state` 'not_shown', required — Defines if the benefit was displayed or selected.
      - object — Represents the benefit associated with a recurring plan.
        - `state` 'shown_not_selected', required — Defines if the benefit was displayed or selected.
      - object — Represents the benefit associated with a recurring plan.
        - `code` string, nullable, required — Benefit code, as set in the Dashboard.
        - `fair_market_value` string, required — Fair market value (FMV) at the time of payment. If an option was selected, this is the value of that option. Displayed in the organization’s default currency.
        - `fair_market_value_currency` 'shp' | 'eur' | 'aed' | 'afn' | 'xcd' | 'all' | 'amd' | 'aoa' | 'ars' | 'usd' | 'aud' | 'ang' | 'xcg' | 'awg' | 'azn' | 'bam' | 'bbd' | 'inr' | 'pkr' | 'bdt' | 'xof' | 'bgn' | 'bhd' | 'bif' | 'bmd' | 'myr' | 'bnd' | 'bob' | 'brl' | 'bsd' | 'btn' | 'nok' | 'zar' | 'bwp' | 'byn' | 'bzd' | 'cad' | 'cdf' | 'xaf' | 'chf' | 'nzd' | 'clp' | 'cny' | 'cop' | 'crc' | 'cve' | 'czk' | 'djf' | 'dkk' | 'dop' | 'dzd' | 'egp' | 'mad' | 'etb' | 'fjd' | 'fkp' | 'jpy' | 'gbp' | 'gel' | 'ghs' | 'gip' | 'gmd' | 'gnf' | 'gtq' | 'gyd' | 'hkd' | 'hnl' | 'hrk' | 'htg' | 'huf' | 'idr' | 'ils' | 'isk' | 'jmd' | 'jod' | 'kes' | 'kgs' | 'khr' | 'kmf' | 'krw' | 'kwd' | 'kyd' | 'kzt' | 'lak' | 'lbp' | 'lkr' | 'lrd' | 'lsl' | 'mdl' | 'mga' | 'mkd' | 'mmk' | 'mnt' | 'mop' | 'mro' | 'mur' | 'mvr' | 'mwk' | 'mxn' | 'mzn' | 'nad' | 'xpf' | 'ngn' | 'nio' | 'sek' | 'npr' | 'omr' | 'pab' | 'pen' | 'pgk' | 'php' | 'pln' | 'pyg' | 'qar' | 'ron' | 'rsd' | 'rub' | 'rwf' | 'sar' | 'sbd' | 'scr' | 'sgd' | 'sll' | 'sle' | 'sos' | 'srd' | 'std' | 'svc' | 'szl' | 'thb' | 'tjs' | 'tnd' | 'top' | 'try' | 'ttd' | 'twd' | 'tzs' | 'uah' | 'uyu' | 'uzs' | 'vnd' | 'vuv' | 'wst' | 'yer' | 'zmw' | 'btc' | 'eth' | 'usdt' | 'usdc' | 'sol' | 'dot' | 'doge' | 'shib' | 'ltc' | 'bch' | 'xtz' | 'fil' | 'ftm' | 'gala' | 'paxg' | 'zec', required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html) of the fair market value (FMV) currency, in lowercase.
        - `id` string, required — Unique identifier for the benefit.
        - `name` string, required — Benefit name, as set in the Dashboard.
        - `option` BenefitOption, required — Benefit option selected by the supporter.
          - `code` string, nullable, required — Code of the selected option.
          - `name` string, required — Name of the selected option.
          - `value` string, required — Value of the selected option.
        - `shipping` BenefitShipping, required — Shipping data of the benefit.
          - `address` AddressResponse, required — Contains the mailing address details.
            - `city` string, nullable, required — City name
            - `country` string, required — [Two-letter country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2), in lowercase.
            - `line1` string, nullable, required — First address line.
            - `line2` string, nullable, required — Second address line.
            - `postal_code` string, nullable, required — Postal or ZIP code.
            - `region` string, nullable, required — Can refer to a region, state, or province.
          - `recipient_first_name` string, required — Recipient first name.
          - `recipient_last_name` string, required — Recipient last name.
        - `state` 'selected', required — Defines if the benefit was displayed or selected.
    - `campaign` CampaignResponse, required — Provides details about the campaign.
      - `code` string, nullable, required — Campaign code, as set in the Dashboard.
      - `id` string, required — Unique campaign identifier.
      - `name` string, required — Campaign name.
    - `cancellation_details` string, nullable, required — Additional details about the cancellation provided by the supporter. Can be `null` when not provided or when the plan is not canceled.
    - `cancellation_reason` 'financial_difficulty' | 'life_changes' | 'switched_donation_method' | 'change_in_giving_preferences' | 'subscription_consolidation' | 'loss_of_confidence_in_organization' | 'technical_error' | 'created_by_mistake' | 'no_clear_reason_given' | 'other', nullable, required — The reason category selected when the recurring plan was canceled. Can be `null` when no reason category was selected or when the plan is not canceled.
    - `comment` string, nullable, required — Optional comment attached to the recurring donation plan.
    - `consent` CommunicationConsentResponse, required — Stores the supporter's [communication consent type](https://fundraiseup.com/docs/marketing-consent/) associated with a donation.
      - `customized` CustomizedCommunicationConsentResponse — Specifies consent values for individual communication channels.
        - `email` 'not_submitted' | 'opted_in' | 'opted_out', required — Indicates email communication consent. `opted_in` if the supporter agreed to receive emails. `opted_out` if the supporter declined email communication. `not_submitted` if no email consent data is available.
        - `phone_calls` 'not_submitted' | 'opted_in' | 'opted_out', required — Indicates phone call communication consent. `opted_in` if the supporter agreed to receive phone calls. `opted_out` if the supporter declined to receive phone calls. `not_submitted` if no phone call consent data is available.
        - `postal_mail` 'not_submitted' | 'opted_in' | 'opted_out', required — Indicates postal mail communication consent. `opted_in` if the supporter agreed to receive postal mail. `opted_out` if the supporter declined to receive postal mail. `not_submitted` if no postal mail consent data is available.
        - `sms` 'not_submitted' | 'opted_in' | 'opted_out', required — Indicates SMS communication consent. `opted_in` if the supporter agreed to receive SMS messages. `opted_out` if the supporter declined SMS communication. `not_submitted` if no SMS consent data is available.
        - `social_media` 'not_submitted' | 'opted_in' | 'opted_out', required — Indicates social media communication consent. `opted_in` if the supporter agreed to receive messages through social media. `opted_out` if the supporter declined social media communication. `not_submitted` if no social media consent data is available.
      - `general` 'not_submitted' | 'opted_in' | 'opted_out' — Indicates overall communication consent. `opted_in` if the supporter agreed to receive communications. `opted_out` if the supporter declined communications. `not_submitted` if no consent data is available.
    - `created_at` string, required — Timestamp in ISO 8601 format, indicating when the recurring plan was created in UTC.
    - `currency` 'shp' | 'eur' | 'aed' | 'afn' | 'xcd' | 'all' | 'amd' | 'aoa' | 'ars' | 'usd' | 'aud' | 'ang' | 'xcg' | 'awg' | 'azn' | 'bam' | 'bbd' | 'inr' | 'pkr' | 'bdt' | 'xof' | 'bgn' | 'bhd' | 'bif' | 'bmd' | 'myr' | 'bnd' | 'bob' | 'brl' | 'bsd' | 'btn' | 'nok' | 'zar' | 'bwp' | 'byn' | 'bzd' | 'cad' | 'cdf' | 'xaf' | 'chf' | 'nzd' | 'clp' | 'cny' | 'cop' | 'crc' | 'cve' | 'czk' | 'djf' | 'dkk' | 'dop' | 'dzd' | 'egp' | 'mad' | 'etb' | 'fjd' | 'fkp' | 'jpy' | 'gbp' | 'gel' | 'ghs' | 'gip' | 'gmd' | 'gnf' | 'gtq' | 'gyd' | 'hkd' | 'hnl' | 'hrk' | 'htg' | 'huf' | 'idr' | 'ils' | 'isk' | 'jmd' | 'jod' | 'kes' | 'kgs' | 'khr' | 'kmf' | 'krw' | 'kwd' | 'kyd' | 'kzt' | 'lak' | 'lbp' | 'lkr' | 'lrd' | 'lsl' | 'mdl' | 'mga' | 'mkd' | 'mmk' | 'mnt' | 'mop' | 'mro' | 'mur' | 'mvr' | 'mwk' | 'mxn' | 'mzn' | 'nad' | 'xpf' | 'ngn' | 'nio' | 'sek' | 'npr' | 'omr' | 'pab' | 'pen' | 'pgk' | 'php' | 'pln' | 'pyg' | 'qar' | 'ron' | 'rsd' | 'rub' | 'rwf' | 'sar' | 'sbd' | 'scr' | 'sgd' | 'sll' | 'sle' | 'sos' | 'srd' | 'std' | 'svc' | 'szl' | 'thb' | 'tjs' | 'tnd' | 'top' | 'try' | 'ttd' | 'twd' | 'tzs' | 'uah' | 'uyu' | 'uzs' | 'vnd' | 'vuv' | 'wst' | 'yer' | 'zmw' | 'btc' | 'eth' | 'usdt' | 'usdc' | 'sol' | 'dot' | 'doge' | 'shib' | 'ltc' | 'bch' | 'xtz' | 'fil' | 'ftm' | 'gala' | 'paxg' | 'zec', required — Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase.
    - `custom_fields` CustomFieldResponse[], required
      - `name` string, required — Name of the custom field.
      - `value` string, required — Value of the custom field.
    - `designation` DesignationResponse, required — Contains information about the designation.
      - `code` string, nullable, required — Designation code.
      - `id` string, required — Unique designation identifier.
      - `name` string, nullable, required — Designation name.
    - `device` DeviceResponse, required — Provides information about the device being used.
      - `browser` string, nullable, required — Browser name. Can be `null` if not detected.
      - `ip` IpResponse, required — Contains details about the IP address from which the donation was made.
        - `address` string, nullable, required — IP address.
        - `city` string, nullable, required — City name.
        - `country_name` string, nullable, required — Full country name.
        - `region` string, nullable, required — Region name.
      - `os` string, nullable, required — Operating system name. Can be `null` if not detected.
      - `type` 'desktop' | 'mobile' | 'tablet', nullable, required — Device type. Can be `null` if not detected.
      - `user_agent` string, nullable, required — Raw user agent string. Can be `null` if not provided.
    - `element` ElementResponse, required — Represents the element through which the donation was made.
      - `id` string, required — Unique element identifier.
      - `name` string, required — Name of the element.
      - `type` 'reminder' | 'donateButton' | 'stickyButton' | 'imageCard' | 'textLink' | 'donationForm' | 'simpleForm' | 'goalMeter' | 'statCounter' | 'impactSlider' | 'donationLevels' | 'buttonGroup' | 'floatingButton' | 'messageBar' | 'topSupporters' | 'topLocations' | 'socialProof' | 'qrCode' | 'recentDonations' | 'p2pButton' | 'p2pLink' | 'p2pFundraisingButton' | 'p2pFundraisingLink' | 'topFundraisers' | 'donorMap' | 'lightbox' | 'zakatCalculator' | 'p2pFundraiserGallery' | 'p2pTopFundraisers' | 'fundraisingPageLink' | 'fundraisingPageInviteLink' | 'link' | 'direct' | 'debugPanel' | 'testModePanel' | 'aiAssistant' | 'splitTesting' | 'jsApi', required — Type of element used for the donation.
    - `ended_at` string, nullable, required — Timestamp in ISO 8601 format, indicating when the recurring plan ended in UTC.
    - `frequency` 'daily' | 'weekly' | 'biweekly' | 'every4weeks' | 'monthly' | 'bimonthly' | 'quarterly' | 'semiannual' | 'annual', required — Frequency of the recurring plan.
    - `fundraiser` FundraiserResponse, required — Contains information about the fundraiser.
      - `id` string, required — Unique identifier for the fundraiser.
      - `name` string, required — The title of the Fundraiser, used as its main heading.
    - `gift_aid` GiftAidResponse, required — Provides details about Gift Aid, available only for organizations based in Great Britain.
      - `claimed` boolean, nullable, required — Indicates whether the Gift Aid was claimed (`true`) or not (`false`).
      - `legal_text` string, required — Legal text associated with Gift Aid.
    - `id` string, required — Unique identifier for the recurring donation plan.
    - `livemode` boolean, required — Test mode indicator. `true` for recurring plans in live mode, `false` for recurring plans in test mode.
    - `next_installment_at` string, nullable, required — Timestamp in ISO 8601 format, indicating the next scheduled donation installment in UTC.
    - `on_behalf_of` string, nullable, required — Name of the organization the donation was made on behalf of.
    - `payment` RecurringPaymentResponse, required — Provides details about the payment processing.
      - `bank_account` BankAccountResponse, required — Contains information about the bank account used for the payment.
        - `last4` string, nullable, required — Last four digits of the bank account number.
      - `credit_card` CreditCardResponse, required — Contains information about the credit card used for the payment.
        - `exp_month` string, nullable, required — Two-digit expiration month (`01` to `12`).
        - `exp_year` string, nullable, required — Four-digit expiration year.
        - `last4` string, nullable, required — Last four digits of the credit card number.
        - `type` string, nullable, required — Credit card type. Possible values: `Visa`, `MasterCard`, `American Express`, `Diners Club`, `Discover`, `JCB`, `UnionPay`, `Cartes Bancaires`, `Unknown`.
      - `email` string, nullable, required — Email associated with the payment method.
      - `error_message` string, nullable, required — Most recent payment error message. Returned only if the status is `failed` or `retrying`. Otherwise, returns `null`.
      - `method` 'credit_card' | 'apple_pay' | 'google_pay' | 'click_to_pay' | 'ach' | 'paypal' | 'venmo' | 'becs_direct_debit' | 'bacs_direct_debit' | 'pad' | 'sepa_direct_debit' | 'ideal' | 'crypto' | 'stock' | 'link' | 'twint' | 'mobile_pay' | 'eps' | 'daf', required — Payment method, in lowercase underscore. `stock` is deprecated but may still appear in retrieved data. The value of `us_bank_account` maps to `ach`. The value of `plaid` also maps to `ach`.
      - `processor` 'stripe' | 'paypal' | 'gemini' | 'manual_brokerage' | 'coinbase_commerce' | 'chariot', required — Payment processor, in lowercase. `coinbase_commerce` is deprecated but may still appear in retrieved data.
    - `questions` QuestionResponse[], required
      - `code` string, nullable, required — Question code, as set in the Dashboard.
      - `id` string, required — Unique identifier of the question, formatted as Q[A-Z]{7}. Located in [Settings > Questions](https://dashboard.fundraiseup.com/settings/questions).
      - `checked` boolean — Indicates whether the checkbox is selected. Required for questions with the type "Single checkbox".
      - `options` string[] — List of selected options. Required for questions with the type "Multiple checkboxes".
      - `text` string — Answer for the question. This field is returned only for question types "Text box", "Text line", "Select one option", and "Dropdown menu".
    - `source` 'website' | 'campaign_page' | 'virtual_terminal' | 'donor_portal' | 'dashboard' | 'recurring_migration' | 'api' | 'gift_cart' | 'tap2pay' | 'p2p_fundraising' | 'giving_station' | 'agent', required — Source of the recurring donation setup.
    - `source_of_funds` 'own_money' | 'on_behalf_of' | 'fundraising_or_collection', nullable, required — Indicates the source of funds for the donation in the context of Gift Aid eligibility.
    - `status` 'active' | 'scheduled' | 'paused' | 'retrying' | 'completed' | 'failed' | 'canceled', required — Status of the recurring plan.
    - `supporter` EmbeddedSupporterResponse, required — Represents the supporter data as displayed on the Donation page in your Dashboard.
      - `address` AddressResponse, required — Contains the mailing address details.
        - `city` string, nullable, required — City name
        - `country` string, required — [Two-letter country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2), in lowercase.
        - `line1` string, nullable, required — First address line.
        - `line2` string, nullable, required — Second address line.
        - `postal_code` string, nullable, required — Postal or ZIP code.
        - `region` string, nullable, required — Can refer to a region, state, or province.
      - `email` string, nullable, required — Supporter's email address.
      - `employer` EmployerResponse, required — Represents the employer information.
        - `name` string, required — Employer's name.
      - `employment_status` 'employed' | 'unemployed' | 'retired', nullable, required — The supporter's employment status at the time of the donation. Possible values: `employed`, `unemployed`, `retired`. Returns `null` if not collected. Only collected for US political organizations.
      - `first_name` string, nullable, required — Supporter's first name.
      - `id` string, required — Unique supporter identifier.
      - `language` 'en-US' | 'en-GB' | 'en-CA' | 'fr-CA' | 'fr-FR' | 'es' | 'nl' | 'no' | 'de' | 'de-x-informal' | 'fi-FI' | 'ar-001' | 'sv' | 'it' | 'pt-PT' | 'pt-BR' | 'zh-CN' | 'zh-TW' | 'ja' | 'ko' | 'hu' | 'da' | 'ru-RU' | 'es-US' | 'pl-PL' | 'he', required — Supporter's locale.
      - `last_name` string, nullable, required — Supporter's last name.
      - `occupation` string, nullable, required — The supporter's occupation at the time of the donation. Returns `null` if not collected or if employment status is `unemployed` or `retired`. Max 200 characters.
      - `phone` string, nullable, required — Supporter's phone number.
      - `title` 'm' | 'mme' | 'mlle' | 'autre' | 'mx' | 'mr' | 'mrs' | 'miss' | 'ms' | 'sir' | 'dame' | 'lord' | 'lady' | 'dr' | 'prof' | 'rev' | 'fr' | 'dcn' | 'br' | 'sr' | 'frau' | 'herr' | 'frau dr.' | 'herr dr.' | 'frau prof.' | 'herr prof.', nullable, required — Supporter's title. Returns `null` if empty.
    - `supporter_covered_fee` string, required — Amount of fees covered by the supporter.
    - `supporter_covered_fee_in_default_currency` string, required — Amount of fees covered by the supporter and converted to the organization's default currency.
    - `tribute` TributeResponse, required — Provides information about the tribute.
      - `honoree` string, required — Name of the person honored or remembered.
      - `id` string, required — Unique tribute identifier.
      - `sharing` TributeSharingResponse, required — Defines the sharing options for a tribute.
        - `from` string, nullable, required — Name of the sender.
        - `hide_amount` boolean, required — Indicates whether the donation amount should be hidden in the tribute notification sent to the recipient.
        - `message` string, nullable, required — Custom message included in the tribute.
        - `recipient` TributeRecipientResponse, required — Contains details about the tribute recipient.
          - `address` RecipientAddressResponse, required — Provides the postal address for the tribute recipient.
            - `city` string, nullable, required — City name
            - `country` string, required — [Two-letter country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2), in lowercase.
            - `line1` string, nullable, required — First address line.
            - `line2` string, nullable, required — Second address line.
            - `postal_code` string, nullable, required — Postal or ZIP code.
            - `region` string, nullable, required — Can refer to a region, state, or province.
          - `email` string, nullable, required — Email address used for `email` sharing type.
          - `first_name` string, nullable, required — Tribute recipient's first name.
          - `last_name` string, nullable, required — Tribute recipient's last name.
          - `title` 'm' | 'mme' | 'mlle' | 'autre' | 'mx' | 'mr' | 'mrs' | 'miss' | 'ms' | 'sir' | 'dame' | 'lord' | 'lady' | 'dr' | 'prof' | 'rev' | 'fr' | 'dcn' | 'br' | 'sr' | 'frau' | 'herr' | 'frau dr.' | 'herr dr.' | 'frau prof.' | 'herr prof.', nullable, required — Tribute recipient's title.
        - `type` 'email' | 'address', nullable, required — Sharing method.
      - `type` 'in_honor' | 'in_memory', nullable, required — Tribute type.
    - `url` string, nullable, required — URL where the recurring donation was set up.
    - `utm` UtmResponse, required — Represents UTM tags associated with the donation.
      - `campaign` string, nullable, required — The `utm_campaign` value, if available. Shows the name of the marketing campaign.
      - `content` string, nullable, required — The `utm_content` value, if available. Identifies which link or ad variation was clicked.
      - `medium` string, nullable, required — The `utm_medium` value, if available. Shows the type of marketing channel.
      - `source` string, nullable, required — The `utm_source` value, if available. Shows where the traffic came from.
      - `term` string, nullable, required — The `utm_term` value, if available. Shows the keywords used in a search.
  - `has_more` boolean, required — Indicates whether there are more records available. For `starting_after`, it shows that there is a page with older records. For `ending_before`, it indicates that there is a page with newer records.

## Other responses

- `403` — Forbidden. The API key does not have permission to access recurring plans.

---

[API](https://skmtc.net/fundraiseup/apis/fundraise-up-api.md) · [All operations](https://skmtc.net/fundraiseup/apis/fundraise-up-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fundraiseup/fundraise-up-api/revisions/f59881dadecd/schema)
