---
title: "Retrieve all discount coupons."
method: GET
path: "/api/v1/billing/discountcoupons"
tags: ["Billing"]
---

# Retrieve all discount coupons.

`GET /api/v1/billing/discountcoupons`

## Request

- Base URL: `https://go.outseta.com`
- URL: `https://go.outseta.com/api/v1/billing/discountcoupons`
- Auth: one of:
  - HTTP bearer
  - API key in header `Authorization`

## Query parameters

- `canRedeem` boolean
- `q` string, nullable
- `planUid` string, nullable
- `limit` integer
- `offset` integer

## Response `200`

- object
  - `metadata` CollectionMetadata
    - `limit` integer
    - `offset` integer
    - `total` integer
  - `items` DiscountCoupon[]
    - `Uid` string, nullable
    - `_objectType` string, nullable
    - `Created` string, date-time, required
    - `Updated` string, date-time, required
    - `ActivityEventData` unknown
    - `UniqueIdentifier` string, nullable
    - `Name` string, nullable
    - `IsActive` boolean
    - `AmountOff` number, nullable
    - `PercentOff` number, nullable
    - `RedeemBy` string, date-time, nullable
    - `Duration` 1 | 2 | 3: `1` - Forever, `2` - Once, `3` - Repeating
    - `DurationInMonths` integer, nullable
    - `TimesRedeemed` integer
    - `MaxRedemptions` integer, nullable
    - `DiscountCouponPlans` DiscountCouponPlan[], nullable
      - `Uid` string, nullable
      - `_objectType` string, nullable
      - `Created` string, date-time, required
      - `Updated` string, date-time, required
      - `ActivityEventData` unknown
      - `Plan` Plan
        - `Uid` string, nullable
        - `_objectType` string, nullable
        - `Created` string, date-time, required
        - `Updated` string, date-time, required
        - `ActivityEventData` unknown
        - `Name` string, nullable
        - `Description` string, nullable
        - `PlanFamily` PlanFamily
          - `Uid` string, nullable
          - `_objectType` string, nullable
          - `Created` string, date-time, required
          - `Updated` string, date-time, required
          - `ActivityEventData` unknown
          - `SchemaLessData` object, nullable
          - `Name` string, nullable
          - `IsActive` boolean
          - `IsDefault` boolean
          - `Plans` Plan[], nullable
        - `AccountRegistrationMode` 1 | 2: `1` - Individual, `2` - Team
        - `IsQuantityEditable` boolean, required
        - `MinimumQuantity` integer
        - `MaximumPeople` integer, nullable
        - `MonthlyRate` number
        - `AnnualRate` number
        - `QuarterlyRate` number
        - `OneTimeRate` number
        - `SetupFee` number
        - `SkipSetupFeeOnPlanChange` boolean
        - `IsTaxable` boolean, required
        - `IsActive` boolean
        - `IsPerUser` boolean
        - `RequirePaymentInformation` boolean
        - `TrialPeriodDays` integer
        - `TrialUntilDate` string, date-time, nullable
        - `ExpiresAfterMonths` integer
        - `ExpirationDate` string, date-time, nullable
        - `PostLoginPath` string, nullable
        - `StripeTaxCodeId` string, nullable
        - `UnitOfMeasure` string, nullable
        - `PlanAddOns` PlanAddOn[], nullable
          - `Uid` string, nullable
          - `_objectType` string, nullable
          - `Created` string, date-time, required
          - `Updated` string, date-time, required
          - `ActivityEventData` unknown
          - `Plan` Plan (recursive)
          - `AddOn` AddOn
            - `Uid` string, nullable
            - `_objectType` string, nullable
            - `Created` string, date-time, required
            - `Updated` string, date-time, required
            - `ActivityEventData` unknown
            - `Name` string, nullable
            - `BillingAddOnType` 1 | 2 | 3: `1` - Recurring, `2` - Usage, `3` - OneTime
            - `IsQuantityEditable` boolean, required
            - `MinimumQuantity` integer
            - `MonthlyRate` number
            - `AnnualRate` number
            - `SetupFee` number
            - `UnitOfMeasure` string, nullable
            - `IsTaxable` boolean, required
            - `IsBilledDuringTrial` boolean, required
            - `ExpiresAfterMonths` integer
            - `ExpirationDate` string, date-time, nullable
            - `StripeTaxCodeId` string, nullable
            - `PlanAddOns` PlanAddOn[], nullable
            - `ContentGroups` ContentGroup[], nullable
              - …
            - `IsPerUser` boolean
            - `QuarterlyRate` number
            - `OneTimeRate` number
            - `SubscriptionCount` integer
            - `Quantity` integer
          - `IsUserSelectable` boolean, required
        - `ContentGroups` ContentGroup[], nullable
          - `Uid` string, nullable
          - `_objectType` string, nullable
          - `Created` string, date-time, required
          - `Updated` string, date-time, required
          - `ActivityEventData` unknown
          - `Name` string, required
          - `AccessDeniedPath` string, nullable
          - `ContentGroupItems` ContentGroupItem[], nullable
            - `Uid` string, nullable
            - `_objectType` string, nullable
            - `Created` string, date-time, required
            - `Updated` string, date-time, required
            - `ActivityEventData` unknown
            - `Pattern` string, required
            - `MatchMode` 1 | 2, required: `1` - Equals, `2` - StartsWith
            - `ContentGroup` ContentGroup, required (recursive)
          - `AllowedPlans` Plan[], nullable
          - `AllowedProducts` StripeProduct[], nullable
            - `Uid` string, nullable
            - `_objectType` string, nullable
            - `Created` string, date-time, required
            - `Updated` string, date-time, required
            - `ActivityEventData` unknown
            - `SchemaLessData` object, nullable
            - `StripeId` string, nullable
            - `IsLivemode` boolean
            - `Name` string, nullable
            - `DefaultPriceId` string, nullable
            - `Description` string, nullable
            - `IsActive` boolean
            - `TaxCodeId` string, nullable
            - `UnitLabel` string, nullable
            - `ContentGroups` ContentGroup[], nullable
            - `StripePrices` StripePrice[], nullable
              - …
            - `AccountRegistrationMode` 1 | 2: `1` - Individual, `2` - Team
            - `ExpiresAfterMonths` integer
            - `ExpirationDate` string, date-time, nullable
            - `IsPerUser` boolean
            - `IsQuantityEditable` boolean
            - `MaximumPeople` integer, nullable
            - `MigratedAddOnUid` string, nullable
            - `MigratedPlanUid` string, nullable
            - `MinimumQuantity` integer, nullable
            - `PostLoginPath` string, nullable
            - `PostPurchaseUrl` string, nullable
            - `RequirePaymentInformation` boolean
            - `StripeProductCrossSells` StripeProductCrossSell[], nullable
              - …
            - `TrialPeriodDays` integer
            - `TrialUntilDate` string, date-time, nullable
            - `CanDelete` boolean
            - `NumberOfPurchases` integer
            - `NumberOfSubscriptions` integer
            - `Quantity` integer, nullable
            - `StripeProductFamily` StripeProductFamily
              - …
          - `AllowedAddOns` AddOn[], nullable
            - `Uid` string, nullable
            - `_objectType` string, nullable
            - `Created` string, date-time, required
            - `Updated` string, date-time, required
            - `ActivityEventData` unknown
            - `Name` string, nullable
            - `BillingAddOnType` 1 | 2 | 3: `1` - Recurring, `2` - Usage, `3` - OneTime
            - `IsQuantityEditable` boolean, required
            - `MinimumQuantity` integer
            - `MonthlyRate` number
            - `AnnualRate` number
            - `SetupFee` number
            - `UnitOfMeasure` string, nullable
            - `IsTaxable` boolean, required
            - `IsBilledDuringTrial` boolean, required
            - `ExpiresAfterMonths` integer
            - `ExpirationDate` string, date-time, nullable
            - `StripeTaxCodeId` string, nullable
            - `PlanAddOns` PlanAddOn[], nullable
              - …
            - `ContentGroups` ContentGroup[], nullable
            - `IsPerUser` boolean
            - `QuarterlyRate` number
            - `OneTimeRate` number
            - `SubscriptionCount` integer
            - `Quantity` integer
        - `NumberOfSubscriptions` integer, nullable
      - `DiscountCoupon` DiscountCoupon (recursive)
    - `ApplyToAddOns` boolean
    - `IsInUse` boolean, nullable
    - `PlanUids` string, nullable

## Other responses

- `400`: Invalid Uid format
- `401`: Unauthorized

---

[API](https://skmtc.dev/outseta/apis/outseta-api.md) · [All operations](https://skmtc.dev/outseta/apis/outseta-api/llms.txt) · [OpenAPI document](https://skmtc.dev/outseta/apis/outseta-api/revisions/c362823af82d?raw)
