---
title: "Get Voucher's Redemptions"
method: GET
path: "/v1/vouchers/{code}/redemption"
tags: ["Redemptions"]
---

# Get Voucher's Redemptions

`GET /v1/vouchers/{code}/redemption`

Retrieve the number of times a voucher was redeemed and each of the redemption details.

## Response `200`

A dictionary with a `redemption_entries` property that contains an array of voucher's redemptions.

- VouchersRedemptionGetResponseBody — Response body schema for **GET** `v1/vouchers/{code}/redemption`.
  - `quantity` integer, nullable, required — The maximum number of times a voucher can be redeemed.
  - `redeemed_quantity` integer, required — The number of times the voucher was redeemed successfully.
  - `object` string, required — The type of the object represented by JSON. This object stores information about redemptions in a dictionary.
  - `url` string, required — URL
  - `data_ref` string, required — Identifies the name of the attribute that contains the array of `redemption_entries`.
  - `total` integer, required — Total number of redemption objects.
  - `redemption_entries` RedemptionEntry[], required — Contains the array of successful and failed redemption objects.
    - union
      - RedemptionWithVoucherWithoutStackingRulesTypeCategories — This is an object representing a redemption.
        - `id` string, required — Unique redemption ID.
        - `object` 'redemption', required — The type of the object represented by the JSON
        - `date` string, date-time, required — Timestamp representing the date and time when the object was created. The value is shown in the ISO 8601 format.
        - `customer_id` string, nullable, required — Unique customer ID of the redeeming customer.
        - `tracking_id` string, nullable, required — Hashed customer source ID.
        - `metadata` object, nullable, required — The metadata object stores all custom attributes assigned to the redemption.
        - `amount` integer — For gift cards, this is a positive integer in the smallest currency unit (e.g. 100 cents for $1.00) representing the number of redeemed credits. For loyalty cards, this is the number of loyalty points used in the transaction.
        - `redemption` string, nullable, required — Unique redemption ID of the parent redemption.
        - `result` 'SUCCESS' | 'FAILURE', required — Redemption result.
        - `status` 'SUCCEEDED' | 'FAILED' | 'ROLLED_BACK', required — Redemption status.
        - `session` object — Contains details about the redemption session lock. Sessions can be established only for discount vouchers, promotions, and gift cards.
          - `key` string — The session unique ID assigned by Voucherify or your own unique session ID sent in the request.
        - `related_redemptions` object
          - `rollbacks` object[]
            - `id` string — Unique rollback redemption ID.
            - `date` string, date-time — Timestamp representing the date and time when the object was created. The value is shown in the ISO 8601 format.
            - `rollback_order_mode` 'WITH_ORDER' | 'WITHOUT_ORDER' — Defines the rollback mode for the order. `WITH_ORDER` is a default setting. The redemption is rolled back together with the data about the order, including related discount values. `WITHOUT_ORDER` allows rolling the redemption back without affecting order data, including the applied discount values. This is returned only in GET `v1/redemptions/` and GET `v1/redemptions/{redemptionId}` endpoints.
          - `redemptions` object[]
            - `id` string — Unique redemption ID.
            - `date` string, date-time — Timestamp representing the date and time when the object was created. The value is shown in the ISO 8601 format.
        - `failure_code` string — If the result is `FAILURE`, this parameter will provide a generic reason as to why the redemption failed.
        - `failure_message` string — If the result is `FAILURE`, this parameter will provide a more expanded reason as to why the redemption failed.
        - `order` object, nullable, required — Order information.
          - `id` string — Unique ID assigned by Voucherify of an existing order that will be linked to the redemption of this request.
          - `source_id` string, nullable — Unique source ID of an existing order that will be linked to the redemption of this request.
          - `status` 'CREATED' | 'PAID' | 'CANCELED' | 'FULFILLED' — The order status.
          - `amount` integer — This is the sum of the order items' amounts. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `initial_amount` integer — This is the sum of the order items' amounts before any discount or other effect (e.g. add missing units) is applied. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `discount_amount` integer — Sum of all order-level discounts applied to the order. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `items_discount_amount` integer — Sum of all product-specific discounts applied to the order. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `total_discount_amount` integer — Sum of all order-level AND all product-specific discounts applied to the order. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `total_amount` integer — Order amount after undoing all the discounts through the rollback redemption. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `applied_discount_amount` integer — This field shows the order-level discount applied. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `items_applied_discount_amount` integer — Sum of all product-specific discounts applied in a particular request. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00). `sum(items, i => i.applied_discount_amount)`
          - `total_applied_discount_amount` integer — Sum of all order-level AND all product-specific discounts applied in a particular request. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00). `total_applied_discount_amount` = `applied_discount_amount` + `items_applied_discount_amount`
          - `metadata` object — A set of custom key/value pairs that you can attach to an order. It can be useful for storing additional information about the order in a structured format. It can be used to define business validation rules or discount formulas.
          - `object` 'order' — The type of the object represented by JSON.
          - `created_at` string, date-time — Timestamp representing the date and time when the order was created. The value is shown in the ISO 8601 format.
          - `updated_at` string, date-time, nullable — Timestamp representing the date and time when the order was last updated in ISO 8601 format.
          - `customer_id` string, nullable — Unique customer identifier of the customer making the purchase. The ID is assigned by Voucherify.
          - `referrer_id` string, nullable — Unique referrer ID.
          - `customer` CustomerId
            - `id` string, required — A unique identifier of an existing customer.
            - `object` 'customer', required — The type of the object represented by JSON.
          - `referrer` ReferrerId
            - `id` string, required — A unique identifier of an existing customer.
            - `object` 'customer', required — The type of the object represented by JSON.
          - `redemptions` object
          - `items` object[] — Array of items applied to the order. It can include up to 500 items.
            - `id` string — Unique identifier of the order line item.
            - `sku_id` string — Unique identifier of the SKU. It is assigned by Voucherify.
            - `product_id` string — Unique identifier of the product. It is assigned by Voucherify.
            - `related_object` 'product' | 'sku' — Used along with the source_id property, can be set to either sku or product.
            - `source_id` string — The merchant's product/SKU ID (if it is different from the Voucherify product/SKU ID). It is useful in the integration between multiple systems. It can be an ID from an eCommerce site, a database, or a third-party service.
            - `quantity` integer — The quantity of the particular item in the cart.
            - `discount_quantity` integer — Number of dicounted items.
            - `initial_quantity` integer — A positive integer in the smallest unit quantity representing the total amount of the order; this is the sum of the order items' quantity.
            - `amount` integer — The total amount of the order item (price * quantity).
            - `discount_amount` integer — Sum of all order-item-level discounts applied to the order.
            - `applied_discount_amount` integer — This field shows the order-level discount applied.
            - `applied_discount_quantity` integer — Number of the discounted items applied in the transaction.
            - `applied_quantity` integer — Quantity of items changed by the application of a new quantity items. It can be positive when an item is added or negative if an item is replaced.
            - `applied_quantity_amount` integer — Amount for the items changed by the application of a new quantity items. It can be positive when an item is added or negative if an item is replaced.
            - `initial_amount` integer — A positive integer in the smallest currency unit (e.g. 100 cents for $1.00) representing the total amount of the order. This is the sum of the order items' amounts.
            - `price` integer — Unit price of an item. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`.
            - `subtotal_amount` integer — Final order item amount after the applied item-level discount. If there are no item-level discounts applied, this item is equal to the `amount`. `subtotal_amount`=`amount`-`applied_discount_amount`
            - `product` object — An object containing details of the related product.
              - …
            - `sku` object — An object containing details of the related SKU.
              - …
            - `object` 'order_item', required — The type of the object represented by JSON.
            - `metadata` object — A set of custom key/value pairs that you can attach to an item object. It can be useful for storing additional information about the item in a structured format. It can be used to define business validation rules or discount formulas.
            - `application_details` object[] — Array containing details about the items that are replaced and the items that are replacements for discounts with the `REPLACE_ITEMS` effect.
              - …
        - `channel` object, required — Defines the details of the channel through which the redemption was issued.
          - `channel_id` string — Unique channel ID of the user performing the redemption. This is either a user ID from a user using the Voucherify Dashboard or an X-APP-Id of a user using the API. For `AUTO_REDEEM`, it is the reward assignment ID.
          - `channel_type` 'USER' | 'API' | 'AUTO_REDEEM' — The source of the channel for the redemption. A `USER` corresponds to the Voucherify Dashboard, `API` corresponds to the API, and `AUTO_REDEEM` corresponds to a loyalty campaign reward that has been redeemed automatically.
        - `customer` SimpleCustomer, required — Simplified customer data.
          - `id` string — Unique identifier of an existing customer. It is assigned by Voucherify.
          - `name` string — Customer's first and last name.
          - `email` string — Customer's email address.
          - `source_id` string — A unique identifier of the customer. It can be a customer ID or email from a CRM system, database, or a third-party service.
          - `metadata` object — A set of custom key/value pairs that are attached to the customer. It stores all custom attributes assigned to the customer.
          - `object` 'customer' — The type of the object represented by JSON.
        - `related_object_type` 'voucher' | 'promotion_tier' | 'redemption', required — Defines the related object.
        - `related_object_id` string, required — Unique related object ID assigned by Voucherify, i.e. v_lfZi4rcEGe0sN9gmnj40bzwK2FH6QUno for a voucher.
        - `promotion_tier` PromotionTier — This is an object representing a promotion tier. Promotion tiers are always assigned to a campaign and cannot be used standalone.
          - `id` string — Unique promotion tier ID.
          - `created_at` string, date-time — Timestamp representing the date and time when the promotion tier was created. The value is shown in the ISO 8601 format.
          - `updated_at` string, date-time — Timestamp representing the date and time when the promotion tier was updated. The value is shown in the ISO 8601 format.
          - `name` string — Name of the promotion tier.
          - `banner` string — Text to be displayed to your customers on your website.
          - `action` object — Contains details about the discount applied by the promotion tier.
            - `discount` union — Contains information about discount.
              - …
          - `metadata` object — The metadata object stores all custom attributes assigned to the promotion tier. A set of key/value pairs that you can attach to a promotion tier object. It can be useful for storing additional information about the promotion tier in a structured format.
          - `hierarchy` integer — The promotions hierarchy defines the order in which the discounts from different tiers will be applied to a customer's order. If a customer qualifies for discounts from more than one tier, discounts will be applied in the order defined in the hierarchy.
          - `promotion_id` string — Promotion unique ID.
          - `campaign` object — Contains details about promotion tier's parent campaign.
            - `id` string — Unique campaign ID.
            - `start_date` string, date-time — Activation timestamp defines when the campaign starts to be active in ISO 8601 format. Campaign is *inactive before* this date.
            - `expiration_date` string, date-time — Expiration timestamp defines when the campaign expires in ISO 8601 format. Campaign is *inactive after* this date.
            - `validity_timeframe` ValidityTimeframe — 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`.
              - …
            - `validity_day_of_week` integer[] — Integer array corresponding to the particular days of the week in which the voucher is valid. - `0` Sunday - `1` Monday - `2` Tuesday - `3` Wednesday - `4` Thursday - `5` Friday - `6` Saturday
            - `validity_hours` ValidityHours — Determines the hours of validity, e.g. to create a happy hours scenario.
              - …
            - `active` boolean — A flag indicating whether the campaign is active or not active. A campaign can be disabled even though it's within the active period defined by the `start_date` and `expiration_date` using the [Disable Campaign](/api-reference/disable-campaign) endpoint. - `true` indicates an *active* campaign - `false` indicates an *inactive* campaign
            - `category_id` string — Unique category ID that this campaign belongs to.
            - `object` string — The type of the object represented by the campaign object. This object stores information about the campaign.
          - `campaign_id` string — Promotion tier's parent campaign's unique ID.
          - `active` boolean — A flag to toggle the promotion tier on or off. You can disable a promotion tier even though it's within the active period defined by the `start_date` and `expiration_date`. - `true` indicates an *active* promotion tier - `false` indicates an *inactive* promotion tier
          - `start_date` string, date-time — Activation timestamp defines when the promotion tier starts to be active in ISO 8601 format. Promotion tier is *inactive before* this date.
          - `expiration_date` string, date-time — Activation timestamp defines when the promotion tier expires in ISO 8601 format. Promotion tier is *inactive after* this date.
          - `validity_timeframe` ValidityTimeframe — 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`.
            - `duration` string — Defines the amount of time an earning rule will be active in ISO 8601 format. For example, an earning rule with a `duration` of `PT1H` will be valid for a duration of one hour.
            - `interval` string — Defines the intervening time between two time points in ISO 8601 format, expressed as a duration. For example, an earning rule with an `interval` of `P2D` will be valid every other day.
          - `validity_day_of_week` integer[] — Integer array corresponding to the particular days of the week in which the voucher is valid. - `0` Sunday - `1` Monday - `2` Tuesday - `3` Wednesday - `4` Thursday - `5` Friday - `6` Saturday
          - `validity_hours` ValidityHours — Determines the hours of validity, e.g. to create a happy hours scenario.
            - `daily` object[] — Defines the recurring period(s) when the resource is active. The periods should not overlap.
              - …
          - `summary` object — Contains statistics about promotion tier redemptions and orders.
            - `redemptions` object — Contains statistics about promotion tier redemptions.
              - …
            - `orders` object — Contains statistics about orders related to the promotion tier.
              - …
          - `object` string — The type of the object represented by JSON. This object stores information about the promotion tier.
          - `validation_rule_assignments` ValidationRuleAssignmentsList — Validation Rule Assignments List
            - `object` string, required — The type of the object represented by JSON. This object stores information about validation rule assignments.
            - `data_ref` string, required — Identifies the name of the JSON property that contains the array of validation rule assignments.
            - `data` ValidationRuleAssignment[], required — A dictionary that contains an array of validation rule assignments.
              - …
            - `total` integer, required — Total number of validation rule assignments.
          - `category_id` string — Promotion tier category ID.
          - `categories` Category[]
            - `id` string, required — Unique category ID assigned by Voucherify.
            - `name` string, required — Category name.
            - `hierarchy` integer, required — Category hierarchy. Categories with lower hierarchy are processed before categories with higher hierarchy value.
            - `object` 'category', required — The type of the object represented by the JSON. This object stores information about the category.
            - `created_at` string, date-time, required — Timestamp representing the date and time when the category was created. The value is shown in the ISO 8601 format.
            - `updated_at` string, date-time — Timestamp representing the date and time when the category was updated. The value is shown in the ISO 8601 format.
        - `reward` RedemptionRewardResult
          - `customer` SimpleCustomer, required — Simplified customer data.
            - `id` string — Unique identifier of an existing customer. It is assigned by Voucherify.
            - `name` string — Customer's first and last name.
            - `email` string — Customer's email address.
            - `source_id` string — A unique identifier of the customer. It can be a customer ID or email from a CRM system, database, or a third-party service.
            - `metadata` object — A set of custom key/value pairs that are attached to the customer. It stores all custom attributes assigned to the customer.
            - `object` 'customer' — The type of the object represented by JSON.
          - `assignment_id` string, nullable, required — Unique reward assignment ID assigned by Voucherify.
          - `voucher` Voucher, required — This is an object representing a voucher.
            - `id` string — Assigned by the Voucherify API, identifies the voucher.
            - `code` string — A code that identifies a voucher. Pattern can use all letters of the English alphabet, Arabic numerals, and special characters.
            - `campaign` string — A unique campaign name, identifies the voucher's parent campaign.
            - `campaign_id` string — Assigned by the Voucherify API, identifies the voucher's parent campaign.
            - `category` string — Tag defining the category that this voucher belongs to. Useful when listing vouchers using the List Vouchers endpoint.
            - `category_id` string — Unique category ID assigned by Voucherify.
            - `type` 'GIFT_VOUCHER' | 'DISCOUNT_VOUCHER' | 'LOYALTY_CARD' — Defines the type of the voucher.
            - `discount` union — Contains information about discount.
              - …
            - `gift` object — Object representing gift parameters. Child attributes are present only if `type` is `GIFT_VOUCHER`. Defaults to `null`.
              - …
            - `loyalty_card` object — Object representing loyalty card parameters. Child attributes are present only if `type` is `LOYALTY_CARD`. Defaults to `null`.
              - …
            - `start_date` string, date-time — Activation timestamp defines when the code starts to be active in ISO 8601 format. Voucher is *inactive before* this date.
            - `expiration_date` string, date-time — Expiration timestamp defines when the code expires in ISO 8601 format. Voucher is *inactive after* this date.
            - `validity_timeframe` ValidityTimeframe — 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`.
              - …
            - `validity_day_of_week` integer[] — Integer array corresponding to the particular days of the week in which the voucher is valid. - `0` Sunday - `1` Monday - `2` Tuesday - `3` Wednesday - `4` Thursday - `5` Friday - `6` Saturday
            - `validity_hours` ValidityHours — Determines the hours of validity, e.g. to create a happy hours scenario.
              - …
            - `active` boolean, nullable — A flag to toggle the voucher on or off. You can disable a voucher even though it's within the active period defined by the `start_date` and `expiration_date`. - `true` indicates an *active* voucher - `false` indicates an *inactive* voucher
            - `additional_info` string — An optional field to keep any extra textual information about the code such as a code description and details.
            - `metadata` object — The metadata object stores all custom attributes assigned to the code. A set of key/value pairs that you can attach to a voucher object. It can be useful for storing additional information about the voucher in a structured format.
            - `assets` VoucherAssets — Stores links to images of QR and barcode that correspond to an encrypted voucher code.
              - …
            - `is_referral_code` boolean, nullable — Flag indicating whether this voucher is a referral code; `true` for campaign type `REFERRAL_PROGRAM`.
            - `created_at` string, date-time — Timestamp representing the date and time when the voucher was created. The value is shown in the ISO 8601 format.
            - `updated_at` string, date-time — Timestamp representing the date and time when the voucher was last updated in ISO 8601 format.
            - `holder_id` string — Unique customer identifier of the redeemable holder. It equals to the customer ID assigned by Voucherify.
            - `referrer_id` string — Unique identifier of the referring person.
            - `object` string — The type of the object represented by JSON. Default is `voucher`.
            - `publish` object — Stores a summary of publication events: an event counter and endpoint to return details of each event. Publication is an assignment of a code to a customer, e.g. through a distribution.
              - …
            - `redemption` object — Stores a summary of redemptions that have been applied to the voucher.
              - …
            - `categories` Category[] — Contains details about the category.
              - …
            - `validation_rules_assignments` ValidationRulesAssignmentsList — List of Validation Rules Assignments
              - …
          - `product` Product, required — This is an object representing a product. This entity should be used to map product items from your inventory management system. The aim of products is to build which reflect product-specific campaigns.
            - `id` string, required — Unique product ID assigned by Voucherify.
            - `source_id` string, nullable, required — Unique product source ID.
            - `name` string, nullable, required — Unique user-defined product name.
            - `price` integer, nullable, required — Unit price. It is represented by a value multiplied by 100 to accurately reflect 2 decimal places, such as `$100.00` being expressed as `10000`.
            - `attributes` string[], required — A list of product attributes whose values you can customize for given SKUs: `["color","size","ranking"]`. Each child SKU can have a unique value for a given attribute.
            - `metadata` object, required — The metadata object stores all custom attributes assigned to the product. A set of key/value pairs that you can attach to a product object. It can be useful for storing additional information about the product in a structured format. It can be used to create product collections.
            - `image_url` string, nullable — The HTTPS URL pointing to the .png or .jpg file that will be used to render the product image.
            - `created_at` string, date-time — Timestamp representing the date and time when the product was created. The value is shown in the ISO 8601 format.
            - `updated_at` string, date-time, nullable — Timestamp representing the date and time when the product was updated. The value is shown in the ISO 8601 format.
            - `object` 'product', required — The type of the object represented by JSON. This object stores information about the product.
            - `skus` SkusListForProduct — Contains information about child SKUs.
              - …
          - `sku` Sku, required — This is an object representing a product SKU.
            - `id` string, required — A unique identifier that represents the SKU and is assigned by Voucherify.
            - `source_id` string, nullable, required — A unique SKU identifier from your inventory system.
            - `product_id` string, required — The parent product's unique ID.
            - `sku` string, nullable, required — Unique user-defined SKU name.
            - `price` integer, nullable, required — Unit price. It is represented by a value multiplied by 100 to accurately reflect 2 decimal places, such as `$100.00` being expressed as `10000`.
            - `currency` string, nullable — SKU price currency.
            - `attributes` object, required — The attributes object stores values for all custom attributes inherited by the SKU from the parent product. A set of key/value pairs that are attached to a SKU object and are unique to each SKU within a product family.
            - `image_url` string, nullable, required — The HTTPS URL pointing to the .png or .jpg file that will be used to render the SKU image.
            - `metadata` object, required — The metadata object stores all custom attributes assigned to the SKU. A set of key/value pairs that you can attach to a SKU object. It can be useful for storing additional information about the SKU in a structured format. It can be used to create product collections.
            - `created_at` string, date-time, required — Timestamp representing the date and time when the SKU was created. The value is shown in the ISO 8601 format.
            - `updated_at` string, date-time, nullable, required — Timestamp representing the date and time when the SKU was updated. The value is shown in the ISO 8601 format.
            - `object` 'sku', required — The type of the object represented by JSON. This object stores information about the `SKU`.
          - `loyalty_tier_id` string, nullable, required — Unique loyalty tier ID assigned by Voucherify.
          - `id` string — Unique reward ID.
          - `name` string — Name of the reward.
          - `object` 'reward' — The type of the object represented by the JSON
          - `created_at` string, date-time — Timestamp representing the date and time when the redemption was created. The value is shown in the ISO 8601 format.
          - `updated_at` string, date-time — Timestamp in ISO 8601 format indicating when the reward was updated.
          - `parameters` object — These are parameters representing a material reward.
            - `campaign` object — Defines the product redeemed as a reward.
              - …
            - `product` object — Defines the product redeemed as a reward.
              - …
            - `coin` object — Defines the ratio by mapping the number of loyalty points in `points_ratio` to a predefined cash amount in `exchange_ratio`.
              - …
          - `metadata` object — A set of custom key/value pairs that you can attach to a reward. The metadata object stores all custom attributes assigned to the reward.
          - `type` 'CAMPAIGN' | 'COIN' | 'MATERIAL' — Reward type.
        - `gift` object — Contains the amount subtracted from the gift card for the redemption.
          - `amount` integer — Amount subtracted from the gift card as a result of the redemption. The amount is expressed as the smallest currency unit (e.g. 100 cents for $1.00).
        - `loyalty_card` object — Contains the number of points subtracted from the loyalty card for the redemption.
          - `points` integer — Number of points subtracted from the loyalty card as a result of the redemption.
        - `voucher` object — This is an object representing a voucher holder.
          - `id` string — Assigned by the Voucherify API, identifies the voucher.
          - `code` string — A code that identifies a voucher. Pattern can use all letters of the English alphabet, Arabic numerals, and special characters.
          - `campaign` string — A unique campaign name, identifies the voucher's parent campaign.
          - `campaign_id` string — Assigned by the Voucherify API, identifies the voucher's parent campaign.
          - `category` string — Tag defining the category that this voucher belongs to. Useful when listing vouchers using the List Vouchers endpoint.
          - `category_id` string — Unique category ID assigned by Voucherify.
          - `type` 'GIFT_VOUCHER' | 'DISCOUNT_VOUCHER' | 'LOYALTY_CARD' — Defines the type of the voucher.
          - `discount` union — Contains information about discount.
            - object
              - …
            - object
              - …
            - object
              - …
            - object
              - …
            - object
              - …
          - `gift` object — Object representing gift parameters. Child attributes are present only if `type` is `GIFT_VOUCHER`. Defaults to `null`.
            - `amount` integer — Total gift card income over the lifetime of the card. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`.
            - `subtracted_amount` integer — Total amount of subtracted credits over the gift card lifetime. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`.
            - `balance` integer — Available funds. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`.
            - `effect` 'APPLY_TO_ORDER' | 'APPLY_TO_ITEMS' — Defines how the credits are applied to the customer's order.
          - `loyalty_card` object — Object representing loyalty card parameters. Child attributes are present only if `type` is `LOYALTY_CARD`. Defaults to `null`.
            - `points` integer — Total number of points added to the loyalty card over its lifespan.
            - `balance` integer — Points available for reward redemption. This is calculated as follows: `balance` = `points` - `expired_points` - `subtracted_points` - `redemption.redeemed_points`.
            - `next_expiration_date` string, date — The next closest date when the next set of points are due to expire.
            - `next_expiration_points` integer — The amount of points that are set to expire next.
            - `pending_points` integer — Shows the number of pending points that will be added to the loyalty card when they are activated automatically or manually.
            - `expired_points` integer — Shows the total number of expired points over the lifetime of the loyalty card.
            - `subtracted_points` integer — Shows the total number of subtracted points over the lifetime of the loyalty card.
          - `start_date` string, date-time — Activation timestamp defines when the code starts to be active in ISO 8601 format. Voucher is *inactive before* this date.
          - `expiration_date` string, date-time — Expiration timestamp defines when the code expires in ISO 8601 format. Voucher is *inactive after* this date.
          - `validity_timeframe` ValidityTimeframe — 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`.
            - `duration` string — Defines the amount of time an earning rule will be active in ISO 8601 format. For example, an earning rule with a `duration` of `PT1H` will be valid for a duration of one hour.
            - `interval` string — Defines the intervening time between two time points in ISO 8601 format, expressed as a duration. For example, an earning rule with an `interval` of `P2D` will be valid every other day.
          - `validity_day_of_week` integer[] — Integer array corresponding to the particular days of the week in which the voucher is valid. - `0` Sunday - `1` Monday - `2` Tuesday - `3` Wednesday - `4` Thursday - `5` Friday - `6` Saturday
          - `validity_hours` ValidityHours — Determines the hours of validity, e.g. to create a happy hours scenario.
            - `daily` object[] — Defines the recurring period(s) when the resource is active. The periods should not overlap.
              - …
          - `active` boolean, nullable — A flag to toggle the voucher on or off. You can disable a voucher even though it's within the active period defined by the `start_date` and `expiration_date`. - `true` indicates an *active* voucher - `false` indicates an *inactive* voucher
          - `additional_info` string — An optional field to keep any extra textual information about the code such as a code description and details.
          - `metadata` object — The metadata object stores all custom attributes assigned to the code. A set of key/value pairs that you can attach to a voucher object. It can be useful for storing additional information about the voucher in a structured format.
          - `assets` VoucherAssets — Stores links to images of QR and barcode that correspond to an encrypted voucher code.
            - `qr` object — Stores Quick Response (QR) representation of encrypted code.
              - …
            - `barcode` object — Stores barcode representation of encrypted code.
              - …
          - `is_referral_code` boolean, nullable — Flag indicating whether this voucher is a referral code; `true` for campaign type `REFERRAL_PROGRAM`.
          - `created_at` string, date-time — Timestamp representing the date and time when the voucher was created. The value is shown in the ISO 8601 format.
          - `updated_at` string, date-time — Timestamp representing the date and time when the voucher was last updated in ISO 8601 format.
          - `holder_id` string — Unique customer identifier of the redeemable holder. It equals to the customer ID assigned by Voucherify.
          - `referrer_id` string — Unique identifier of the referring person.
          - `object` string — The type of the object represented by JSON. Default is `voucher`.
          - `publish` object — Stores a summary of publication events: an event counter and endpoint to return details of each event. Publication is an assignment of a code to a customer, e.g. through a distribution.
            - `object` string — The type of the object represented is by default `list`. To get this list, you need to make a call to the endpoint returned in the `url` attribute.
            - `count` integer — Publication events counter.
            - `url` string — The endpoint where this list of publications can be accessed using a **GET** method. `/v1/vouchers/{voucher_code}/publications`
          - `redemption` object — Stores a summary of redemptions that have been applied to the voucher.
            - `quantity` integer — How many times a voucher can be redeemed. A `null` value means unlimited.
            - `redeemed_quantity` integer — How many times a voucher has already been redeemed.
            - `redeemed_points` integer — Total loyalty points redeemed.
            - `object` string — The type of the object represented is by default `list`. To get this list, you need to make a call to the endpoint returned in the url attribute.
            - `url` string — The endpoint where this list of redemptions can be accessed using a **GET** method. `/v1/vouchers/{voucher_code}/redemptions`
          - `categories` Category[] — Contains details about the category.
            - `id` string, required — Unique category ID assigned by Voucherify.
            - `name` string, required — Category name.
            - `hierarchy` integer, required — Category hierarchy. Categories with lower hierarchy are processed before categories with higher hierarchy value.
            - `object` 'category', required — The type of the object represented by the JSON. This object stores information about the category.
            - `created_at` string, date-time, required — Timestamp representing the date and time when the category was created. The value is shown in the ISO 8601 format.
            - `updated_at` string, date-time — Timestamp representing the date and time when the category was updated. The value is shown in the ISO 8601 format.
          - `validation_rules_assignments` ValidationRulesAssignmentsList — List of Validation Rules Assignments
            - `object` 'list', required — The type of the object represented by JSON. This object stores information about validation rules assignments.
            - `data_ref` 'data', required — Identifies the name of the attribute that contains the array of validation rules assignments.
            - `data` BusValRuleAssignment[], required — Contains array of validation rules assignments.
              - …
            - `total` integer, required — Total number of validation rules assignments.
          - `holder` SimpleCustomer — Simplified customer data.
            - `id` string — Unique identifier of an existing customer. It is assigned by Voucherify.
            - `name` string — Customer's first and last name.
            - `email` string — Customer's email address.
            - `source_id` string — A unique identifier of the customer. It can be a customer ID or email from a CRM system, database, or a third-party service.
            - `metadata` object — A set of custom key/value pairs that are attached to the customer. It stores all custom attributes assigned to the customer.
            - `object` 'customer' — The type of the object represented by JSON.
      - RedemptionRollback — This is an object representing a redemption rollback.
        - `id` string, required — Unique identifier of the redemption rollback.
        - `object` 'redemption_rollback', required — The type of the object represented by the JSON
        - `date` string, date-time, required — Timestamp representing the date and time when the object was created. The value is shown in the ISO 8601 format.
        - `customer_id` string, nullable, required — Unique customer ID of the redeeming customer.
        - `tracking_id` string, nullable, required — Hashed customer source ID.
        - `metadata` object, nullable, required — The metadata object stores all custom attributes assigned to the redemption.
        - `amount` integer — For gift cards, this represents the number of the credits restored to the card in the rolledback redemption. The number is a negative integer in the smallest currency unit, e.g. -100 cents for $1.00 added back to the card. For loyalty cards, this represents the number of loyalty points restored to the card in the rolledback redemption. The number is a negative integer.
        - `redemption` string, nullable, required — Unique redemption ID of the parent redemption.
        - `reason` string — System generated cause for the redemption being invalid in the context of the provided parameters.
        - `result` 'SUCCESS' | 'FAILURE', required — Redemption result.
        - `status` 'SUCCEEDED' | 'FAILED', required — Redemption status.
        - `failure_code` string — If the result is `FAILURE`, this parameter will provide a generic reason as to why the redemption failed.
        - `failure_message` string — If the result is `FAILURE`, this parameter will provide a more expanded reason as to why the redemption failed.
        - `order` object, nullable, required — Order information.
          - `id` string — Unique ID assigned by Voucherify of an existing order that will be linked to the redemption of this request.
          - `source_id` string, nullable — Unique source ID of an existing order that will be linked to the redemption of this request.
          - `status` 'CREATED' | 'PAID' | 'CANCELED' | 'FULFILLED' — The order status.
          - `amount` integer — This is the sum of the order items' amounts. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `initial_amount` integer — This is the sum of the order items' amounts before any discount or other effect (e.g. add missing units) is applied. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `discount_amount` integer — Sum of all order-level discounts applied to the order. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `items_discount_amount` integer — Sum of all product-specific discounts applied to the order. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `total_discount_amount` integer — Sum of all order-level AND all product-specific discounts applied to the order. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `total_amount` integer — Order amount after undoing all the discounts through the rollback redemption. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `applied_discount_amount` integer — This field shows the order-level discount applied. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00).
          - `items_applied_discount_amount` integer — Sum of all product-specific discounts applied in a particular request. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00). `sum(items, i => i.applied_discount_amount)`
          - `total_applied_discount_amount` integer — Sum of all order-level AND all product-specific discounts applied in a particular request. It is expressed as an integer in the smallest currency unit (e.g. 100 cents for $1.00). `total_applied_discount_amount` = `applied_discount_amount` + `items_applied_discount_amount`
          - `metadata` object — A set of custom key/value pairs that you can attach to an order. It can be useful for storing additional information about the order in a structured format. It can be used to define business validation rules or discount formulas.
          - `object` 'order' — The type of the object represented by JSON.
          - `created_at` string, date-time — Timestamp representing the date and time when the order was created. The value is shown in the ISO 8601 format.
          - `updated_at` string, date-time, nullable — Timestamp representing the date and time when the order was last updated in ISO 8601 format.
          - `customer_id` string, nullable — Unique customer identifier of the customer making the purchase. The ID is assigned by Voucherify.
          - `referrer_id` string, nullable — Unique referrer ID.
          - `customer` CustomerId
            - `id` string, required — A unique identifier of an existing customer.
            - `object` 'customer', required — The type of the object represented by JSON.
          - `referrer` ReferrerId
            - `id` string, required — A unique identifier of an existing customer.
            - `object` 'customer', required — The type of the object represented by JSON.
          - `redemptions` object
          - `items` OrderCalculatedItem[] — Array of items applied to the order. It can include up to 500 items.
            - `id` string — Unique identifier of the order line item.
            - `sku_id` string — Unique identifier of the SKU. It is assigned by Voucherify.
            - `product_id` string — Unique identifier of the product. It is assigned by Voucherify.
            - `related_object` 'product' | 'sku' — Used along with the source_id property, can be set to either sku or product.
            - `source_id` string — The merchant's product/SKU ID (if it is different from the Voucherify product/SKU ID). It is useful in the integration between multiple systems. It can be an ID from an eCommerce site, a database, or a third-party service.
            - `quantity` integer — The quantity of the particular item in the cart.
            - `discount_quantity` integer — Number of dicounted items.
            - `initial_quantity` integer — A positive integer in the smallest unit quantity representing the total amount of the order; this is the sum of the order items' quantity.
            - `amount` integer — The total amount of the order item (price * quantity).
            - `discount_amount` integer — Sum of all order-item-level discounts applied to the order.
            - `applied_discount_amount` integer — This field shows the order-level discount applied.
            - `applied_discount_quantity` integer — Number of the discounted items applied in the transaction.
            - `applied_quantity` integer — Quantity of items changed by the application of a new quantity items. It can be positive when an item is added or negative if an item is replaced.
            - `applied_quantity_amount` integer — Amount for the items changed by the application of a new quantity items. It can be positive when an item is added or negative if an item is replaced.
            - `initial_amount` integer — A positive integer in the smallest currency unit (e.g. 100 cents for $1.00) representing the total amount of the order. This is the sum of the order items' amounts.
            - `price` integer — Unit price of an item. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`.
            - `subtotal_amount` integer — Final order item amount after the applied item-level discount. If there are no item-level discounts applied, this item is equal to the `amount`. `subtotal_amount`=`amount`-`applied_discount_amount`
            - `product` object — An object containing details of the related product.
              - …
            - `sku` object — An object containing details of the related SKU.
              - …
            - `object` 'order_item', required — The type of the object represented by JSON.
            - `metadata` object — A set of custom key/value pairs that you can attach to an item object. It can be useful for storing additional information about the item in a structured format. It can be used to define business validation rules or discount formulas.
        - `channel` object, required — Defines the details of the channel through which the redemption was issued.
          - `channel_id` string — Unique identifier of the channel which was used by the user performing the redemption rollback. This is either a user ID from the user using the Voucherify Dashboard or an X-APP-Id of a user using the API.
          - `channel_type` 'USER' | 'API' — The source of the channel for the redemption. A `USER` corresponds to the Voucherify Dashboard and an `API` corresponds to the API.
        - `customer` SimpleCustomer, required — Simplified customer data.
          - `id` string — Unique identifier of an existing customer. It is assigned by Voucherify.
          - `name` string — Customer's first and last name.
          - `email` string — Customer's email address.
          - `source_id` string — A unique identifier of the customer. It can be a customer ID or email from a CRM system, database, or a third-party service.
          - `metadata` object — A set of custom key/value pairs that are attached to the customer. It stores all custom attributes assigned to the customer.
          - `object` 'customer' — The type of the object represented by JSON.
        - `related_object_type` 'voucher' | 'promotion_tier' | 'redemption', required — Defines the related object.
        - `related_object_id` string, required — Unique identifier of the related object. It is assigned by Voucherify, i.e. `v_lfZi4rcEGe0sN9gmnj40bzwK2FH6QUno` for a voucher.
        - `voucher` Voucher — This is an object representing a voucher.
          - `id` string — Assigned by the Voucherify API, identifies the voucher.
          - `code` string — A code that identifies a voucher. Pattern can use all letters of the English alphabet, Arabic numerals, and special characters.
          - `campaign` string — A unique campaign name, identifies the voucher's parent campaign.
          - `campaign_id` string — Assigned by the Voucherify API, identifies the voucher's parent campaign.
          - `category` string — Tag defining the category that this voucher belongs to. Useful when listing vouchers using the List Vouchers endpoint.
          - `category_id` string — Unique category ID assigned by Voucherify.
          - `type` 'GIFT_VOUCHER' | 'DISCOUNT_VOUCHER' | 'LOYALTY_CARD' — Defines the type of the voucher.
          - `discount` union — Contains information about discount.
            - object
              - …
            - object
              - …
            - object
              - …
            - object
              - …
            - object
              - …
          - `gift` object — Object representing gift parameters. Child attributes are present only if `type` is `GIFT_VOUCHER`. Defaults to `null`.
            - `amount` integer — Total gift card income over the lifetime of the card. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`.
            - `subtracted_amount` integer — Total amount of subtracted credits over the gift card lifetime. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`.
            - `balance` integer — Available funds. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`.
            - `effect` 'APPLY_TO_ORDER' | 'APPLY_TO_ITEMS' — Defines how the credits are applied to the customer's order.
          - `loyalty_card` object — Object representing loyalty card parameters. Child attributes are present only if `type` is `LOYALTY_CARD`. Defaults to `null`.
            - `points` integer — Total number of points added to the loyalty card over its lifespan.
            - `balance` integer — Points available for reward redemption. This is calculated as follows: `balance` = `points` - `expired_points` - `subtracted_points` - `redemption.redeemed_points`.
            - `next_expiration_date` string, date — The next closest date when the next set of points are due to expire.
            - `next_expiration_points` integer — The amount of points that are set to expire next.
            - `pending_points` integer — Shows the number of pending points that will be added to the loyalty card when they are activated automatically or manually.
            - `expired_points` integer — Shows the total number of expired points over the lifetime of the loyalty card.
            - `subtracted_points` integer — Shows the total number of subtracted points over the lifetime of the loyalty card.
          - `start_date` string, date-time — Activation timestamp defines when the code starts to be active in ISO 8601 format. Voucher is *inactive before* this date.
          - `expiration_date` string, date-time — Expiration timestamp defines when the code expires in ISO 8601 format. Voucher is *inactive after* this date.
          - `validity_timeframe` ValidityTimeframe — 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`.
            - `duration` string — Defines the amount of time an earning rule will be active in ISO 8601 format. For example, an earning rule with a `duration` of `PT1H` will be valid for a duration of one hour.
            - `interval` string — Defines the intervening time between two time points in ISO 8601 format, expressed as a duration. For example, an earning rule with an `interval` of `P2D` will be valid every other day.
          - `validity_day_of_week` integer[] — Integer array corresponding to the particular days of the week in which the voucher is valid. - `0` Sunday - `1` Monday - `2` Tuesday - `3` Wednesday - `4` Thursday - `5` Friday - `6` Saturday
          - `validity_hours` ValidityHours — Determines the hours of validity, e.g. to create a happy hours scenario.
            - `daily` object[] — Defines the recurring period(s) when the resource is active. The periods should not overlap.
              - …
          - `active` boolean, nullable — A flag to toggle the voucher on or off. You can disable a voucher even though it's within the active period defined by the `start_date` and `expiration_date`. - `true` indicates an *active* voucher - `false` indicates an *inactive* voucher
          - `additional_info` string — An optional field to keep any extra textual information about the code such as a code description and details.
          - `metadata` object — The metadata object stores all custom attributes assigned to the code. A set of key/value pairs that you can attach to a voucher object. It can be useful for storing additional information about the voucher in a structured format.
          - `assets` VoucherAssets — Stores links to images of QR and barcode that correspond to an encrypted voucher code.
            - `qr` object — Stores Quick Response (QR) representation of encrypted code.
              - …
            - `barcode` object — Stores barcode representation of encrypted code.
              - …
          - `is_referral_code` boolean, nullable — Flag indicating whether this voucher is a referral code; `true` for campaign type `REFERRAL_PROGRAM`.
          - `created_at` string, date-time — Timestamp representing the date and time when the voucher was created. The value is shown in the ISO 8601 format.
          - `updated_at` string, date-time — Timestamp representing the date and time when the voucher was last updated in ISO 8601 format.
          - `holder_id` string — Unique customer identifier of the redeemable holder. It equals to the customer ID assigned by Voucherify.
          - `referrer_id` string — Unique identifier of the referring person.
          - `object` string — The type of the object represented by JSON. Default is `voucher`.
          - `publish` object — Stores a summary of publication events: an event counter and endpoint to return details of each event. Publication is an assignment of a code to a customer, e.g. through a distribution.
            - `object` string — The type of the object represented is by default `list`. To get this list, you need to make a call to the endpoint returned in the `url` attribute.
            - `count` integer — Publication events counter.
            - `url` string — The endpoint where this list of publications can be accessed using a **GET** method. `/v1/vouchers/{voucher_code}/publications`
          - `redemption` object — Stores a summary of redemptions that have been applied to the voucher.
            - `quantity` integer — How many times a voucher can be redeemed. A `null` value means unlimited.
            - `redeemed_quantity` integer — How many times a voucher has already been redeemed.
            - `redeemed_points` integer — Total loyalty points redeemed.
            - `object` string — The type of the object represented is by default `list`. To get this list, you need to make a call to the endpoint returned in the url attribute.
            - `url` string — The endpoint where this list of redemptions can be accessed using a **GET** method. `/v1/vouchers/{voucher_code}/redemptions`
          - `categories` Category[] — Contains details about the category.
            - `id` string, required — Unique category ID assigned by Voucherify.
            - `name` string, required — Category name.
            - `hierarchy` integer, required — Category hierarchy. Categories with lower hierarchy are processed before categories with higher hierarchy value.
            - `object` 'category', required — The type of the object represented by the JSON. This object stores information about the category.
            - `created_at` string, date-time, required — Timestamp representing the date and time when the category was created. The value is shown in the ISO 8601 format.
            - `updated_at` string, date-time — Timestamp representing the date and time when the category was updated. The value is shown in the ISO 8601 format.
          - `validation_rules_assignments` ValidationRulesAssignmentsList — List of Validation Rules Assignments
            - `object` 'list', required — The type of the object represented by JSON. This object stores information about validation rules assignments.
            - `data_ref` 'data', required — Identifies the name of the attribute that contains the array of validation rules assignments.
            - `data` BusValRuleAssignment[], required — Contains array of validation rules assignments.
              - …
            - `total` integer, required — Total number of validation rules assignments.
        - `promotion_tier` PromotionTier — This is an object representing a promotion tier. Promotion tiers are always assigned to a campaign and cannot be used standalone.
          - `id` string — Unique promotion tier ID.
          - `created_at` string, date-time — Timestamp representing the date and time when the promotion tier was created. The value is shown in the ISO 8601 format.
          - `updated_at` string, date-time — Timestamp representing the date and time when the promotion tier was updated. The value is shown in the ISO 8601 format.
          - `name` string — Name of the promotion tier.
          - `banner` string — Text to be displayed to your customers on your website.
          - `action` object — Contains details about the discount applied by the promotion tier.
            - `discount` union — Contains information about discount.
              - …
          - `metadata` object — The metadata object stores all custom attributes assigned to the promotion tier. A set of key/value pairs that you can attach to a promotion tier object. It can be useful for storing additional information about the promotion tier in a structured format.
          - `hierarchy` integer — The promotions hierarchy defines the order in which the discounts from different tiers will be applied to a customer's order. If a customer qualifies for discounts from more than one tier, discounts will be applied in the order defined in the hierarchy.
          - `promotion_id` string — Promotion unique ID.
          - `campaign` object — Contains details about promotion tier's parent campaign.
            - `id` string — Unique campaign ID.
            - `start_date` string, date-time — Activation timestamp defines when the campaign starts to be active in ISO 8601 format. Campaign is *inactive before* this date.
            - `expiration_date` string, date-time — Expiration timestamp defines when the campaign expires in ISO 8601 format. Campaign is *inactive after* this date.
            - `validity_timeframe` ValidityTimeframe — 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`.
              - …
            - `validity_day_of_week` integer[] — Integer array corresponding to the particular days of the week in which the voucher is valid. - `0` Sunday - `1` Monday - `2` Tuesday - `3` Wednesday - `4` Thursday - `5` Friday - `6` Saturday
            - `validity_hours` ValidityHours — Determines the hours of validity, e.g. to create a happy hours scenario.
              - …
            - `active` boolean — A flag indicating whether the campaign is active or not active. A campaign can be disabled even though it's within the active period defined by the `start_date` and `expiration_date` using the [Disable Campaign](/api-reference/disable-campaign) endpoint. - `true` indicates an *active* campaign - `false` indicates an *inactive* campaign
            - `category_id` string — Unique category ID that this campaign belongs to.
            - `object` string — The type of the object represented by the campaign object. This object stores information about the campaign.
          - `campaign_id` string — Promotion tier's parent campaign's unique ID.
          - `active` boolean — A flag to toggle the promotion tier on or off. You can disable a promotion tier even though it's within the active period defined by the `start_date` and `expiration_date`. - `true` indicates an *active* promotion tier - `false` indicates an *inactive* promotion tier
          - `start_date` string, date-time — Activation timestamp defines when the promotion tier starts to be active in ISO 8601 format. Promotion tier is *inactive before* this date.
          - `expiration_date` string, date-time — Activation timestamp defines when the promotion tier expires in ISO 8601 format. Promotion tier is *inactive after* this date.
          - `validity_timeframe` ValidityTimeframe — 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`.
            - `duration` string — Defines the amount of time an earning rule will be active in ISO 8601 format. For example, an earning rule with a `duration` of `PT1H` will be valid for a duration of one hour.
            - `interval` string — Defines the intervening time between two time points in ISO 8601 format, expressed as a duration. For example, an earning rule with an `interval` of `P2D` will be valid every other day.
          - `validity_day_of_week` integer[] — Integer array corresponding to the particular days of the week in which the voucher is valid. - `0` Sunday - `1` Monday - `2` Tuesday - `3` Wednesday - `4` Thursday - `5` Friday - `6` Saturday
          - `validity_hours` ValidityHours — Determines the hours of validity, e.g. to create a happy hours scenario.
            - `daily` object[] — Defines the recurring period(s) when the resource is active. The periods should not overlap.
              - …
          - `summary` object — Contains statistics about promotion tier redemptions and orders.
            - `redemptions` object — Contains statistics about promotion tier redemptions.
              - …
            - `orders` object — Contains statistics about orders related to the promotion tier.
              - …
          - `object` string — The type of the object represented by JSON. This object stores information about the promotion tier.
          - `validation_rule_assignments` ValidationRuleAssignmentsList — Validation Rule Assignments List
            - `object` string, required — The type of the object represented by JSON. This object stores information about validation rule assignments.
            - `data_ref` string, required — Identifies the name of the JSON property that contains the array of validation rule assignments.
            - `data` ValidationRuleAssignment[], required — A dictionary that contains an array of validation rule assignments.
              - …
            - `total` integer, required — Total number of validation rule assignments.
          - `category_id` string — Promotion tier category ID.
          - `categories` Category[]
            - `id` string, required — Unique category ID assigned by Voucherify.
            - `name` string, required — Category name.
            - `hierarchy` integer, required — Category hierarchy. Categories with lower hierarchy are processed before categories with higher hierarchy value.
            - `object` 'category', required — The type of the object represented by the JSON. This object stores information about the category.
            - `created_at` string, date-time, required — Timestamp representing the date and time when the category was created. The value is shown in the ISO 8601 format.
            - `updated_at` string, date-time — Timestamp representing the date and time when the category was updated. The value is shown in the ISO 8601 format.
        - `reward` RedemptionRewardResult
          - `customer` SimpleCustomer, required — Simplified customer data.
            - `id` string — Unique identifier of an existing customer. It is assigned by Voucherify.
            - `name` string — Customer's first and last name.
            - `email` string — Customer's email address.
            - `source_id` string — A unique identifier of the customer. It can be a customer ID or email from a CRM system, database, or a third-party service.
            - `metadata` object — A set of custom key/value pairs that are attached to the customer. It stores all custom attributes assigned to the customer.
            - `object` 'customer' — The type of the object represented by JSON.
          - `assignment_id` string, nullable, required — Unique reward assignment ID assigned by Voucherify.
          - `voucher` Voucher, required — This is an object representing a voucher.
            - `id` string — Assigned by the Voucherify API, identifies the voucher.
            - `code` string — A code that identifies a voucher. Pattern can use all letters of the English alphabet, Arabic numerals, and special characters.
            - `campaign` string — A unique campaign name, identifies the voucher's parent campaign.
            - `campaign_id` string — Assigned by the Voucherify API, identifies the voucher's parent campaign.
            - `category` string — Tag defining the category that this voucher belongs to. Useful when listing vouchers using the List Vouchers endpoint.
            - `category_id` string — Unique category ID assigned by Voucherify.
            - `type` 'GIFT_VOUCHER' | 'DISCOUNT_VOUCHER' | 'LOYALTY_CARD' — Defines the type of the voucher.
            - `discount` union — Contains information about discount.
              - …
            - `gift` object — Object representing gift parameters. Child attributes are present only if `type` is `GIFT_VOUCHER`. Defaults to `null`.
              - …
            - `loyalty_card` object — Object representing loyalty card parameters. Child attributes are present only if `type` is `LOYALTY_CARD`. Defaults to `null`.
              - …
            - `start_date` string, date-time — Activation timestamp defines when the code starts to be active in ISO 8601 format. Voucher is *inactive before* this date.
            - `expiration_date` string, date-time — Expiration timestamp defines when the code expires in ISO 8601 format. Voucher is *inactive after* this date.
            - `validity_timeframe` ValidityTimeframe — 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`.
              - …
            - `validity_day_of_week` integer[] — Integer array corresponding to the particular days of the week in which the voucher is valid. - `0` Sunday - `1` Monday - `2` Tuesday - `3` Wednesday - `4` Thursday - `5` Friday - `6` Saturday
            - `validity_hours` ValidityHours — Determines the hours of validity, e.g. to create a happy hours scenario.
              - …
            - `active` boolean, nullable — A flag to toggle the voucher on or off. You can disable a voucher even though it's within the active period defined by the `start_date` and `expiration_date`. - `true` indicates an *active* voucher - `false` indicates an *inactive* voucher
            - `additional_info` string — An optional field to keep any extra textual information about the code such as a code description and details.
            - `metadata` object — The metadata object stores all custom attributes assigned to the code. A set of key/value pairs that you can attach to a voucher object. It can be useful for storing additional information about the voucher in a structured format.
            - `assets` VoucherAssets — Stores links to images of QR and barcode that correspond to an encrypted voucher code.
              - …
            - `is_referral_code` boolean, nullable — Flag indicating whether this voucher is a referral code; `true` for campaign type `REFERRAL_PROGRAM`.
            - `created_at` string, date-time — Timestamp representing the date and time when the voucher was created. The value is shown in the ISO 8601 format.
            - `updated_at` string, date-time — Timestamp representing the date and time when the voucher was last updated in ISO 8601 format.
            - `holder_id` string — Unique customer identifier of the redeemable holder. It equals to the customer ID assigned by Voucherify.
            - `referrer_id` string — Unique identifier of the referring person.
            - `object` string — The type of the object represented by JSON. Default is `voucher`.
            - `publish` object — Stores a summary of publication events: an event counter and endpoint to return details of each event. Publication is an assignment of a code to a customer, e.g. through a distribution.
              - …
            - `redemption` object — Stores a summary of redemptions that have been applied to the voucher.
              - …
            - `categories` Category[] — Contains details about the category.
              - …
            - `validation_rules_assignments` ValidationRulesAssignmentsList — List of Validation Rules Assignments
              - …
          - `product` Product, required — This is an object representing a product. This entity should be used to map product items from your inventory management system. The aim of products is to build which reflect product-specific campaigns.
            - `id` string, required — Unique product ID assigned by Voucherify.
            - `source_id` string, nullable, required — Unique product source ID.
            - `name` string, nullable, required — Unique user-defined product name.
            - `price` integer, nullable, required — Unit price. It is represented by a value multiplied by 100 to accurately reflect 2 decimal places, such as `$100.00` being expressed as `10000`.
            - `attributes` string[], required — A list of product attributes whose values you can customize for given SKUs: `["color","size","ranking"]`. Each child SKU can have a unique value for a given attribute.
            - `metadata` object, required — The metadata object stores all custom attributes assigned to the product. A set of key/value pairs that you can attach to a product object. It can be useful for storing additional information about the product in a structured format. It can be used to create product collections.
            - `image_url` string, nullable — The HTTPS URL pointing to the .png or .jpg file that will be used to render the product image.
            - `created_at` string, date-time — Timestamp representing the date and time when the product was created. The value is shown in the ISO 8601 format.
            - `updated_at` string, date-time, nullable — Timestamp representing the date and time when the product was updated. The value is shown in the ISO 8601 format.
            - `object` 'product', required — The type of the object represented by JSON. This object stores information about the product.
            - `skus` SkusListForProduct — Contains information about child SKUs.
              - …
          - `sku` Sku, required — This is an object representing a product SKU.
            - `id` string, required — A unique identifier that represents the SKU and is assigned by Voucherify.
            - `source_id` string, nullable, required — A unique SKU identifier from your inventory system.
            - `product_id` string, required — The parent product's unique ID.
            - `sku` string, nullable, required — Unique user-defined SKU name.
            - `price` integer, nullable, required — Unit price. It is represented by a value multiplied by 100 to accurately reflect 2 decimal places, such as `$100.00` being expressed as `10000`.
            - `currency` string, nullable — SKU price currency.
            - `attributes` object, required — The attributes object stores values for all custom attributes inherited by the SKU from the parent product. A set of key/value pairs that are attached to a SKU object and are unique to each SKU within a product family.
            - `image_url` string, nullable, required — The HTTPS URL pointing to the .png or .jpg file that will be used to render the SKU image.
            - `metadata` object, required — The metadata object stores all custom attributes assigned to the SKU. A set of key/value pairs that you can attach to a SKU object. It can be useful for storing additional information about the SKU in a structured format. It can be used to create product collections.
            - `created_at` string, date-time, required — Timestamp representing the date and time when the SKU was created. The value is shown in the ISO 8601 format.
            - `updated_at` string, date-time, nullable, required — Timestamp representing the date and time when the SKU was updated. The value is shown in the ISO 8601 format.
            - `object` 'sku', required — The type of the object represented by JSON. This object stores information about the `SKU`.
          - `loyalty_tier_id` string, nullable, required — Unique loyalty tier ID assigned by Voucherify.
          - `id` string — Unique reward ID.
          - `name` string — Name of the reward.
          - `object` 'reward' — The type of the object represented by the JSON
          - `created_at` string, date-time — Timestamp representing the date and time when the redemption was created. The value is shown in the ISO 8601 format.
          - `updated_at` string, date-time — Timestamp in ISO 8601 format indicating when the reward was updated.
          - `parameters` object — These are parameters representing a material reward.
            - `campaign` object — Defines the product redeemed as a reward.
              - …
            - `product` object — Defines the product redeemed as a reward.
              - …
            - `coin` object — Defines the ratio by mapping the number of loyalty points in `points_ratio` to a predefined cash amount in `exchange_ratio`.
              - …
          - `metadata` object — A set of custom key/value pairs that you can attach to a reward. The metadata object stores all custom attributes assigned to the reward.
          - `type` 'CAMPAIGN' | 'COIN' | 'MATERIAL' — Reward type.
        - `gift` object — Contains the amount returned to the gift card in the redemption rollback. It is expressed as a negative integer.
          - `amount` integer — Amount returned to the gift card as a result of the redemption rollback and expressed as a negative integer. The amount is expressed as the smallest currency unit (e.g. -100 cents for $1.00 returned).
        - `loyalty_card` object — Contains the number of points returned to the loyalty card in the reward redemption rollback. It is expressed as a negative integer.
          - `points` integer — Number of points being returned to the loyalty card for the reward redemption rollback. It is expressed as a negative integer.

---

[API](https://skmtc.net/voucherifyio/apis/voucherify-api-async-actions.md) · [All operations](https://skmtc.net/voucherifyio/apis/voucherify-api-async-actions/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/voucherifyio/voucherify-api-async-actions/revisions/4982266e0494/schema)
