> ## Documentation Index
> Fetch the complete documentation index at: https://developers.appstle.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get billing interval options for selling plans

> Retrieves available billing frequency/interval options for specified Shopify selling plans (subscription plans). This endpoint returns all configured billing frequencies that customers can choose from for their subscriptions.

**Key Information Returned:**
- **Frequency Options**: List of available billing intervals (e.g., weekly, monthly, quarterly)
- **Interval Units**: Time unit for each option (DAYS, WEEKS, MONTHS, YEARS)
- **Interval Count**: Number of units between billings (e.g., 2 = every 2 weeks)
- **Display Names**: Customer-friendly names for each frequency option
- **Plan IDs**: Associated selling plan IDs for each frequency

**Billing Frequency Structure:**
Each FrequencyInfoDTO contains:
- **id**: Selling plan ID (Shopify subscription plan identifier)
- **name**: Display name (e.g., "Deliver every 2 weeks", "Monthly subscription")
- **intervalUnit**: Time unit (DAY, WEEK, MONTH, YEAR)
- **intervalCount**: Number of units between deliveries
- **billingPolicy**: How billing is configured (EXACT_DAY, ANNIVERSARY)
- **deliveryPolicy**: How delivery is scheduled

**Common Billing Intervals:**
- **Weekly**: intervalUnit=WEEK, intervalCount=1
- **Bi-Weekly**: intervalUnit=WEEK, intervalCount=2
- **Monthly**: intervalUnit=MONTH, intervalCount=1
- **Every 2 Months**: intervalUnit=MONTH, intervalCount=2
- **Quarterly**: intervalUnit=MONTH, intervalCount=3
- **Semi-Annual**: intervalUnit=MONTH, intervalCount=6
- **Annual**: intervalUnit=YEAR, intervalCount=1

**Request Parameters:**
- **sellingPlanIds**: Comma-separated list of Shopify selling plan IDs (required)
  - Example: "123456,123457,123458"
  - Returns frequency options for all specified plans

**Common Use Cases:**
- Display available billing frequencies in customer portal
- Allow customers to change subscription delivery frequency
- Build frequency selector UI components
- Validate frequency options before updating subscription
- Sync available billing options with external systems
- Show frequency options during subscription checkout

**Integration Example:**
1. Get customer's current subscription selling plan ID
2. Call this endpoint with that selling plan ID
3. Display returned frequency options to customer
4. Customer selects new frequency
5. Update subscription with selected frequency

**Authentication:** Requires API key authentication via X-API-Key header or api_key parameter



## OpenAPI

````yaml /memberships/admin-api-swagger.json get /api/external/v2/subscription-contract-details/billing-interval
openapi: 3.0.1
info:
  description: >-
    Comprehensive API documentation for managing memberships, payments, and
    related operations. These APIs allow you to programmatically manage
    membership lifecycles, handle payments, configure products, and integrate
    membership functionality into your applications.
  title: Admin APIs
  version: 0.0.1
servers:
  - url: https://membership-admin.appstle.com
