younifyd
Menu

Get Loyalty Program

Get loyalty program

GET/v1/loyalty_programs/{loyaltyProgramId}

Use it in a workflow

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

Request

Path parameters

loyaltyProgramIdinteger (int64)required

Identifier of the loyalty program. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.

Response

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

idinteger (int64)

The ID of loyalty program.

createdstring (date-time)

The time this entity was created.

titlestring

The display title for the Loyalty Program.

descriptionstring

Description of our Loyalty Program.

subscribedApplicationsarray<integer (int64)>

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

defaultValiditystring

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.

defaultPendingstring

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.

allowSubledgerboolean

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`.

sandboxboolean

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

cardCodeSettingsobject
validCharactersarray<string>required

List of characters used to generate the random parts of a code.

couponPatternstringrequired

The pattern used to generate codes, such as coupon codes, referral codes, and loyalty cards. The character `#` is a placeholder and is replaced by a random character from the `validCharacters` set.

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)

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

namestring

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

tiersarray<object>

The tiers in this loyalty program.

idinteger (int64)required

The internal ID of this entity.

createdstring (date-time)required

The time this entity was created.

programIDinteger (int64)required

The ID of the loyalty program that owns this entity.

programNamestring

The integration name of the loyalty program that owns this entity.

programTitlestring

The Campaign Manager-displayed name of the loyalty program that owns this entity.

namestringrequired

The name of the tier.

minPointsnumberrequired

The minimum amount of points required to enter the tier.

timezonestring

A string containing an IANA timezone descriptor.

cardBasedboolean

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
{
  "id": 139,
  "created": {},
  "title": "Point collection",
  "description": "Customers collect 10 points per 1$ spent",
  "subscribedApplications": [
    132,
    97
  ],
  "defaultValidity": "2W_U",
  "defaultPending": "immediate",
  "allowSubledger": false,
  "sandbox": true,
  "accountID": 1,
  "name": "my_program",
  "timezone": "Europe/Berlin"
}

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