For the complete documentation index, see llms.txt. This page is also available as Markdown.

Retrieve list of discounts

The site's discounts — configuration and pool state, no statistics. status is computed from the activation and expiration dates: active, scheduled (starts later), expired (ended or deactivated). Default page size 100. All filters combine with AND.

get
Authorizations
X-Recart-API-KeystringRequired

It can be obtained in Recart account after contacting Support

Query parameters
codestring · min: 1 · max: 200Optional

The static code of a general discount, exact match, case-insensitive. Only general discounts have a code.

namestring · min: 1 · max: 200Optional

Discount name contains this text, case-insensitive

patternstring · min: 1 · max: 200Optional

The code prefix of a unique discount (discountCodePattern), exact match, case-insensitive. Only unique discounts have one.

limitinteger · min: 1 · max: 100Optional

Maximum number of discounts to return

Default: 100
offsetintegerOptional

Number of discounts to skip, for pagination

Default: 0
modestring · enumOptional

Code pools only — refilling pools serve flows and popups, non-refilling pools serve campaigns

Possible values:
availablebooleanOptional

true = discounts a flow or campaign could pick — every general discount plus the unique discounts not yet assigned to a campaign; with flowId, also the ones that flow already uses. Status and dates are not checked.

flowIdstringOptional

Discounts configured in this flow

Responses
200

Ok

application/vnd.api+json
get/discounts
GET /app-integrations/2023-12/discounts HTTP/1.1
Host: api.recart.com
X-Recart-API-Key: YOUR_API_KEY
Accept: */*
{
  "data": [
    {
      "type": "discounts",
      "attributes": {
        "id": "66aa0f1c7e8c9d2b00123abc",
        "name": "Welcome 10%",
        "status": "active",
        "customizationType": "unique",
        "expiryType": "fixed",
        "type": "basic",
        "discountClasses": [
          "order"
        ],
        "amount": 10,
        "valueType": "PERCENTAGE",
        "summary": "10% off entire order",
        "discountCodePattern": "WELCOME-",
        "mode": "refilling",
        "targetCount": 10000,
        "availableCount": 8612,
        "fillStatus": "full",
        "startsAt": "2026-03-01T00:00:00.000Z",
        "endsAt": null,
        "shopifyDiscountId": "1234567890123",
        "createdAt": "2026-03-01T09:12:00.000Z",
        "updatedAt": "2026-08-14T10:03:11.000Z"
      }
    },
    {
      "type": "discounts",
      "attributes": {
        "id": "66bb1a2d8f9e0c3d00456def",
        "name": "Labor Day 20%",
        "status": "active",
        "customizationType": "unique",
        "expiryType": "relative",
        "type": "basic",
        "discountClasses": [
          "order"
        ],
        "amount": 20,
        "valueType": "PERCENTAGE",
        "summary": "20% off entire order • Minimum purchase of $50.00",
        "discountCodePattern": "LD-",
        "durationSeconds": 86400,
        "template": {
          "type": "BASIC",
          "title": "Labor Day 20%",
          "appliesOncePerCustomer": true,
          "usageLimit": 1,
          "combinesWith": {
            "orderDiscounts": false,
            "productDiscounts": false,
            "shippingDiscounts": true
          },
          "customerSelection": {
            "type": "ALL_CUSTOMERS",
            "allCustomers": true
          },
          "customerGets": {
            "appliesOnOneTimePurchase": true,
            "appliesOnSubscription": false,
            "value": {
              "type": "PERCENTAGE",
              "percentage": 20
            },
            "items": {
              "type": "INPUT_ALL",
              "allItems": true
            }
          },
          "minimumRequirement": {
            "type": "MINIMUM_SUBTOTAL",
            "greaterThanOrEqualToSubtotal": {
              "amount": 50,
              "currencyCode": "USD"
            }
          }
        },
        "shopifyDiscountId": "1234567890456",
        "createdAt": "2026-08-20T10:00:00.000Z",
        "updatedAt": "2026-08-30T16:00:04.000Z"
      }
    }
  ]
}

Last updated

Was this helpful?