security: []
tags:
  - description: >-
      APIs for managing Shopify delivery profiles, shipping rates, zones, and
      free shipping configuration for subscription memberships
    name: Shipping & Delivery Profiles
  - description: >-
      APIs for retrieving historical discount code usage and redemption
      information for membership contracts
    name: Customer Discount History
  - description: >-
      APIs for managing membership cancellation flow settings including
      retention offers, survey questions, and cancel confirmation screens
    name: Cancellation Flow Configuration
  - description: >-
      APIs for managing membership billing attempts, recurring orders, payment
      retries, order history, and order skipping
    name: Billing & Orders
  - description: >-
      APIs for managing one-time product additions to upcoming subscription
      orders, including adding, retrieving, and removing one-off items
    name: One-Time Add-Ons
  - description: >-
      APIs for managing membership/subscription plan groups, including creating
      plans, configuring discounts, billing intervals, and assigning products to
      plans
    name: Membership Plans
  - description: >-
      APIs for managing subscription product bundles, bundle configurations,
      item grouping, and bundle-specific discount codes
    name: Product Bundles
  - description: >-
      APIs for retrieving custom CSS styles applied to subscription widgets and
      customer portal for theme customization
    name: Custom CSS Styling
  - description: >-
      APIs for managing customer portal settings including UI customization,
      text labels, feature toggles, and branding options for the member
      self-service portal
    name: Customer Portal Configuration
  - description: >-
      APIs for managing membership/subscription contracts including creation,
      updates, status changes, line items, discounts, and billing operations
    name: Membership Contracts
  - description: >-
      APIs for managing subscription bundle configuration settings including
      bundle behavior, pricing rules, and display options
    name: Bundle Settings
  - description: >-
      APIs for managing customer payment methods, payment tokens, and payment
      method retrieval for subscriptions
    name: Customer Payment Methods
  - description: >-
      APIs for retrieving product swap/substitution options allowing members to
      exchange subscription items based on configured swap rules and variant
      groups
    name: Product Swap Rules
  - description: >-
      APIs for retrieving product catalog, variants, pricing, and inventory
      information for subscription memberships.
    name: Product & Inventory Data
  - description: >-
      APIs for managing shop-level membership settings, configuration, and
      general store information.
    name: Shop Settings
  - description: >-
      APIs for performing bulk/mass operations on multiple membership contracts
      including status updates, product replacements, and billing date changes.
    name: Bulk Operations
