Loyalty Campaign Object

Data model description

AttributesDescriptionExample
id

Unique campaign ID, assigned by Voucherify.

camp_f7fBbQxUuTN7dI7tGOo5XMDA

name

Loyalty campaign name.

campaign_type

Type of campaign.

Available values: LOYALTY_PROGRAM
type

Defines whether the campaign can be updated with new vouchers after campaign creation.

  • AUTO_UPDATE: the campaign is dynamic, i.e. vouchers will generate based on set criteria
  • STATIC: vouchers need to be manually published
Available values: AUTO_UPDATE, STATIC
voucher
auto_join

Indicates whether customers will be able to auto-join a loyalty campaign if any earning rule is fulfilled.

join_once

If this value is set to true, customers will be able to join the campaign only once.

use_voucher_metadata_schema

Flag indicating whether the campaign is to use the voucher's metadata schema instead of the campaign metadata schema.

start_date

Activation timestamp defines when the campaign starts to be active in ISO 8601 format. Campaign is inactive before this date.

2022-09-20T00:00:00.000Z

expiration_date

Expiration timestamp defines when the campaign expires in ISO 8601 format. Campaign is inactive after this date.

2022-09-30T00:00:00.000Z

validity_timeframe

Set recurrent time periods when the campaign is valid. For example, valid for 1 hour every other day.start_date required when including the validity_timeframe.

AttributesDescriptionExample
interval

Defines the intervening time between two time points in ISO 8601 format, expressed as a duration. For example, a campaign with an interval of P2D will be active every other day.

duration

Defines the amount of time the campaign will be active in ISO 8601 format. For example, a campaign with a duration of P1D will be valid for a duration of one day.

validity_day_of_week

Integer array corresponding to the particular days of the week in which the campaign is valid.

  • 0 Sunday
  • 1 Monday
  • 2 Tuesday
  • 3 Wednesday
  • 4 Thursday
  • 5 Friday
  • 6 Saturday
activity_duration_after_publishing

Defines the amount of time the campaign will be active in ISO 8601 format after publishing. For example, a campaign with a duration of P24D will be valid for a duration of 24 days.

description

An optional field to keep any extra textual information about the campaign such as a campaign description and details.

vouchers_count

Total number of unique vouchers in campaign.

active

A flag to toggle the campaign on or off. You can disable a campaign even though it's within the active period defined by the start_date and expiration_date.

  • true indicates an active campaign
  • false indicates an inactive campaign
metadata

The metadata object stores all custom attributes assigned to the campaign. A set of key/value pairs that you can attach to a campaign object. It can be useful for storing additional information about the campaign in a structured format.

created_at

Timestamp representing the date and time when the campaign was created in ISO 8601 format.

2021-12-01T08:00:50.038Z

updated_at

Timestamp representing the date and time when the voucher was updated in ISO 8601 format.

2022-09-20T09:18:19.623Z

creation_status

Indicates the status of the campaign creation.

Available values: DONE, IN_PROGRESS, FAILED, DRAFT, MODIFYING
vouchers_generation_status

Indicates the status of the campaign's vouchers.

Available values: DONE, IN_PROGRESS, FAILED, DRAFT
protected

Indicates whether the resource can be deleted.

category_id

Unique category ID that this campaign belongs to.

cat_0b688929a2476386a7

categories
loyalty_tiers_expiration

Defines the expiration mechanism for loyalty tiers.

Any of:

Balance

AttributesDescriptionExample
qualification_type

Tier qualification.

BALANCE: Points balance is based on the customer's current points balance. Customers qualify for the tier if their points balance is in the points range of the tier.

Available values: BALANCE
start_date

Defines the conditions for the start date of the tier.

AttributesDescriptionExample
type

What triggers the tier to be valid for a customer.
IMMEDIATE: After reaching the minimum required points.

Available values: IMMEDIATE
expiration_date

Defines the conditions for the expiration date of a tier.

Any of:

Balance Drop

AttributesDescriptionExample
type

What triggers the tier to expire for a customer.
BALANCE_DROP: Tier expires when the points balance drops below the required range of the tier.

Available values: BALANCE_DROP

Custom

AttributesDescriptionExample
type

What triggers the tier to expire for a customer.
CUSTOM: Tier expires after a certain time period passes following the instance the points balance drops below the required range of the tier.

Available values: CUSTOM
extend

Defines the amount of time the tier will remain active in ISO 8601 format. The expiration date counter starts at the moment when the customer reaches the minimum required points that are required to be in the tier. For example, a tier with a duration of P3M will be valid for a duration of 3 months.

rounding

Defines the rounding mechanism for tier expiration.

Any of:

Calendar Periods

AttributesDescriptionExample
type

Period to which the expiration will be rounded to.

  • MONTH: The expiration date will be rounded to the end of the month.
  • QUARTER: The expiration date will be rounded to the end of the quarter.
  • HALF_YEAR: The expiration date will be rounded to the half year.
  • YEAR: The expiration date will be rounded to the end of the year.
Available values: MONTH, QUARTER, HALF_YEAR, YEAR
strategy

Which portion of the given period should the rounding be applied to.

Available values: END

Specific Month

AttributesDescriptionExample
type

This mechanism describes a custom rounding for the expiration date.

Available values: CUSTOM
strategy

Which portion of the given period should the rounding be applied to.

Available values: END
unit

Defines the type of unit of time in which the rounding period is counted.

Available values: MONTH
value

Value for the unit of time that the rounding applies to. Units for this parameter are defined by the rounding.unit parameter.

  • 0: January
  • 1: February
  • 2: March
  • 3: April
  • 4: May
  • 5: June
  • 6: July
  • 7: August
  • 8: September
  • 9: October
  • 10: November
  • 11: December

Points in Period

AttributesDescriptionExample
qualification_type

Tier qualification.

POINTS_IN_PERIOD: A customer qualifies for the tier only if the sum of the accumulated points in a defined time interval reaches the tier threshold.

Available values: POINTS_IN_PERIOD
qualification_period

Customers can qualify for the tier if they collected enough points in a given time period. So, in addition to the customer having to reach a points range, they also need to have collected the points within a set time period.

PeriodDefinition
Calendar MonthPoints collected in one calendar month
January, February, March, etc.
Calendar QuarterPoints collected in the quarter
- January - March
- April - June
- July - September
- October - December
Calendar Half-yearPoints collected in the half-year
- January - June
- July - December
Calendar YearPoints collected in one calendar year
January - December
Available values: MONTH, QUARTER, HALF_YEAR, YEAR
start_date

Defines the conditions for the start date of the tier.

AttributesDescriptionExample
type

What triggers the tier to be valid for a customer.
IMMEDIATE: After reaching the minimum required points.
NEXT_PERIOD: When the next qualification period starts.

Available values: IMMEDIATE, NEXT_PERIOD
expiration_date

Defines the conditions for the expiration date of a tier.

AttributesDescriptionExample
type

What triggers the tier to expire for a customer.
END_OF_PERIOD: Expire tier at the end of the period.
END_OF_NEXT_PERIOD: Expire tier at the end of the next period.

Available values: END_OF_PERIOD, END_OF_NEXT_PERIOD
extend

Extend the expiration by adding extra months or days in ISO 8601 format. The tier will remain active even though it reaches its expiration time period. For example, a tier with a duration of P3M will be valid for an additional duration of 3 months and a tier with a duration of P1D will be valid for an additional duration of 1 day.

object

The type of object represented by JSON. This object stores information about the campaign.

Language
URL
Click Try It! to start a request and see the response here!