younifyd
Menu

Get Loyalty Programs

List loyalty programs

GET/v1/loyalty_programs

Use it in a workflow

  1. Add a step and choose the Talon.One connector.
  2. Pick the Get Loyalty Programs action (under management).
  3. Fill in the fields below, then reference the result from later steps as {{getLoyaltyPrograms.response.data}}.

Fields

baseUrlstring

The API host this action calls. Override to point at a different environment.

Default "https://yourbaseurl.talon.one/"

forwardAllHeadersboolean

If enabled, all headers from the incoming request will be forwarded. Additional headers below will override forwarded ones.

Default false

headerskeyvalue

Extra HTTP headers to include, beyond what this action already declares. These override forwarded or declared headers with the same name.

queryParamskeyvalue

Extra URL query parameters to include, beyond what this action already declares. These override declared query parameters with the same name.

Response

Returns 200 with an object. Read it in later steps with {{getLoyaltyPrograms.response.data.<field>}}.

totalResultSizeinteger (int64)
dataarray<object>
idinteger (int64)required

The ID of loyalty program.

createdstring (date-time)required

The time this entity was created.

titlestringrequired

The display title for the Loyalty Program.

descriptionstringrequired

Description of our Loyalty Program.

subscribedApplicationsarray<integer (int64)>required

A list containing the IDs of all applications that are subscribed to this Loyalty Program.

defaultValiditystringrequired

The default duration after which new loyalty points should expire. Can be 'unlimited' or a specific time. The time format is a number followed by one letter indicating the time unit, like '30s', '40m', '1h', '5D', '7W', or 10M'. These rounding suffixes are also supported: - '_D' for rounding down. Can be used as a suffix after 'D', and signifies the start of the day. - '_U' for rounding up. Can be used as a suffix after 'D', 'W', and 'M', and signifies the end of the day, week, and month.

defaultPendingstringrequired

The default duration of the pending time after which points should be valid. Accepted values: 'immediate', 'on_action' or a specific time. The time format is a number followed by one letter indicating the time unit, like '30s', '40m', '1h', '5D', '7W', or 10M'. These rounding suffixes are also supported: - '_D' for rounding down. Can be used as a suffix after 'D', and signifies the start of the day. - '_U' for rounding up. Can be used as a suffix after 'D', 'W', and 'M', and signifies the end of the day, week, and month.

allowSubledgerbooleanrequired

Indicates if this program supports subledgers inside the program.

usersPerCardLimitinteger (int64)

The max amount of user profiles with whom a card can be shared. This can be set to 0 for no limit. This property is only used when `cardBased` is `true`.

sandboxbooleanrequired

Indicates if this program is a live or sandbox program. Programs of a given type can only be connected to Applications of the same type.

programJoinPolicystring

The policy that defines when the customer joins the loyalty program. - `not_join`: The customer does not join the loyalty program but can still earn and spend loyalty points. **Note**: The customer does not have a program join date. - `points_activated`: The customer joins the loyalty program only when their earned loyalty points become active for the first time. - `points_earned`: The customer joins the loyalty program when they earn loyalty points for the first time.

One ofnot_joinpoints_activatedpoints_earned

tiersExpirationPolicystring

The policy that defines how tier expiration, used to reevaluate the customer's current tier, is determined. - `tier_start_date`: The tier expiration is relative to when the customer joined the current tier. - `program_join_date`: The tier expiration is relative to when the customer joined the loyalty program. - `customer_attribute`: The tier expiration is determined by a custom customer attribute. - `absolute_expiration`: The tier is reevaluated at the start of each tier cycle. For this policy, it is required to provide a `tierCycleStartDate`.

One oftier_start_dateprogram_join_datecustomer_attributeabsolute_expiration

tierCycleStartDatestring (date-time)

Timestamp at which the tier cycle starts for all customers in the loyalty program. **Note**: This is only required when the tier expiration policy is set to `absolute_expiration`.

tiersExpireInstring

