Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Path Parameters
The campaign ID or name of the loyalty campaign. You can either pass the campaign ID, which was assigned by Voucherify, or the name
of the campaign as the path parameter value, e.g., Loyalty%20Campaign
.
"camp_rRsfatlwN7unSeUIJDCYedal"
Body
Customize the request body based on the type of earning rules you would like to create. The request body is an array of objects. The required minimum properties to include in the payload for each object are event
and loyalty
. Additionally, if you choose to add a validity_timeframe
, you must include a start_date
. Furthermore, an earning rule event
type:
customer.segment.entered
requires asegment
object- a custom event requires a
custom_event
object - a
customer.loyalty.tier.joined
,customer.loyalty.tier.left
,customer.loyalty.tier.upgraded
,customer.loyalty.tier.downgraded
,customer.loyalty.tier.prolonged
requires aloyalty_tier
object
This data model represents the Request body schema for the /loyalties/{campaignId}/earning-rules
endpoint.
- Earning Rule Object for Order Paid
- Earning Rule Object for Entered Segment
- Earning Rule Object for Custom Event
- Earning Rule Object for Tiers
A unique validation rule identifier assigned by the Voucherify API. The validation rule is verified before points are added to the balance.
"val_248vs7tUjlIE"
An object that defines the number of points that will be added to a loyalty card and how the points will be added.
FIXED
adds a fixed number ofpoints
PROPORTIONAL
adds points proportionally based on a pre-defined ratio
- Define fixed amount of points
- Order Amount
- Order Total Amount
- Order Metadata
- Order Items Quantity
- Order Items Amount
- Order Items Subtotal Amount
Defines the event which triggers the earning rule to add points to a loyalty card.
order.paid
an event defined by the Voucherify API corresponding to an order statusPAID
.
order.paid
Contains the custom earning rule name and parent campaign.
A flag to toggle the earning rule on or off. You can disable an earning rule even though it's within the active period defined by the start_date
and expiration_date
of the campaign or the earning rule's own start_date
and expiration_date
.
true
indicates an active earning rulefalse
indicates an inactive earning rule
Start date defines when the earning rule starts to be active. Activation timestamp is presented in the ISO 8601 format. Earning rule is inactive before this date. If you don't define the start date for an earning rule, it will inherit the campaign start date by default.
"2022-02-02T13:00:00.000Z"
Expiration date defines when the earning rule expires. Expiration timestamp is presented in the ISO 8601 format. Earning rule is inactive after this date.If you don't define the expiration date for an earning rule, it will inherit the campaign expiration date by default.
"2022-03-03T14:30:00.000Z"
Defines the configuration for pending points. Pending points can be used only with the order.paid
event.
Defines the loyalty point expiration rule. This expiration rule applies only to this earning rule and supersedes expiration_rules
defined in the voucher.loyalty_card
object.
Set recurrent time periods when the earning rule is valid. For example, valid for 1 hour every other day.start_date
required when including the validity_timeframe
.
Integer array corresponding to the particular days of the week in which the voucher is valid.
0
Sunday1
Monday2
Tuesday3
Wednesday4
Thursday5
Friday6
Saturday
Determines the hours of validity, e.g. to create a happy hours scenario.
The metadata object stores all custom attributes assigned to the earning rule. A set of key/value pairs that you can attach to an earning rule object. It can be useful for storing additional information about the earning rule in a structured format.
Response
Returns an array of earning rule objects.
Assigned by the Voucherify API, identifies the earning rule object.
Timestamp representing the date and time when the earning rule was created. The value is shown in the ISO 8601 format.
- Define fixed amount of points
- Order Amount
- Order Total Amount
- Order Metadata
- Order Items Quantity
- Order Items Amount
- Order Items Subtotal Amount
- Define amount of points proportional to customer metadata
- Earning Rule Proportional Custom Event
Contains the custom earning rule name and parent campaign.
The type of the object represented by JSON. Default is earning_rule.
earning_rule
For internal use by Voucherify.
The metadata object stores all custom attributes assigned to the earning rule. A set of key/value pairs that you can attach to an earning rule object. It can be useful for storing additional information about the earning rule in a structured format.
A unique validation rule identifier assigned by the Voucherify API. The validation rule is verified before points are added to the balance.
Timestamp representing the date and time when the earning rule was last updated in ISO 8601 format.
A flag to toggle the earning rule on or off. You can disable an earning rule even though it's within the active period defined by the start_date and expiration_date of the campaign or the earning rule's own start_date and expiration_date.
true
indicates an active earning rulefalse
indicates an inactive earning rule
Defines the event which triggers the earning rule to add points to a loyalty card.
"
order.paid,
customer.segment.entered,
customer.loyalty.tier.upgraded,
customer.loyalty.tier.downgraded,
customer.loyalty.tier.prolonged,
customer.loyalty.tier.joined,
customer.loyalty.tier.left"
Contains details about the custom event.
Contains the ID of a customer segment. Required for the customer.segment.entered
option in the event.
Defines the tier associated with the earning rule definition.
Defines the configuration for pending points. Pending points can be used only with the order.paid
event.
Start date defines when the earning rule starts to be active. Activation timestamp is presented in the ISO 8601 format. The earning rule is inactive before this date. If you do not define the start date for an earning rule, it will inherit the campaign start date by default.
Expiration date defines when the earning rule expires. Expiration timestamp is presented in the ISO 8601 format. The earning rule is inactive after this date. If you do not define the expiration date for an earning rule, it will inherit the campaign expiration date by default.
Set recurrent time periods when the earning rule is valid. For example, valid for 1 hour every other day.start_date
required when including the validity_timeframe
.
Integer array corresponding to the particular days of the week in which the voucher is valid.
0
Sunday1
Monday2
Tuesday3
Wednesday4
Thursday5
Friday6
Saturday
Determines the hours of validity, e.g. to create a happy hours scenario.
Defines the loyalty point expiration rule. This expiration rule applies only to this earning rule and supersedes expiration_rules
defined in the voucher.loyalty_card
object.