Get Reward Currency Limits

❗️

This API is currently under enhancement, so please don't use it. This page will be updated once the API is fully ready to be used.


This API allows you get details on the earning limits for reward currencies (points and alternate currencies) configured for the organisation.

👍

Note

For detailed information about our APIs and for hands-on testing, refer documentation in API overview and step-by-step guide on making your first API call in Make your first API call .

Prerequisites

  • Authentication: Basic/OAuth authentication
  • Default access group
  • Unique identifier of the loyalty program (programId)

Resource information

URI/api_gateway/loyalty/v1/programs/{programId}/cappings
HTTP methodGET
PaginationYes. Sorting is not supported.
Rate limitNA
Batch supportNA

API endpoint example

http://eu.api.capillarytech.com/api_gateway/loyalty/v1/programs/973/cappings

Path Parameters

ParameterData TypeDescription
programIdIntegerUnique ID of the loyalty program.

Request query parameters

ParameterData TypeDescription
skipIntegerPage number to retrieve. To view the first page, set the value to 0.
limitIntegerNumber of entries to display per page. For example, if the total entires are 15 and the limit is 5, the first page will display the first 5 records. The maximum supported limit is 100.
eventNameEnumFilter limits criteria based on the event associated. Supported values:
TransactionAdd, TransactionUpdate, CustomerRegistration, CustomerUpdate, GenericEvent, NewBill, PointsContributionToGroup, PointsTransfer, ReturnBill, TargetCompleted, PointsRedemption, VoucherRedemption, PartnerProgramDeLinking, PartnerProgramLinking, PartnerProgramTierUpdate
cappingNameStringFilter limits criteria by providing the name.
scopeEnumFilter limits criteria based on the scope associated. Supported values:
INDIVIDUAL_EVENT,INDIVIDUAL_CUSTOMER
entityEnumFilter limits criteria based on the reward currency being limited. Supported values:
POINTS, ALTERNATE_CURRENCIES
cappingEntityEnumFilter limits criteria based on the entity associated with it. Supported values:
ALL_EVENTS,PROMOTION,TRANSACTION_ADD
statusEnumFilter limits criteria based on the current active status. Supported values:
true, false
identifierStringFilter limits criteria based on the alternate currency identifier.

Response body

{
    "cappingConfigResponses": {
        "content": [
            {
                "eventName": null,
                "cappingName": "Test Capping",
                "scope": "INDIVIDUAL_CUSTOMER",
                "status": true,
                "cappingOn": null,
                "targetGroups": {
                    "active": true,
                    "id": 1939,
                    "name": "CappingTG2",
                    "periods": [
                        {
                            "startDate": "2025-02-01",
                            "endDate": "2025-04-28",
                            "refCode": "Cycle_1",
                            "periodStatus": "RUNNING",
                            "active": true,
                            "targetGroupId": 1939,
                            "attribution": {
                                "createdOn": "2025-04-04T00:00:00.000+0000",
                                "lastUpdatedOn": "2025-04-04T00:00:00.000+0000"
                            }
                        }
                    ],
                    "targets": [
                        {
                            "id": 2087,
                            "orgId": null,
                            "targetGroupId": 1939,
                            "name": "CappingTG2",
                            "targetType": "REGULAR_POINTS",
                            "targetEntity": "POINTS",
                            "eventName": "TransactionAdd",
                            "active": true,
                            "enrolmentMethod": "TRANSACTION",
                            "defaultValues": [
                                {
                                    "id": 14584,
                                    "periodId": 12242,
                                    "defaultValue": 100.000
                                }
                            ],
                            "targetMilestoneTriggers": [],
                            "targetAudienceFilter": null,
                            "targetRuleMetaData": null,
                            "extendedFieldInfo": null
                        }
                    ],
                    "totalPeriods": 1,
                    "targetEvaluationType": "FIXED_CALENDAR_WINDOW",
                    "recurringCycles": -1,
                    "frequency": 0,
                    "targetCycleStartDate": "2025-02-01T00:00:00.000+0000",
                    "targetCycleEndDate": "2025-04-28T00:00:00.000+0000",
                    "frequencyType": "CUSTOM",
                    "trackingType": "CAPPING"
                },
                "additionalFilters": {
                    "pointsFilters": {},
                    "lineItemFilters": {
                        "includedSkus": [],
                        "includedBrands": [],
                        "includedCategories": [],
                        "includedAttributes": {}
                    }
                },
                "entity": "POINTS",
                "limitValue": 100,
                "enrollType": null
            }
        ],
        "totalPages": 4,
        "totalElements": 4,
        "size": 1,
        "number": 0
    },
    "activeIndividualEvents": 0,
    "activeIndividualCustomers": 4
}

