diff --git a/reference/OpenAPI.json b/reference/OpenAPI.json index 246dd8f89..1aa9d901f 100644 --- a/reference/OpenAPI.json +++ b/reference/OpenAPI.json @@ -40043,1185 +40043,6 @@ ], "title": "Order Items" }, - "LoyaltiesGetPointsExpirationResponseBody": { - "title": "Loyalties Get Points Expiration Response Body", - "type": "object", - "properties": { - "object": { - "type": "string", - "pattern": "list", - "enum": [ - "list" - ], - "description": "The type of object represented by JSON. This object stores information about loyalty points expiration buckets in a dictionary." - }, - "data_ref": { - "type": "string", - "pattern": "data", - "enum": [ - "data" - ], - "description": "Identifies the name of the attribute that contains the array of loyalty points expiration bucket objects." - }, - "data": { - "type": "array", - "description": "Contains array of loyalty points expiration buckets.", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique loyalty points bucket ID." - }, - "voucher_id": { - "type": "string", - "description": "Unique parent loyalty card ID." - }, - "campaign_id": { - "type": "string", - "description": "\nUnique parent campaign ID." - }, - "bucket": { - "type": "object", - "required": [ - "total_points" - ], - "description": "Defines the number of points stored in the given loyalty points bucket.", - "properties": { - "total_points": { - "type": "integer", - "description": "Total number of points in the loyalty points bucket." - } - } - }, - "created_at": { - "type": "string", - "description": "Timestamp representing the date and time when the loyalty points bucket object was created in ISO 8601 format.", - "format": "date-time" - }, - "status": { - "type": "string", - "description": "Loyalty points bucket point status." - }, - "expires_at": { - "type": "string", - "format": "date-time", - "description": "Date when the number of points defined in the bucket object are due to expire." - }, - "updated_at": { - "type": "string", - "format": "date-time", - "description": "Timestamp representing the date and time when the loyalty points bucket object was updated in ISO 8601 format." - }, - "object": { - "type": "string", - "pattern": "loyalty_points_bucket", - "enum": [ - "loyalty_points_bucket" - ], - "description": "The type of object represented by JSON. This object stores information about the loyalty points bucket." - } - }, - "required": [ - "id", - "voucher_id", - "campaign_id", - "bucket", - "created_at", - "status", - "expires_at", - "object" - ] - } - }, - "total": { - "type": "integer", - "description": "Total number of point expiration buckets." - } - }, - "required": [ - "object", - "data_ref", - "data", - "total" - ] - }, - "LoyaltiesListCardTransactionsResponseBody": { - "title": "Loyalties List Card Transactions Response Body", - "type": "object", - "properties": { - "object": { - "type": "string", - "pattern": "list", - "enum": [ - "list" - ], - "description": "The type of object represented by JSON." - }, - "data_ref": { - "type": "string", - "pattern": "data", - "enum": [ - "data" - ], - "description": "Identifies the name of the attribute that contains the array of transaction objects." - }, - "data": { - "type": "array", - "description": "A dictionary that contains an array of transactions. Each entry in the array is a separate transaction object.", - "items": { - "$ref": "#/components/schemas/LoyaltyCardTransaction" - } - }, - "has_more": { - "type": "boolean", - "description": "As query results are always limited (by the limit parameter), the has_more flag indicates whether there are more records for given filter parameters. This let's you know if you are able to run another request (with a different page or a different start date filter) to get more records returned in the results." - } - }, - "required": [ - "object", - "data_ref", - "data", - "has_more" - ] - }, - "LoyaltyCardTransactionsType": { - "type": "string", - "enum": [ - "POINTS_ACCRUAL", - "POINTS_CANCELLATION", - "POINTS_REDEMPTION", - "POINTS_REFUND", - "POINTS_ADDITION", - "POINTS_REMOVAL", - "POINTS_EXPIRATION", - "POINTS_TRANSFER_IN", - "POINTS_TRANSFER_OUT" - ] - }, - "SimpleLoyaltyVoucher": { - "title": "Simple Loyalty Voucher", - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "code": { - "type": "string" - }, - "loyalty_card": { - "type": "object", - "required": [ - "points", - "balance" - ], - "properties": { - "points": { - "type": "string" - }, - "balance": { - "type": "string" - }, - "next_expiration_date": { - "type": "string" - }, - "next_expiration_points": { - "type": "string" - } - } - }, - "type": { - "type": "string", - "enum": [ - "LOYALTY_CARD" - ] - }, - "campaign": { - "type": "string" - }, - "campaign_id": { - "type": "string" - }, - "is_referral_code": { - "type": "boolean" - }, - "holder_id": { - "type": "string" - }, - "referrer_id": { - "type": "string" - }, - "created_at": { - "type": "string" - }, - "object": { - "type": "string", - "pattern": "voucher", - "enum": [ - "voucher" - ] - } - }, - "required": [ - "id", - "code", - "loyalty_card", - "type", - "campaign", - "campaign_id", - "object" - ] - }, - "LoyaltyCardTransaction": { - "title": "Loyalty Card Transaction", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique transaction ID." - }, - "source_id": { - "type": [ - "string", - "null" - ], - "description": "The merchant’s transaction ID if it is different from the Voucherify transaction ID. It is really useful in case of an integration between multiple systems. It can be a transaction ID from a CRM system, database or 3rd-party service. In case of a redemption, this value is null." - }, - "voucher_id": { - "type": "string", - "description": "Unique voucher ID." - }, - "campaign_id": { - "type": "string", - "description": "Unqiue campaign ID of the voucher's parent campaign if it is part of campaign that generates bulk codes." - }, - "source": { - "type": [ - "string", - "null" - ], - "description": "The channel through which the transaction took place, whether through the API or the the Dashboard. In case of a redemption, this value is null." - }, - "reason": { - "type": [ - "string", - "null" - ], - "description": "Reason why the transaction occurred. In case of a redemption, this value is null." - }, - "type": { - "$ref": "#/components/schemas/LoyaltyCardTransactionsType", - "description": "Type of transaction." - }, - "details": { - "type": "object", - "description": "Contains the detailed information about the transaction.", - "properties": { - "balance": { - "type": "object", - "description": "Contains information on how the balance was affected by the transaction.", - "properties": { - "type": { - "type": "string", - "pattern": "loyalty_card", - "enum": [ - "loyalty_card" - ], - "description": "The type of voucher whose balance is being adjusted due to the transaction." - }, - "total": { - "type": "integer", - "description": "The available points prior to the transaction." - }, - "object": { - "type": "string", - "pattern": "balance", - "enum": [ - "balance" - ], - "description": "The type of object represented by the JSON." - }, - "points": { - "type": "integer", - "description": "The amount of points being used up in the transaction." - }, - "balance": { - "type": "integer", - "description": "The points balance on the loyalty card after the points in the transaction are subtracted from the loyalty card." - }, - "related_object": { - "type": "object", - "required": [ - "id", - "type" - ], - "description": "Defines the resource that is being modified with the values that are returned in the balance object.", - "properties": { - "id": { - "type": "string", - "description": "Identifies the voucher that is being modified, this is the ID that was assigned by the Voucherify API." - }, - "type": { - "type": "string", - "pattern": "voucher", - "enum": [ - "voucher" - ], - "description": "The object being modified, i.e. voucher." - } - } - } - }, - "required": [ - "type", - "total", - "object", - "points", - "balance", - "related_object" - ] - }, - "order": { - "type": "object", - "description": "Contains information about the original order.", - "properties": { - "id": { - "type": "string", - "description": "Unique order ID." - }, - "source_id": { - "type": "string", - "description": "The merchant’s order ID if it is different from the Voucherify order ID. It is really useful in case of integration between multiple systems. It can be an order ID from CRM, database or 3rd party service." - } - }, - "required": [ - "id", - "source_id" - ] - }, - "event": { - "type": "object", - "description": "Contains information about the event that triggers the point accrual.", - "properties": { - "id": { - "type": "string", - "description": "Unique event ID." - }, - "type": { - "type": "string", - "description": "Type of event." - } - }, - "required": [ - "id", - "type" - ] - }, - "earning_rule": { - "type": "object", - "description": "Contains information about the earning rule.", - "properties": { - "id": { - "type": "string", - "description": "Unique earning rule ID." - }, - "source": { - "type": "object", - "required": [ - "banner" - ], - "description": "Contains the custom earning rule name.", - "properties": { - "banner": { - "type": "string", - "description": "Name of the earning rule. This is displayed as a header for the earning rule in the Dashboard." - } - } - } - }, - "required": [ - "id", - "source" - ] - }, - "segment": { - "type": "object", - "description": "Contains information about the segment.", - "properties": { - "id": { - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "id", - "name" - ] - }, - "loyalty_tier": { - "type": "object", - "description": "Contains information about the loyalty tier.", - "properties": { - "id": { - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "id", - "name" - ] - }, - "redemption": { - "type": "object", - "description": "Contains information about the original redemption.", - "properties": { - "id": { - "type": "string", - "description": "Unique redemption ID." - } - }, - "required": [ - "id" - ] - }, - "rollback": { - "type": "object", - "description": "Contains information about the redemption rollback.", - "properties": { - "id": { - "type": "string", - "description": "Unique redemption rollback ID." - } - }, - "required": [ - "id" - ] - }, - "custom_event": { - "type": "object", - "description": "Contains information about the custom event that triggers the point accrual.", - "properties": { - "id": { - "type": "string", - "description": "Unique event ID." - }, - "type": { - "type": "string", - "description": "Type of custom event." - } - }, - "required": [ - "id", - "type" - ] - }, - "event_schema": { - "type": "object", - "description": "Contains information about the custom event metadata schema.", - "properties": { - "id": { - "type": "string", - "description": "Unique metadata schema ID." - }, - "name": { - "type": "string", - "description": "Type of custom event." - } - }, - "required": [ - "id", - "name" - ] - }, - "reward": { - "type": "object", - "description": "Contains information about the pay with points reward.", - "properties": { - "id": { - "type": "string", - "description": "Unique reward ID." - }, - "name": { - "type": "string", - "description": "Reward name." - } - }, - "required": [ - "id", - "name" - ] - }, - "source_voucher": { - "$ref": "#/components/schemas/SimpleLoyaltyVoucher", - "description": "Contains information on how the balance on the donor loyalty card was affected by the transaction." - }, - "destination_voucher": { - "$ref": "#/components/schemas/SimpleLoyaltyVoucher", - "description": "Contains information on how the balance on the receiving loyalty card was affected by the transaction." - } - } - }, - "related_transaction_id": { - "type": [ - "string", - "null" - ], - "description": "The related transaction ID on the receiving card." - }, - "created_at": { - "type": "string", - "format": "date-time", - "description": "Timestamp representing the date and time when the transaction was created in ISO 8601 format.\n\n" - } - }, - "required": [ - "id", - "source_id", - "voucher_id", - "campaign_id", - "source", - "reason", - "type", - "details", - "related_transaction_id", - "created_at" - ] - }, - "LoyaltyCardTransactionsFields": { - "type": "string", - "enum": [ - "id", - "campaign_id", - "voucher_id", - "type", - "source_id", - "reason", - "source", - "balance", - "amount", - "related_transaction_id", - "created_at", - "details" - ] - }, - "LoyaltiesExportCardTransactionsRequestBody": { - "title": "Loyalties Export Card Transactions Request Body", - "type": "object", - "properties": { - "order": { - "type": "string", - "enum": [ - "created_at", - "-created_at" - ], - "description": "How the export is filtered, where the dash - preceding a sorting option means sorting in a descending order." - }, - "fields": { - "type": "array", - "description": "Array of strings containing the data in the export. These fields define the headers in the CSV file.", - "items": { - "$ref": "#/components/schemas/LoyaltyCardTransactionsFields" - } - } - } - }, - "LoyaltiesExportCardTransactionsResponseBody": { - "title": "Loyalties Export Card Transactions Response Body", - "type": "object", - "description": "", - "properties": { - "id": { - "type": "string", - "description": "Unique export ID." - }, - "object": { - "type": "string", - "pattern": "export", - "enum": [ - "export" - ], - "description": "The type of object being represented. This object stores information about the export." - }, - "created_at": { - "type": "string", - "description": "Timestamp representing the date and time when the export was scheduled in ISO 8601 format.", - "format": "date-time" - }, - "status": { - "type": "string", - "pattern": "SCHEDULED", - "enum": [ - "SCHEDULED" - ], - "description": "Status of the export. Informs you whether the export has already been completed, i.e. indicates whether the file containing the exported data has been generated." - }, - "channel": { - "type": "string", - "description": "The channel through which the export was triggered." - }, - "exported_object": { - "type": "string", - "pattern": "voucher_transactions", - "enum": [ - "voucher_transactions" - ], - "description": "The type of exported object." - }, - "parameters": { - "type": "object", - "required": [ - "filters" - ], - "description": "List of available fields and filters that can be exported with loyalty card transactions along with the sorting order of the returned data.", - "properties": { - "order": { - "type": "string", - "description": "How the export is filtered, where the dash - preceding a sorting option means sorting in a descending order." - }, - "fields": { - "type": "array", - "description": "Array of strings containing the data in the export. These fields define the headers in the CSV file.\n\n`id`, `campaign_id`, `voucher_id`, `type`, `source_id`, `reason`, `source`, `balance`, `amount`, `related_transaction_id`, `created_at`, `details`", - "items": { - "$ref": "#/components/schemas/LoyaltyCardTransactionsFields" - } - }, - "filters": { - "type": "object", - "required": [ - "voucher_id" - ], - "description": "Filter condition.", - "properties": { - "voucher_id": { - "type": "object", - "required": [ - "conditions" - ], - "description": "Data filters used to narrow the data records to be returned in the result.", - "properties": { - "conditions": { - "type": "object", - "required": [ - "$in" - ], - "description": "Data filters used to narrow the data records to be returned in the result.", - "properties": { - "$in": { - "type": "array", - "minItems": 1, - "maxItems": 1, - "items": { - "type": "string", - "minLength": 1, - "maxLength": 1 - } - } - } - } - } - } - } - } - } - }, - "result": { - "type": "null", - "description": "Contains the URL of the CSV file." - }, - "user_id": { - "type": [ - "string", - "null" - ], - "description": "Identifies the specific user who initiated the export through the Voucherify Dashboard; returned when the channel value is WEBSITE." - } - }, - "required": [ - "id", - "object", - "created_at", - "status", - "channel", - "exported_object", - "parameters", - "result", - "user_id" - ] - }, - "LoyaltiesAddOrRemoveCardBalanceResponseBody": { - "title": "Loyalties Add Or Remove Card Balance Response Body", - "type": "object", - "description": "Response schema for adding or removing points from a loyalty card.", - "properties": { - "points": { - "type": "integer", - "description": "The incremental points removed or added to the current balance on the loyalty card." - }, - "total": { - "type": "integer", - "description": "The total of points accrued over the lifetime of the loyalty card." - }, - "balance": { - "type": "integer", - "minimum": 0, - "description": "The balance after adding/removing points." - }, - "type": { - "type": "string", - "enum": [ - "LOYALTY_CARD", - "GIFT_VOUCHER" - ], - "description": "The type of voucher being modified." - }, - "object": { - "type": "string", - "pattern": "balance", - "enum": [ - "balance" - ], - "description": "The type of object represented by JSON. Default is balance." - }, - "related_object": { - "type": "object", - "required": [ - "type", - "id" - ], - "description": "Defines the object that is being modified with the values that are returned in the balance object.", - "properties": { - "type": { - "type": "string", - "enum": [ - "voucher" - ], - "description": "The object being modified." - }, - "id": { - "type": "string", - "description": "Identifies the loyalty card that is being modified, this is the ID that was assigned by the Voucherify API." - } - } - }, - "operation_type": { - "type": "string", - "enum": [ - "MANUAL", - "AUTOMATIC" - ] - } - }, - "required": [ - "points", - "total", - "balance", - "type", - "object", - "related_object" - ] - }, - "LoyaltiesTransferPointsResponseBody": { - "title": "Loyalties Transfer Points Response Body", - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Assigned by the Voucherify API, identifies the voucher." - }, - "code": { - "type": "string", - "description": "A code that identifies a voucher. Pattern can use all letters of the English alphabet, Arabic numerals, and special characters." - }, - "campaign": { - "type": "string", - "description": "A unique campaign name, identifies the voucher's parent campaign." - }, - "campaign_id": { - "type": "string", - "description": "Assigned by the Voucherify API, identifies the voucher's parent campaign." - }, - "category": { - "type": [ - "string", - "null" - ], - "description": "Tag defining the category that this voucher belongs to. Useful when listing vouchers using the List Vouchers endpoint." - }, - "category_id": { - "type": [ - "string", - "null" - ], - "description": "Unique category ID assigned by Voucherify." - }, - "categories": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Category" - } - }, - "type": { - "type": "string", - "enum": [ - "LOYALTY_CARD" - ], - "description": "Defines the type of voucher." - }, - "loyalty_card": { - "type": "object", - "description": "Object representing loyalty card parameters. Child attributes are present only if type is LOYALTY_CARD.", - "required": [ - "points", - "balance" - ], - "properties": { - "points": { - "type": "integer", - "description": "Total points incurred over lifespan of loyalty card." - }, - "balance": { - "type": "integer", - "description": "Points available for reward redemption." - }, - "next_expiration_date": { - "type": "string", - "description": "The next closest date when the next set of points are due to expire." - }, - "next_expiration_points": { - "type": "integer", - "description": "The amount of points that are set to expire next." - } - } - }, - "start_date": { - "type": [ - "string", - "null" - ], - "description": "Activation timestamp defines when the code starts to be active in ISO 8601 format. Voucher is inactive before this date.", - "format": "date-time" - }, - "expiration_date": { - "type": [ - "string", - "null" - ], - "description": "Expiration timestamp defines when the code expires in ISO 8601 format. Voucher is inactive after this date.", - "format": "date-time" - }, - "validity_timeframe": { - "type": [ - "object", - "null" - ], - "description": "Set recurrent time periods when the voucher is valid. For example, valid for 1 hour every other day.start_date required when including the validity_timeframe.", - "properties": { - "interval": { - "type": "string", - "description": "Defines the amount of time the voucher will be active in ISO 8601 format. For example, a voucher with a duration of PT1H will be valid for a duration of one hour." - }, - "duration": { - "type": "string", - "description": "Defines the intervening time between two time points in ISO 8601 format, expressed as a duration. For example, a voucher with an interval of P2D will be active every other day." - } - } - }, - "validity_day_of_week": { - "type": [ - "array", - "null" - ], - "description": "Integer array corresponding to the particular days of the week in which the voucher is valid.\n\n- `0` Sunday\n- `1` Monday\n- `2` Tuesday\n- `3` Wednesday\n- `4` Thursday\n- `5` Friday\n- `6` Saturday", - "items": { - "type": "integer", - "minimum": 0, - "maximum": 6 - } - }, - "publish": { - "type": "object", - "description": "This object stores a summary of publish events: an events counter and an endpoint which can be called to return details of each event. A publication is required for loyalty cards and referral codes. This object gets updated whenever a voucher has been published. Publication means assigning a code to a particular customer. Typically, a publication is made by distributing your codes to your customers, e.g. through Export to MailChimp or publish voucher API method.", - "properties": { - "object": { - "type": "string", - "enum": [ - "list" - ], - "description": "The type of 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": { - "type": "integer", - "description": "Publication events counter." - }, - "entries": { - "type": "array", - "items": { - "type": "string" - } - }, - "url": { - "type": "string", - "description": "The endpoint where this list of publications can be accessed using a GET method. /v1/vouchers/{voucher_code}/publications" - } - }, - "required": [ - "object" - ] - }, - "redemption": { - "type": "object", - "description": "Stores a summary of redemptions that have been applied to the voucher.", - "properties": { - "quantity": { - "type": [ - "integer", - "null" - ], - "description": "How many times a voucher can be redeemed. A null value means unlimited." - }, - "redeemed_points": { - "type": "integer", - "description": "Total loyalty points redeemed." - }, - "redeemed_quantity": { - "type": "integer", - "description": "How many times a voucher has already been redeemed." - }, - "redemption_entries": { - "type": "array", - "items": { - "type": "string" - } - }, - "object": { - "type": "string", - "enum": [ - "list" - ], - "description": "The type of 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": { - "type": "string", - "description": "The endpoint where this list of redemptions can be accessed using a GET method. /v1/vouchers/{voucher_code}/redemptions" - } - }, - "required": [ - "quantity" - ] - }, - "active": { - "type": "string", - "description": "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.\n\n- `true` indicates an active voucher\n- `false` indicates an inactive voucher" - }, - "additional_info": { - "type": [ - "string", - "null" - ], - "description": "An optional field to keep any extra textual information about the code such as a code description and details." - }, - "metadata": { - "type": "object", - "description": "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": { - "type": "object", - "description": "Stores links to images of QR and barcode that correspond to an encrypted voucher code.", - "properties": { - "qr": { - "type": "object", - "description": "Stores Quick Response (QR) representation of encrypted code.", - "properties": { - "id": { - "type": "string", - "example": "U2FsdGVkX19ucFhvVmBVpVYG5KoswTsjSIaqoKg5L9ie4BK+t4pp7U7oFzjGJzj9q/bmuMOj9mEFiVKDMIkSaruKedMvHbKoPX5Sg+BaZk5QwXMf8k/OzSlOEVybpwSq+AiqPoNtjeuqtIgkDyvT6Q==", - "description": "Encrypted voucher code ID." - }, - "url": { - "type": "string", - "example": "https://dev.dl.voucherify.io/api/v1/assets/qr/U2FsdGVkX19ucFhvVmBVpVYG5KoswTsjSIaqoKg5L9ie4BK%2Bt4pp7U7oFzjGJzj9q%2FbmuMOj9mEFiVKDMIkSaruKedMvHbKoPX5Sg%2BBaZk5QwXMf8k%2FOzSlOEVybpwSq%2BAiqPoNtjeuqtIgkDyvT6Q%3D%3D", - "description": "URL to QR code \n\n*Optional:* Attach query parameters to base URL to customize the image of the encrypted voucher code. \n\n- `size`: integer value from `1` to `100` \n- `format`: string, either `png` (default) or `svg`" - } - } - }, - "barcode": { - "type": "object", - "description": "Stores barcode representation of encrypted code.", - "properties": { - "id": { - "type": "string", - "example": "U2FsdGVkX19eJhGfWwUrH9+tulBkON+AnMktic+N6CVWzZ9+fHVxuVx22WakrzxiWXy0skuvvEHSeZIw9HlgyIJ+kJ1iPdUKpyENuNYJKzoZlO0mmTf6WQM6/pFs61apEn9SJx32ttCF6d3oxKISQQ==", - "description": "Encrypted voucher code ID." - }, - "url": { - "type": "string", - "example": "https://dev.dl.voucherify.io/api/v1/assets/barcode/U2FsdGVkX19eJhGfWwUrH9%2BtulBkON%2BAnMktic%2BN6CVWzZ9%2BfHVxuVx22WakrzxiWXy0skuvvEHSeZIw9HlgyIJ%2BkJ1iPdUKpyENuNYJKzoZlO0mmTf6WQM6%2FpFs61apEn9SJx32ttCF6d3oxKISQQ%3D%3D", - "description": "URL to barcode \n\n*Optional:* Attach query parameters to base URL to customize the image of the encrypted voucher code. \n\n- `size`: integer value from `1` to `100` \n- `format`: string, either `png` (default) or `svg`" - } - } - } - } - }, - "is_referral_code": { - "type": "boolean", - "description": "Flag indicating whether this voucher is a referral code." - }, - "holder_id": { - "type": "string", - "description": "Unique customer ID of voucher owner." - }, - "updated_at": { - "type": "string", - "description": "Timestamp representing the date and time when the voucher was last updated in ISO 8601 format.", - "format": "date-time" - }, - "created_at": { - "type": "string", - "format": "date-time" - } - }, - "required": [ - "id", - "code", - "category", - "category_id", - "type", - "loyalty_card", - "start_date", - "expiration_date", - "validity_timeframe", - "validity_day_of_week", - "active", - "additional_info", - "metadata", - "is_referral_code", - "created_at" - ] - }, - "LoyaltiesTransferPoints": { - "title": "Loyalties Transfer Points", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Unique loyalty card code from which the user wants to transfer loyalty points (source)." - }, - "points": { - "type": "integer", - "description": "The number of loyalty points that the user wants to transfer to another loyalty card. The number of points cannot be higher than the current balance on the loyalty card (source)." - }, - "reason": { - "type": "string", - "description": "Reason for the transfer." - }, - "source_id": { - "type": "string", - "description": "The merchant’s transaction ID if it is different from the Voucherify transaction ID. It is really useful in case of an integration between multiple systems. It can be a transaction ID from a CRM system, database or 3rd-party service." - } - }, - "required": [ - "code", - "points", - "source_id" - ] - }, - "LoyaltiesTransferPointsRequestBody": { - "title": "Loyalties Transfer Points Request Body", - "type": "array", - "items": { - "$ref": "#/components/schemas/LoyaltiesTransferPoints" - } - }, - "LoyaltiesAddOrRemoveCardBalanceRequestBody": { - "title": "Loyalties Add Or Remove Card Balance Request Body", - "type": "object", - "properties": { - "points": { - "type": "integer", - "description": "Incremental balance to be added to/subtracted from the loyalty card.\n\n- To add points: 100\n- To subtract points, add a minus: -100" - }, - "expiration_type": { - "$ref": "#/components/schemas/PointsExpirationTypes", - "description": "Set the type of expiration for added points.\n\n`PROGRAM_RULES`: Inherit rules from campaign.\n`NON_EXPIRING`: Points never expire.\n`CUSTOM_DATE`: Points expire on a particular date. Requires expiration_date parameter." - }, - "expiration_date": { - "type": "string", - "format": "date-time", - "description": "Set expiration date for added points, i.e. `YYYY-MM-DD`. This parameter is required only when expiration_type is set to `CUSTOM_DATE`." - }, - "reason": { - "type": "string", - "description": "Reason for the transfer." - }, - "source_id": { - "type": "string", - "description": "The merchant’s transaction ID if it is different from the Voucherify transaction ID. It is really useful in case of an integration between multiple systems. It can be a transaction ID from a CRM system, database or 3rd-party service." - } - }, - "required": [ - "points" - ] - }, - "PointsExpirationTypes": { - "title": "Points Expiration Types", - "type": "string", - "enum": [ - "PROGRAM_RULES", - "CUSTOM_DATE", - "NON_EXPIRING" - ] - }, - "Category": { - "title": "Category", - "x-stoplight": { - "id": "4l87q60w8ta36" - }, - "type": "object", - "description": "This is an object representing a category.", - "properties": { - "id": { - "type": "string", - "description": "Unique category ID assigned by Voucherify." - }, - "name": { - "type": "string", - "description": "Category name." - }, - "hierarchy": { - "type": "integer", - "description": "Category hierarchy." - }, - "created_at": { - "type": "string", - "format": "date-time", - "description": "Timestamp representing the date and time when the category was created in ISO 8601 format." - }, - "updated_at": { - "type": "string", - "format": "date-time", - "description": "Timestamp representing the date and time when the category was updated in ISO 8601 format." - }, - "object": { - "type": "string", - "enum": [ - "category" - ], - "description": "The type of object represented by the JSON. This object stores information about the category." - } - }, - "required": [ - "id", - "name", - "hierarchy", - "created_at", - "object" - ] - }, "LoyaltiesListMemberRewardsRequestQuery": { "title": "Loyalties List Member Rewards Request Query", "type": "object", @@ -41251,109 +40072,6 @@ } } }, - "LoyaltiesGetPointsExpirationResponseBody": { - "title": "Loyalties Get Points Expiration Response Body", - "type": "object", - "properties": { - "object": { - "type": "string", - "pattern": "list", - "enum": [ - "list" - ], - "description": "The type of object represented by JSON. This object stores information about loyalty points expiration buckets in a dictionary." - }, - "data_ref": { - "type": "string", - "pattern": "data", - "enum": [ - "data" - ], - "description": "Identifies the name of the attribute that contains the array of loyalty points expiration bucket objects." - }, - "data": { - "type": "array", - "description": "Contains array of loyalty points expiration buckets.", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique loyalty points bucket ID." - }, - "voucher_id": { - "type": "string", - "description": "Unique parent loyalty card ID." - }, - "campaign_id": { - "type": "string", - "description": "\nUnique parent campaign ID." - }, - "bucket": { - "type": "object", - "required": [ - "total_points" - ], - "description": "Defines the number of points stored in the given loyalty points bucket.", - "properties": { - "total_points": { - "type": "integer", - "description": "Total number of points in the loyalty points bucket." - } - } - }, - "created_at": { - "type": "string", - "description": "Timestamp representing the date and time when the loyalty points bucket object was created in ISO 8601 format.", - "format": "date-time" - }, - "status": { - "type": "string", - "description": "Loyalty points bucket point status." - }, - "expires_at": { - "type": "string", - "format": "date-time", - "description": "Date when the number of points defined in the bucket object are due to expire." - }, - "updated_at": { - "type": "string", - "format": "date-time", - "description": "Timestamp representing the date and time when the loyalty points bucket object was updated in ISO 8601 format." - }, - "object": { - "type": "string", - "pattern": "loyalty_points_bucket", - "enum": [ - "loyalty_points_bucket" - ], - "description": "The type of object represented by JSON. This object stores information about the loyalty points bucket." - } - }, - "required": [ - "id", - "voucher_id", - "campaign_id", - "bucket", - "created_at", - "status", - "expires_at", - "object" - ] - } - }, - "total": { - "type": "integer", - "description": "Total number of point expiration buckets." - } - }, - "required": [ - "object", - "data_ref", - "data", - "total" - ] - }, "LoyaltiesListCardTransactionsRequestQuery": { "title": "Loyalties List Card Transactions Request Query", "type": "object", @@ -42945,7 +41663,7 @@ "type": "object" }, "ExportBase": { - "title": "ExportBase", + "title": "Export Base", "type": "object", "additionalProperties": false, "properties": {