paths:
  /api/external/v2/subscription-contract-details/billing-interval:
    get:
      tags:
        - Membership Contracts
      summary: Get billing interval options for selling plans
      description: >-
        Retrieves available billing frequency/interval options for specified
        Shopify selling plans (subscription plans). This endpoint returns all
        configured billing frequencies that customers can choose from for their
        subscriptions.


        **Key Information Returned:**

        - **Frequency Options**: List of available billing intervals (e.g.,
        weekly, monthly, quarterly)

        - **Interval Units**: Time unit for each option (DAYS, WEEKS, MONTHS,
        YEARS)

        - **Interval Count**: Number of units between billings (e.g., 2 = every
        2 weeks)

        - **Display Names**: Customer-friendly names for each frequency option

        - **Plan IDs**: Associated selling plan IDs for each frequency


        **Billing Frequency Structure:**

        Each FrequencyInfoDTO contains:

        - **id**: Selling plan ID (Shopify subscription plan identifier)

        - **name**: Display name (e.g., "Deliver every 2 weeks", "Monthly
        subscription")

        - **intervalUnit**: Time unit (DAY, WEEK, MONTH, YEAR)

        - **intervalCount**: Number of units between deliveries

        - **billingPolicy**: How billing is configured (EXACT_DAY, ANNIVERSARY)

        - **deliveryPolicy**: How delivery is scheduled


        **Common Billing Intervals:**

        - **Weekly**: intervalUnit=WEEK, intervalCount=1

        - **Bi-Weekly**: intervalUnit=WEEK, intervalCount=2

        - **Monthly**: intervalUnit=MONTH, intervalCount=1

        - **Every 2 Months**: intervalUnit=MONTH, intervalCount=2

        - **Quarterly**: intervalUnit=MONTH, intervalCount=3

        - **Semi-Annual**: intervalUnit=MONTH, intervalCount=6

        - **Annual**: intervalUnit=YEAR, intervalCount=1


        **Request Parameters:**

        - **sellingPlanIds**: Comma-separated list of Shopify selling plan IDs
        (required)
          - Example: "123456,123457,123458"
          - Returns frequency options for all specified plans

        **Common Use Cases:**

        - Display available billing frequencies in customer portal

        - Allow customers to change subscription delivery frequency

        - Build frequency selector UI components

        - Validate frequency options before updating subscription

        - Sync available billing options with external systems

        - Show frequency options during subscription checkout


        **Integration Example:**

        1. Get customer's current subscription selling plan ID

        2. Call this endpoint with that selling plan ID

        3. Display returned frequency options to customer

        4. Customer selects new frequency

        5. Update subscription with selected frequency


        **Authentication:** Requires API key authentication via X-API-Key header
        or api_key parameter
      operationId: getSubscriptionContractBillingInterval
      parameters:
        - description: API Key (Deprecated - Use Header X-API-Key instead)
          in: query
          name: api_key
          required: false
          schema:
            type: string
        - in: header
          name: X-API-Key
          required: false
          schema:
            type: string
        - description: Comma-separated list of Shopify selling plan IDs
          example: 123456,123457,123458
          in: query
          name: sellingPlanIds
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FrequencyInfoDTO'
          description: Billing interval options successfully retrieved
        '400':
          content:
            '*/*':
              schema:
                items:
                  $ref: '#/components/schemas/FrequencyInfoDTO'
                type: array
          description: Invalid selling plan IDs format or missing required parameter
        '401':
          content:
            '*/*':
              schema:
                items:
                  $ref: '#/components/schemas/FrequencyInfoDTO'
                type: array
          description: Authentication required - invalid or missing API key
components:
  schemas:
    FrequencyInfoDTO:
      properties:
        afterCycle1:
          format: int32
          type: integer
        afterCycle2:
          format: int32
          type: integer
        allowedForUpgradeDowngrade:
          type: boolean
        billingFrequencyCount:
          format: int32
          type: integer
        billingFrequencyInterval:
          enum:
            - DAY
            - WEEK
            - MONTH
            - YEAR
          type: string
        cutOff:
          format: int32
          type: integer
        deliveryPolicyPreAnchorBehavior:
          enum:
            - ASAP
            - NEXT
            - $UNKNOWN
          type: string
        discountEnabled:
          type: boolean
        discountEnabled2:
          type: boolean
        discountEnabled2Masked:
          type: boolean
        discountEnabledMasked:
          type: boolean
        discountOffer:
          format: double
          type: number
        discountOffer2:
          format: double
          type: number
        discountType:
          enum:
            - PERCENTAGE
            - FIXED
            - PRICE
          type: string
        discountType2:
          enum:
            - PERCENTAGE
            - FIXED
            - PRICE
          type: string
        freeTrialCount:
          format: int32
          type: integer
        freeTrialEnabled:
          type: boolean
        freeTrialInterval:
          enum:
            - DAY
            - WEEK
            - MONTH
            - YEAR
          type: string
        frequencyCount:
          format: int32
          type: integer
        frequencyDescription:
          type: string
        frequencyInterval:
          enum:
            - DAY
            - WEEK
            - MONTH
            - YEAR
          type: string
        frequencyName:
          type: string
        frequencyType:
          enum:
            - ON_PURCHASE_DAY
            - ON_SPECIFIC_DAY
          type: string
        groupId:
          format: int64
          type: integer
        groupName:
          type: string
        id:
          type: string
        idNew:
          type: string
        keepOriginalNextBillingDateAfterTrial:
          type: boolean
        lifeTimeMembership:
          type: boolean
        maxCycles:
          format: int32
          type: integer
        memberExclusiveTags:
          type: string
        memberInclusiveTags:
          type: string
        memberOnly:
          type: boolean
        minCycles:
          format: int32
          type: integer
        nonMemberOnly:
          type: boolean
        planSequence:
          format: int32
          type: integer
        planType:
          enum:
            - PAY_AS_YOU_GO
            - PREPAID
            - ADVANCED_PREPAID
          type: string
        prepaidFlag:
          type: string
        rulesJson:
          type: string
        specificDayEnabled:
          type: boolean
        specificDayValue:
          format: int32
          type: integer
        specificMonthValue:
          format: int32
          type: integer
      type: object

````