The amount of time after which the tier expires and is reevaluated. The time format is an **integer** followed by one letter indicating the time unit. Examples: `30s`, `40m`, `1h`, `5D`, `7W`, `10M`, `15Y`. Available units: - `s`: seconds - `m`: minutes - `h`: hours - `D`: days - `W`: weeks - `M`: months - `Y`: years You can round certain units up or down: - `_D` for rounding down days only. Signifies the start of the day. - `_U` for rounding up days, weeks, months and years. Signifies the end of the day, week, month or year.

tiersDowngradePolicystring

The policy that defines how customer tiers are downgraded in the loyalty program after tier reevaluation. - `one_down`: If the customer doesn't have enough points to stay in the current tier, they are downgraded by one tier. - `balance_based`: The customer's tier is reevaluated based on the amount of active points they have at the moment.

One ofone_downbalance_based

cardCodeSettingsobject2 fields
returnPolicystring

The policy that defines the rollback of points in case of a partially returned, cancelled, or reopened [customer session](https://docs.talon.one/docs/dev/concepts/entities/customer-sessions). - `only_pending`: Only pending points can be rolled back. - `within_balance`: Available active points can be rolled back if there aren't enough pending points. The active balance of the customer cannot be negative. - `unlimited`: Allows negative balance without any limit.

One ofonly_pendingwithin_balanceunlimited

accountIDinteger (int64)required

The ID of the Talon.One account that owns this program.

namestringrequired

The internal name for the Loyalty Program. This is an immutable value.

tiersarray<object>7 fields

The tiers in this loyalty program.

timezonestringrequired

A string containing an IANA timezone descriptor.

cardBasedbooleanrequired

Defines the type of loyalty program: - `true`: the program is a card-based. - `false`: the program is profile-based.

Default false

canUpdateTiersboolean

`True` if the tier definitions can be updated.

Default false

canUpdateTierExpirationPolicyboolean

`True` if the tier expiration policy can be updated.

canUpgradeToAdvancedTiersboolean

`True` if the program can be upgraded to use the `tiersExpireIn` and `tiersDowngradePolicy` properties.

Default false

canUpdateSubledgersboolean

`True` if the `allowSubledger` property can be updated in the loyalty program.

Default false

json
{
  "totalResultSize": 1,
  "data": [
    {
      "cardBased": true,
      "tiers": [
        {
          "name": "Gold",
          "minPoints": 300,
          "id": 3,
          "created": {},
          "programID": 139
        },
        {
          "name": "Silver",
          "minPoints": 200,
          "id": 2,
          "created": {},
          "programID": 139
        },
        {
          "name": "Bronze",
          "minPoints": 100,
          "id": 1,
          "created": {},
          "programID": 139
        }
      ],
      "canUpdateTiers": true,
      "usersPerCardLimit": 111,
      "tierCycleStartDate": {},
      "timezone": "Europe/Berlin",
      "description": "Customers collect 10 points per 1$ spent",
      "title": "Point collection",
      "canUpdateSubledgers": true,
      "programJoinPolicy": "not_join",
      "accountID": 1,
      "defaultPending": "immediate",
      "tiersDowngradePolicy": "one_down",
      "cardCodeSettings": {
        "couponPattern": "SUMMER-####-####",
        "validCharacters": [
          "A",
          "B",
          "C",
          "D",
          "E",
          "F",
          "G",
          "H",
          "I",
          "J",
          "K",
          "L",
          "M",
          "N",
          "O",
          "P",
          "Q",
          "R",
          "S",
          "T",
          "U",
          "V",
          "W",
          "X",
          "Y",
          "Z",
          "0",
          "1",
          "2",
          "3",
          "4",
          "5",
          "6",
          "7",
          "8",
          "9"
        ]
      },
      "id": 139,
      "canUpgradeToAdvancedTiers": true,
      "created": {},
      "sandbox": true,
      "returnPolicy": "only_pending",
      "subscribedApplications": [
        132,
        97
      ],
      "tiersExpirationPolicy": "tier_start_date",
      "defaultValidity": "2W_U",
      "canUpdateTierExpirationPolicy": true,
      "allowSubledger": false,
      "tiersExpireIn": "27W_U",
      "name": "my_program"
    }
  ]
}

Need more? See the Talon.One guide for connection setup and behaviour shared by every action.