Response parameters

FieldData TypeDescription
cappingConfigResponsesObjectObject containing details on configurations created for reward currency limits.
- contentObjectObject containing details on configurations created for reward currency limits.
--eventNameStringUnique name of the event associated with the limits criteria.
--cappingNameStringUnique name for the limits criteria
--scopeEnumLevel at which limits is applied. Possible values:
INDIVIDUAL_EVENT: Limits reward currencies (points or alternate currencies) for a single transaction or behavioural event.
INDIVIDUAL_CUSTOMER: Limits reward currencies (points or alternate currencies ) across multiple transactions or behavioural events.
--statusBooleanIndicates the activity status of the limits criteria.
true: Limits criteria is active.
false: Limits criteria is active.
--cappingOnEnumCriteria on which the limits are applied on. Possible values:
QUANTITY - Limit based on purchase quantity.
SALES - Limit based on sales amount.
COUNT - Limit based on purchase count.
GROSS_SALES - Limit based on gross sales.
REGULAR_POINTS - Limit based on points earned through loyalty programs.
PROMOTIONAL_POINTS - Limit based on points earned through loyalty promotions.
ALL_POINTS - Limit based on points earned through loyalty programs and promotions.
REGULAR - Limit based on alternate currencies earned through loyalty promotions.
PROMOTIONAL - Limit based on alternate currencies earned through loyalty programs.
ALL - Limit based on alternate currencies earned through loyalty programs and promotions.
--targetGroupsObjectObject containing details of the target groups.
---activeBooleanIndicates the activity status of the target group.
true: Target group is active.
false: Target group is inactive.
---idIntegerUnique identifier of the target group.
---nameStringUnique name of the target group.
---periodsArrayObject containing time period details of the target group.
----startDateStringStart date of the target in YYYY-MM-DDformat.
----endDateStringEnd date of the target in YYYY-MM-DDformat.
----refCodeStringReference code (identifier) for the period.
----periodStatusEnumCurrent status of the period. Possible values: RUNNING, ENDED
----activeEnumIndicates the activity status of the target group.
true: Target group is active.
false: Target group is inactive.
----targetGroupIdIntegerUnique identifier of the target group the period is part of.
----attributionObjectObject containing details on the creation and updation of the target period.
------createdOnStringDate when the target period was created in ISO-8601 with milliseconds and timezone YYYY-MM-DDThh:mm:ss.SSS+0000
------lastUpdatedOnStringDate when the target period was last updated on in ISO-8601 with milliseconds and timezone YYYY-MM-DDThh:mm:ss.SSS+0000
---targetsObjectObject containing details on the targets in the target group.
----idIntegerUnique identifier of the target
----orgIdIntegerUnique identifier of the organisation.
----targetGroupIdIntegerUnique identifier of the target group the target is part of.
----nameStringUnique name of the target.
----targetTypeEnumCriteria which the target is tracking. Possible values:
QUANTITY - Track purchase quantity.
SALES - Track total sales amount.
COUNT - Track total purchase count.
GROSS_SALES - Track total on gross sales.
REGULAR_POINTS - Track points earned through loyalty programs.
PROMOTIONAL_POINTS - Track points earned through loyalty promotions.
ALL_POINTS - Track points earned through loyalty programs and promotions.
REGULAR - Track alternate currencies earned through loyalty promotions.
PROMOTIONAL - Track alternate currencies earned through loyalty programs.
ALL - Track alternate currencies earned through loyalty programs and promotions.
----targetEntityEnumType of reward currency or event the target is tracking. Possible values:
TRANSACTION, LINEITEM, POINTS, ALTERNATE_CURRENCIES
----eventNameStringName of event (transactional or behavioural) the target is tracking.
----activeBooleanIndicates the activity status of the target.
true: Target group is active.
false: Target group is inactive.
----enrolmentMethodEnumSpecifies how customers are enrolled into the target. Possible values:
TRANSACTION: Enrolled through transaction activity
IMPORT: Enrolled through data import
AUDIENCE_FILTER: Enrolled through audience filtering criteria
----defaultValuesObjectObject containing details of default values set for the target.
------idIntegerUnique identifier for the default value.
-----periodIdIntegerIdentifier of the target period the default value applies to.
-----defaultValueDoubleThe default value amount.
----targetMilestoneTriggersObjectObject containing trigger details for the milestone.
----targetAudienceFilterObjectObject containing filter details of the target.
----targetRuleMetaDataObjectObject containing additional metadata information of the target rules.
----extendedFieldInfoObjectObject containing additional extended field information of the target.
---totalPeriodsIntegerTotal number of periods in the target group.
---targetEvaluationTypeEnumSpecifies how the target progress is evaluated. Possible values:
FIXED_CALENDAR_WINDOW, ROLLING_WINDOW, CYCLIC_WINDOW
---recurringCyclesIntegerNumber of recurring cycles for the target group. A cycle is the time period for which the target period runs. If the value is -1, the cycles have no end date.
---frequencyIntegerNumber of times the cycle recurrs.
---targetCycleStartDateStringStart date of the target cycle.
---targetCycleEndDateStringEnd date of the target cycle.
---frequencyTypeEnumDefines how often a target is evaluated or reset. Possible values:
DAYS: Evaluated daily.
WEEKS: Evaluated weekly.
MONTHS: Evaluated monthly.
NO_LIMIT (-1): No evaluation frequency.
---trackingTypeEnumDetermines how the target progress is tracked. Possible values:
DEFAULT,STREAKS,NON_CONTINUOUS_STREAKS,UNIFIED,CAPPING
--additionalFiltersObjectAdditional filters for the target.
---pointsFiltersObjectAdditional filters for the points earned in the target.
---lineItemFiltersObjectAdditional filters for line-items purchased that affect target progress.
----includedSkusObjectDetails of sku details for products purchased that affect target progress.
----includedBrandsObjectDetails of brands that are part of the target.
----includedCategoriesObjectDetails of categories that are part of the target.
----includedAttributesObjectDetails of attributes that are part of the target.
--entityEnumType of reward currency being limited. Possible values: POINTS, ALTERNATE_CURRENCIES
--limitValueDoubleLimit value of the reward currency being limited.
--enrollTypeEnumType of enrollment into the limits criteria. Possible values:
ENROLL_VIA_AUDIENCE: Enrolling via audience filters.
UPLOAD: For enrolling via file upload.
-totalPagesIntegerTotal number of pages in the response.
-totalElementsIntegerTotal number of entries in the response.
-sizeIntegerTotal number of entries in each page.
-numberIntegerCurrent page number being displayed in the response.
-activeIndividualEventsIntegerCount of active individual events currently part of the limits criteria.
-activeIndividualCustomersIntegerCount of active individual customers currently part of the limits criteria.

API Error Codes

Error CodeError MessageReason
400Invalid limit: less than 1 is not allowedlimit value provided is less than 1.
400Invalid offset: Must be 0 or greateroffset value provided is negative or invalid.
400Invalid entity value: XZentity value provided is invalid.
400Invalid cappingEntity value: XYZcappingEntity value provided is invalid.
400Invalid scope value: XYZscopevalue provided is invalid.
Language
Credentials
Basic
base64
:
URL
Click Try It! to start a request and see the response here!