voucherify 8.1.0 → 8.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Dockerfile +1 -1
- data/ENDPOINTS-COVERAGE.md +55 -55
- data/Gemfile.lock +2 -2
- data/README.md +5 -0
- data/docs/CampaignsApi.md +7 -7
- data/docs/ClientSideApi.md +2 -2
- data/docs/CustomersApi.md +5 -5
- data/docs/ErrorError.md +1 -1
- data/docs/ExportParameters.md +2 -2
- data/docs/ExportsApi.md +6 -6
- data/docs/ExportsCreateRequestBodyParameters.md +2 -2
- data/docs/ExportsCreateResponseBodyParameters.md +2 -2
- data/docs/ExportsGetResponseBodyParameters.md +2 -2
- data/docs/LoyaltiesApi.md +52 -52
- data/docs/ManagementApi.md +26 -26
- data/docs/MetadataSchemasApi.md +2 -2
- data/docs/OrdersApi.md +2 -2
- data/docs/ProductCollectionsApi.md +1 -1
- data/docs/ProductsApi.md +4 -4
- data/docs/PublicationsApi.md +3 -3
- data/docs/QualificationsApi.md +1 -1
- data/docs/RedemptionRewardResultParametersCoin.md +1 -1
- data/docs/RedemptionsApi.md +3 -3
- data/docs/RedemptionsRedeemRequestBodyOptions.md +1 -0
- data/docs/ReferralsApi.md +4 -4
- data/docs/RewardsCreateRequestBodyParametersCoin.md +1 -1
- data/docs/RewardsUpdateRequestBodyParametersCoin.md +1 -1
- data/docs/SegmentsApi.md +1 -1
- data/docs/TemplatesApi.md +7 -7
- data/docs/ValidationRulesApi.md +2 -2
- data/docs/ValidationsValidateRequestBodyOptions.md +1 -0
- data/docs/VouchersApi.md +8 -8
- data/lib/VoucherifySdk/api/campaigns_api.rb +14 -14
- data/lib/VoucherifySdk/api/client_side_api.rb +4 -4
- data/lib/VoucherifySdk/api/customers_api.rb +10 -10
- data/lib/VoucherifySdk/api/exports_api.rb +8 -8
- data/lib/VoucherifySdk/api/loyalties_api.rb +104 -104
- data/lib/VoucherifySdk/api/management_api.rb +52 -52
- data/lib/VoucherifySdk/api/metadata_schemas_api.rb +4 -4
- data/lib/VoucherifySdk/api/orders_api.rb +4 -4
- data/lib/VoucherifySdk/api/product_collections_api.rb +2 -2
- data/lib/VoucherifySdk/api/products_api.rb +8 -8
- data/lib/VoucherifySdk/api/publications_api.rb +6 -6
- data/lib/VoucherifySdk/api/qualifications_api.rb +2 -2
- data/lib/VoucherifySdk/api/redemptions_api.rb +6 -6
- data/lib/VoucherifySdk/api/referrals_api.rb +8 -8
- data/lib/VoucherifySdk/api/segments_api.rb +2 -2
- data/lib/VoucherifySdk/api/templates_api.rb +14 -14
- data/lib/VoucherifySdk/api/validation_rules_api.rb +4 -4
- data/lib/VoucherifySdk/api/vouchers_api.rb +16 -16
- data/lib/VoucherifySdk/models/error_error.rb +2 -2
- data/lib/VoucherifySdk/models/export.rb +1 -1
- data/lib/VoucherifySdk/models/export_parameters.rb +3 -3
- data/lib/VoucherifySdk/models/exports_create_request_body.rb +1 -1
- data/lib/VoucherifySdk/models/exports_create_request_body_parameters.rb +3 -3
- data/lib/VoucherifySdk/models/exports_create_response_body.rb +1 -1
- data/lib/VoucherifySdk/models/exports_create_response_body_parameters.rb +3 -3
- data/lib/VoucherifySdk/models/exports_get_response_body.rb +1 -1
- data/lib/VoucherifySdk/models/exports_get_response_body_parameters.rb +3 -3
- data/lib/VoucherifySdk/models/redemption_reward_result_parameters_coin.rb +1 -1
- data/lib/VoucherifySdk/models/redemptions_redeem_request_body_options.rb +28 -6
- data/lib/VoucherifySdk/models/rewards_create_request_body_parameters_coin.rb +1 -1
- data/lib/VoucherifySdk/models/rewards_update_request_body_parameters_coin.rb +1 -1
- data/lib/VoucherifySdk/models/validations_redeemable_skipped_result_details.rb +1 -1
- data/lib/VoucherifySdk/models/validations_validate_request_body_options.rb +28 -6
- data/lib/VoucherifySdk/version.rb +1 -1
- metadata +32 -32
data/docs/TemplatesApi.md
CHANGED
|
@@ -19,7 +19,7 @@ All URIs are relative to *https://api.voucherify.io*
|
|
|
19
19
|
|
|
20
20
|
Add Promotion Tier From Template
|
|
21
21
|
|
|
22
|
-
Creates a promotion tier out of a discount campaign template and adds it to an existing promotion campaign. To add a promotion tier to a campaign, you need to provide the name in the request and the campaign ID. Other fields are optional. If no other fields are sent, the configuration from the template will be used. You can send new values of the fields listed below to replace the settings saved in the template. However, you cannot assign an action or an existing validation rule or create a new one in the request. If the template has a validation rule, a new validation rule is always created for the promotion tier. When the promotion tier has been created, then you can: - [Update the validation rule](/api-reference/validation-rules/update-validation-rule), - [Unassign the validation rule](/api-reference/validation-rules/delete-validation-rule-assignment), - [Assign an existing validation rule](/api-reference/validation-rules/create-validation-rule-assignment).
|
|
22
|
+
Creates a promotion tier out of a discount campaign template and adds it to an existing promotion campaign. To add a promotion tier to a campaign, you need to provide the name in the request and the campaign ID. Other fields are optional. If no other fields are sent, the configuration from the template will be used. You can send new values of the fields listed below to replace the settings saved in the template. However, you cannot assign an action or an existing validation rule or create a new one in the request. If the template has a validation rule, a new validation rule is always created for the promotion tier. When the promotion tier has been created, then you can: - [Update the validation rule](/api-reference/validation-rules/update-validation-rule), - [Unassign the validation rule](/api-reference/validation-rules/delete-validation-rule-assignment), - [Assign an existing validation rule](/api-reference/validation-rules/create-validation-rule-assignment). <Tip> <Badge color green>Promotion Tiers and Campaign Templates</Badge> You can create a campaign template out of a promotion tier. Promotion tiers are converted to a discount campaign with the DISCOUNT_COUPON type. You can use this template to create: - [Discount campaign](/api-reference/templates/create-campaign-from-template) - [Promotion tier](/api-reference/templates/add-promotion-tier-from-template) </Tip> <Note> <Badge color blue>Campaign Templates – Documentation</Badge> Read the [Campaign Templates documentation](/build/campaign-templates) to learn more about this feature. </Note>
|
|
23
23
|
|
|
24
24
|
### Examples
|
|
25
25
|
|
|
@@ -81,7 +81,7 @@ end
|
|
|
81
81
|
|
|
82
82
|
Create Campaign From Template
|
|
83
83
|
|
|
84
|
-
Creates a campaign out of a campaign template. To create a campaign, you need to provide the name in the request, while other fields are optional. If no other fields are sent, the configuration from the template will be used. You can send new values of the fields listed below to replace the settings saved in the template. However, you cannot assign an existing validation rule or create a new one in the request. If the template has a validation rule, a new validation rule is always created for the campaign. When the campaign has been created, then you can: - [Update the validation rule](/api-reference/validation-rules/update-validation-rule), - [Unassign the validation rule](/api-reference/validation-rules/delete-validation-rule-assignment), - [Assign an existing validation rule](/api-reference/validation-rules/create-validation-rules-assignments).
|
|
84
|
+
Creates a campaign out of a campaign template. To create a campaign, you need to provide the name in the request, while other fields are optional. If no other fields are sent, the configuration from the template will be used. You can send new values of the fields listed below to replace the settings saved in the template. However, you cannot assign an existing validation rule or create a new one in the request. If the template has a validation rule, a new validation rule is always created for the campaign. When the campaign has been created, then you can: - [Update the validation rule](/api-reference/validation-rules/update-validation-rule), - [Unassign the validation rule](/api-reference/validation-rules/delete-validation-rule-assignment), - [Assign an existing validation rule](/api-reference/validation-rules/create-validation-rules-assignments). <Tip> <Badge color green>Promotion Tiers and Campaign Templates</Badge> You can create a campaign template out of a promotion tier. Promotion tiers are converted to a discount campaign with the DISCOUNT_COUPON type. You can use this template to create: - [Discount campaign](/api-reference/templates/create-campaign-from-template) - [Promotion tier](/api-reference/templates/add-promotion-tier-from-template) </Tip> <Note> <Badge color blue>Campaign Templates – Documentation</Badge> Read the [Campaign Templates documentation](/build/campaign-templates) to learn more about this feature. </Note>
|
|
85
85
|
|
|
86
86
|
### Examples
|
|
87
87
|
|
|
@@ -143,7 +143,7 @@ end
|
|
|
143
143
|
|
|
144
144
|
Create Campaign Template
|
|
145
145
|
|
|
146
|
-
Creates a template for a discount or gift campaign, or a promotion tier. A template stores campaign configuration **without** the following details: - Campaign name - Category - Code count The following elements are not supported by campaign templates: - Redeeming API keys - Redeeming users - Customer loyalty tier - Static segments
|
|
146
|
+
Creates a template for a discount or gift campaign, or a promotion tier. A template stores campaign configuration **without** the following details: - Campaign name - Category - Code count The following elements are not supported by campaign templates: - Redeeming API keys - Redeeming users - Customer loyalty tier - Static segments <Tip> <Badge color green>Promotion Tiers and Campaign Templates</Badge> You can create a campaign template out of a promotion tier. Promotion tiers are converted to a discount campaign with the DISCOUNT_COUPON type. You can use this template to create: - [Discount campaign](/api-reference/templates/create-campaign-from-template), - [Promotion tier](/api-reference/templates/add-promotion-tier-from-template). </Tip> <Note> <Badge color blue>Campaign Templates – Documentation</Badge> Read the [Campaign Templates documentation](/build/campaign-templates) to learn more about this feature. </Note>
|
|
147
147
|
|
|
148
148
|
### Examples
|
|
149
149
|
|
|
@@ -203,7 +203,7 @@ end
|
|
|
203
203
|
|
|
204
204
|
Delete Campaign Template
|
|
205
205
|
|
|
206
|
-
Deletes the campaign template permanently.
|
|
206
|
+
Deletes the campaign template permanently. <Note> <Badge color blue>Campaign Templates – Documentation</Badge> Read the [Campaign Templates documentation](/build/campaign-templates) to learn more about this feature. </Note>
|
|
207
207
|
|
|
208
208
|
### Examples
|
|
209
209
|
|
|
@@ -260,7 +260,7 @@ nil (empty response body)
|
|
|
260
260
|
|
|
261
261
|
Get Campaign Template
|
|
262
262
|
|
|
263
|
-
Retrieves a campaign template available in the project.
|
|
263
|
+
Retrieves a campaign template available in the project. <Note> <Badge color blue>Campaign Templates – Documentation</Badge> Read the [Campaign Templates documentation](/build/campaign-templates) to learn more about this feature. </Note>
|
|
264
264
|
|
|
265
265
|
### Examples
|
|
266
266
|
|
|
@@ -318,7 +318,7 @@ end
|
|
|
318
318
|
|
|
319
319
|
List Campaign Templates
|
|
320
320
|
|
|
321
|
-
Lists all campaign templates available in the project.
|
|
321
|
+
Lists all campaign templates available in the project. <Note> <Badge color blue>Campaign Templates – Documentation</Badge> Read the [Campaign Templates documentation](/build/campaign-templates) to learn more about this feature. </Note>
|
|
322
322
|
|
|
323
323
|
### Examples
|
|
324
324
|
|
|
@@ -386,7 +386,7 @@ end
|
|
|
386
386
|
|
|
387
387
|
Update Campaign Template
|
|
388
388
|
|
|
389
|
-
Updates the name or description of the campaign template.
|
|
389
|
+
Updates the name or description of the campaign template. <Note> <Badge color blue>Campaign Templates – Documentation</Badge> Read the [Campaign Templates documentation](/build/campaign-templates) to learn more about this feature. </Note>
|
|
390
390
|
|
|
391
391
|
### Examples
|
|
392
392
|
|
data/docs/ValidationRulesApi.md
CHANGED
|
@@ -85,7 +85,7 @@ end
|
|
|
85
85
|
|
|
86
86
|
Create Validation Rules
|
|
87
87
|
|
|
88
|
-
Create a validation rule.
|
|
88
|
+
Create a validation rule. <Warning> <Badge color yellow>Managing validation rules</Badge> It is recommended to [create or update validation rules](/personalize/create-validation-rules) in the Voucherify dashboard. The rule builder in the dashboard helps configuring the desired conditions in a convenient way. The API should not be used as a preferable way to create and manage validation rules. </Warning>
|
|
89
89
|
|
|
90
90
|
### Examples
|
|
91
91
|
|
|
@@ -521,7 +521,7 @@ end
|
|
|
521
521
|
|
|
522
522
|
Update Validation Rule
|
|
523
523
|
|
|
524
|
-
Update validation rule parameters.
|
|
524
|
+
Update validation rule parameters. <Warning> <Badge color yellow>Managing validation rules</Badge> It is recommended to [create or update validation rules](/personalize/create-validation-rules) in the Voucherify dashboard. The rule builder in the dashboard helps configuring the desired conditions in a convenient way. The API should not be used as a preferable way to create and manage validation rules. </Warning>
|
|
525
525
|
|
|
526
526
|
### Examples
|
|
527
527
|
|
|
@@ -5,4 +5,5 @@
|
|
|
5
5
|
| Name | Type | Description | Notes |
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
7
|
| **expand** | **Array<String>** | The expand array lets you configure the parameters included in the response. Depending on the strings included in the array, the response will contain different details. | **Expand Option** | **Response Body** | |:---|:---| | [\"order\"] | - Same response as fallback response (without an options object).<br />- Order data with calculated discounts are listed in each child redeemable object.<br />- Metadata not included for each discount type. | | [\"redeemable\"] | Expands redeemable objects by including `metadata` for each discount type. | | [\"order\", \"redeemable\"] | - Order data with calculated discounts are listed in each child redeemable object.<br />- Includes `metadata` for each discount type. | | [\"category\"] | - Returns an expanded `categories` object, showing details about the category. | | [optional] |
|
|
8
|
+
| **language** | **String** | Selects the language for the custom validation-rule error message. Returns the message in this language when a validation rule fails. Falls back to the Error Message Library default language when omitted or when the requested language has no message. Omits the custom error when no message can be resolved. | [optional] |
|
|
8
9
|
|
data/docs/VouchersApi.md
CHANGED
|
@@ -28,7 +28,7 @@ All URIs are relative to *https://api.voucherify.io*
|
|
|
28
28
|
|
|
29
29
|
Create Voucher
|
|
30
30
|
|
|
31
|
-
Create a generic (standalone) voucher or a voucher in a campaign. You can choose to create a GIFT_VOUCHER, a DISCOUNT_VOUCHER, or a LOYALTY_CARD. The code path parameter can use all letters of the English alphabet, Arabic numerals and special characters. When you create a new voucher, you can specify a type to create it. If no campaign name or campaign_id is provided, the new voucher will be a generic (standalone) one. However, if an ID or name of a campaign with the type set to STANDALONE is provided, the voucher will be added to this campaign. For a loyalty card, a campaign name or ID is required.
|
|
31
|
+
Create a generic (standalone) voucher or a voucher in a campaign. You can choose to create a GIFT_VOUCHER, a DISCOUNT_VOUCHER, or a LOYALTY_CARD. The code path parameter can use all letters of the English alphabet, Arabic numerals and special characters. When you create a new voucher, you can specify a type to create it. If no campaign name or campaign_id is provided, the new voucher will be a generic (standalone) one. However, if an ID or name of a campaign with the type set to STANDALONE is provided, the voucher will be added to this campaign. For a loyalty card, a campaign name or ID is required. <Warning> <Badge color yellow>Standalone Vouchers and Campaigns</Badge> Generic (standalone) vouchers created through the Voucherify dashboard always create a campaign for that voucher. However, vouchers created through The vouchers created with POST Create voucher and POST Generate random code endpoints do not have a campaign attached, so the values for campaign and campaign_id are null. To create a generic (standalone) voucher with a type: STANDALONE, use the [POST Create campaign](/api-reference/campaigns/create-campaign) endpoint. </Warning>
|
|
32
32
|
|
|
33
33
|
### Examples
|
|
34
34
|
|
|
@@ -151,7 +151,7 @@ nil (empty response body)
|
|
|
151
151
|
|
|
152
152
|
Disable Voucher
|
|
153
153
|
|
|
154
|
-
|
|
154
|
+
This method sets the voucher state to **inactive**. The voucher cannot be redeemed.
|
|
155
155
|
|
|
156
156
|
### Examples
|
|
157
157
|
|
|
@@ -209,7 +209,7 @@ end
|
|
|
209
209
|
|
|
210
210
|
Enable Voucher
|
|
211
211
|
|
|
212
|
-
|
|
212
|
+
The method sets the voucher state to **active**. The voucher can be redeemed - only if the redemption occurs after the start date and the voucher is not expired.
|
|
213
213
|
|
|
214
214
|
### Examples
|
|
215
215
|
|
|
@@ -329,7 +329,7 @@ end
|
|
|
329
329
|
|
|
330
330
|
Generate Random Code
|
|
331
331
|
|
|
332
|
-
Create a generic (standalone) vouchers. You can choose to create a GIFT_VOUCHER, a DISCOUNT_VOUCHER, or a LOYALTY_CARD. When you create a new voucher, you can specify a type to create it. Creating a new voucher will create a new generic (standalone) vouchers if no campaign name or campaign_id is provided. However, if an ID or name of a campaign with the type set to STANDALONE is provided, the voucher will be added to such campaign. In case of the loyalty card, a campaign name is required. You can optionally use the code parameter to define a specific code or the code_config parameter to design rules for Voucherify API to create a random code. If neither of the two parameters are passed, then a random code is generated by the Voucherify API. This method will return an error when trying to create a voucher that already exists.
|
|
332
|
+
Create a generic (standalone) vouchers. You can choose to create a GIFT_VOUCHER, a DISCOUNT_VOUCHER, or a LOYALTY_CARD. When you create a new voucher, you can specify a type to create it. Creating a new voucher will create a new generic (standalone) vouchers if no campaign name or campaign_id is provided. However, if an ID or name of a campaign with the type set to STANDALONE is provided, the voucher will be added to such campaign. In case of the loyalty card, a campaign name is required. You can optionally use the code parameter to define a specific code or the code_config parameter to design rules for Voucherify API to create a random code. If neither of the two parameters are passed, then a random code is generated by the Voucherify API. This method will return an error when trying to create a voucher that already exists. <Warning> <Badge color yellow>Standalone Vouchers and Campaigns</Badge> Generic (standalone) vouchers created through the Voucherify dashboard always create a campaign for that voucher. The vouchers created with POST Create voucher and POST Generate random code endpoints do not have a campaign attached, so the values for campaign and campaign_id are null. To create a generic (standalone) voucher with a type: STANDALONE, use the [POST Create campaign](/api-reference/campaigns/create-campaign) endpoint. </Warning>
|
|
333
333
|
|
|
334
334
|
### Examples
|
|
335
335
|
|
|
@@ -447,7 +447,7 @@ end
|
|
|
447
447
|
|
|
448
448
|
Import Vouchers
|
|
449
449
|
|
|
450
|
-
Import generic (standalone) vouchers and gift cards into the repository. You can upload up to 100,000 codes to a campaign, as a campaign can have up to 100,000 codes by default. Also, the request can include up to **10 MB** of data.
|
|
450
|
+
Import generic (standalone) vouchers and gift cards into the repository. You can upload up to 100,000 codes to a campaign, as a campaign can have up to 100,000 codes by default. Also, the request can include up to **10 MB** of data. <Note> <Badge color blue>Important notes</Badge> - **Start and expiration dates** need to be provided in compliance with the ISO 8601 standard. For example, 2020-03-11T09:00:00.000Z. - Custom code attributes (not supported by-default) need to be added as code **metadata**. - You **cannot import the same codes** to a single Voucherify Project. </Note> Any parameters not provided in the payload will be left blank or null. For both **standalone discount vouchers and gift cards**, you can import the following fields: - code - category - active - type - start_date - expiration_date - redemption.quantity - additional_info - metadata For **gift cards**, you can also import the following field: - gift.amount For **discount vouchers**, you can import the discount object. The object will slightly vary depending on the type of discount. Each discount type **requires** the type to be defined in the import. Fields other than the ones listed above wont be imported. Even if provided, they will be silently skipped. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action). <Warning> <Badge color yellow>Standalone Vouchers and Campaigns</Badge> Generic (standalone) vouchers created through the Voucherify dashboard always create a campaign for that voucher. However, vouchers imported through the dashboard in the Vouchers section or through the API do not have a campaign attached, so the values for campaign and campaign_id are null. To create a generic (standalone) voucher with a type: STANDALONE, use the [POST Create campaign](/api-reference/campaigns/create-campaign) endpoint. </Warning>
|
|
451
451
|
|
|
452
452
|
### Examples
|
|
453
453
|
|
|
@@ -505,7 +505,7 @@ end
|
|
|
505
505
|
|
|
506
506
|
Import Vouchers using CSV
|
|
507
507
|
|
|
508
|
-
Import generic (standalone) vouchers into the repository using a CSV file. The CSV file has to include headers in the first line. All properties listed in the file headers that cannot be mapped to standard voucher fields will be added to the metadata object. You can upload up to 100,000 codes to a campaign, as a campaign can have up to 100,000 codes by default. Also, the request can include a max. **10 MB** CSV file. You can find an example CSV file [here](/build/discount-code-import). ___
|
|
508
|
+
Import generic (standalone) vouchers into the repository using a CSV file. The CSV file has to include headers in the first line. All properties listed in the file headers that cannot be mapped to standard voucher fields will be added to the metadata object. You can upload up to 100,000 codes to a campaign, as a campaign can have up to 100,000 codes by default. Also, the request can include a max. **10 MB** CSV file. You can find an example CSV file [here](/build/discount-code-import). ___ <Note> <Badge color blue>Standard voucher fields mapping</Badge> - Go to the [import vouchers](/api-reference/vouchers/import-vouchers) endpoint to see all standard CSV fields description (body params section). - Supported CSV file headers: Code,Voucher Type,Value,Discount Type,Category,Start Date,Expiration Date,Redemption Limit,Redeemed Quantity, Redeemed Amount,Active,Additional Info,Custom Metadata Property Name - **Start and expiration dates** need to be provided in compliance with the ISO 8601 standard. For example, 2020-03-11T09:00:00.000Z. - YYYY-MM-DD - YYYY-MM-DDTHH - YYYY-MM-DDTHH:mm - YYYY-MM-DDTHH:mm:ss - YYYY-MM-DDTHH:mm:ssZ - YYYY-MM-DDTHH:mm:ssZ - YYYY-MM-DDTHH:mm:ss.SSSZ - Custom code attributes (not supported by-default) need to be added as code **metadata**. - You **cannot import the same codes** to a single Voucherify project. - You can, however, upload the same codes to update them. </Note> <Note> <Badge color blue>Categories</Badge> In the structure representing your data, you can define a category that the voucher belongs to. You can later use the category of a voucher to group and search by specific criteria in the Dashboard and using the [List Vouchers](/api-reference/vouchers/list-vouchers) endpoint. </Note> This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action). You can pass the webhooks_enable true parameter to trigger a webhook sendout for created or updated vouchers. Configure the [respective webhooks](/api-reference/introduction-to-webhooks) in Project settings. For updated webhooks, a webhook is sent even if the voucher hasnt been changed in the CSV file. <Warning> <Badge color yellow>Generic (standalone) vouchers and campaigns</Badge> Generic (standalone) vouchers created through the Voucherify dashboard always create a campaign for that voucher. However, vouchers imported through the dashboard in the Vouchers section or through the API do not have a campaign attached, so the values for campaign and campaign_id are null. </Warning>
|
|
509
509
|
|
|
510
510
|
### Examples
|
|
511
511
|
|
|
@@ -713,7 +713,7 @@ end
|
|
|
713
713
|
|
|
714
714
|
Release Validation Session
|
|
715
715
|
|
|
716
|
-
Manually release a validation session that has been set up for the voucher. This method undoes the actions that are explained in the [Locking validation session](/guides/locking-validation-session) guide.
|
|
716
|
+
Manually release a validation session that has been set up for the voucher. This method undoes the actions that are explained in the [Locking validation session](/guides/locking-validation-session) guide. <Note> <Badge color blue>Release session in the Dashboard</Badge> You can also use the [Validations Manager](/optimize/validations-and-redemptions#sessions) in the Dashboard to unlock sessions. </Note>
|
|
717
717
|
|
|
718
718
|
### Examples
|
|
719
719
|
|
|
@@ -892,7 +892,7 @@ end
|
|
|
892
892
|
|
|
893
893
|
Update Vouchers in Bulk
|
|
894
894
|
|
|
895
|
-
Updates specific metadata parameters for each code, respectively, in one asynchronous operation. The request can include up to **10 MB** of data. Upserts are not supported.
|
|
895
|
+
Updates specific metadata parameters for each code, respectively, in one asynchronous operation. The request can include up to **10 MB** of data. Upserts are not supported. <Warning> Currently, only **metadata** updates are supported. </Warning> The response returns a unique asynchronous action ID. Use this ID in the query paramater of the [GET Async Action](/api-reference/async-actions/get-async-action) endpoint to check, e.g.: - The status of your request (in queue, in progress, done, or failed) - Resources that failed to be updated - The report file with details about the update This API request starts a process that affects Voucherify data in bulk. In the case of small jobs (like bulk update), the request is put into a queue and processed when every other bulk request placed in the queue prior to this request is finished.
|
|
896
896
|
|
|
897
897
|
### Examples
|
|
898
898
|
|
|
@@ -157,7 +157,7 @@ module VoucherifySdk
|
|
|
157
157
|
end
|
|
158
158
|
|
|
159
159
|
# Create Campaign
|
|
160
|
-
# Method to create a batch of vouchers aggregated in one campaign. You can choose a variety of voucher types and define a unique pattern for generating codes.
|
|
160
|
+
# Method to create a batch of vouchers aggregated in one campaign. You can choose a variety of voucher types and define a unique pattern for generating codes. <Note> <Badge color blue>Global uniqueness</Badge> All campaign codes are unique across the whole project. Voucherify will not allow you to generate 2 campaigns with the same coupon code. </Note> <Warning> <Badge color yellow>Code generation status</Badge> This is an asynchronous action; you cant read or modify a newly created campaign until the code generation is completed. See the creation_status field in the [campaign object](/api-reference/campaigns/campaign-object) description. </Warning>
|
|
161
161
|
# @param [Hash] opts the optional parameters
|
|
162
162
|
# @option opts [CampaignsCreateRequestBody] :campaigns_create_request_body Specify the details of the campaign that you would like to create.
|
|
163
163
|
# @return [CampaignsCreateResponseBody]
|
|
@@ -167,7 +167,7 @@ module VoucherifySdk
|
|
|
167
167
|
end
|
|
168
168
|
|
|
169
169
|
# Create Campaign
|
|
170
|
-
# Method to create a batch of vouchers aggregated in one campaign. You can choose a variety of voucher types and define a unique pattern for generating codes.
|
|
170
|
+
# Method to create a batch of vouchers aggregated in one campaign. You can choose a variety of voucher types and define a unique pattern for generating codes. <Note> <Badge color blue>Global uniqueness</Badge> All campaign codes are unique across the whole project. Voucherify will not allow you to generate 2 campaigns with the same coupon code. </Note> <Warning> <Badge color yellow>Code generation status</Badge> This is an asynchronous action; you cant read or modify a newly created campaign until the code generation is completed. See the creation_status field in the [campaign object](/api-reference/campaigns/campaign-object) description. </Warning>
|
|
171
171
|
# @param [Hash] opts the optional parameters
|
|
172
172
|
# @option opts [CampaignsCreateRequestBody] :campaigns_create_request_body Specify the details of the campaign that you would like to create.
|
|
173
173
|
# @return [Array<(CampaignsCreateResponseBody, Integer, Hash)>] CampaignsCreateResponseBody data, response status code and response headers
|
|
@@ -283,7 +283,7 @@ module VoucherifySdk
|
|
|
283
283
|
end
|
|
284
284
|
|
|
285
285
|
# Disable Campaign
|
|
286
|
-
#
|
|
286
|
+
# Sets campaign state to **inactive**. The vouchers in this campaign can no longer be redeemed.
|
|
287
287
|
# @param campaign_id [String] The campaign ID or name of the campaign being disabled. You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
|
|
288
288
|
# @param [Hash] opts the optional parameters
|
|
289
289
|
# @return [Object]
|
|
@@ -293,7 +293,7 @@ module VoucherifySdk
|
|
|
293
293
|
end
|
|
294
294
|
|
|
295
295
|
# Disable Campaign
|
|
296
|
-
#
|
|
296
|
+
# Sets campaign state to **inactive**. The vouchers in this campaign can no longer be redeemed.
|
|
297
297
|
# @param campaign_id [String] The campaign ID or name of the campaign being disabled. You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
|
|
298
298
|
# @param [Hash] opts the optional parameters
|
|
299
299
|
# @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
|
|
@@ -342,7 +342,7 @@ module VoucherifySdk
|
|
|
342
342
|
end
|
|
343
343
|
|
|
344
344
|
# Enable Campaign
|
|
345
|
-
#
|
|
345
|
+
# Sets campaign state to **active**. The vouchers in this campaign can be redeemed - only if the redemption occurs after the start date of the campaign and voucher and the voucher and campaign are not expired.
|
|
346
346
|
# @param campaign_id [String] The campaign ID or name of the campaign being enabled. You can either pass the campaign ID, which was assigned by Voucherify or the name of the campaign as the path parameter value.
|
|
347
347
|
# @param [Hash] opts the optional parameters
|
|
348
348
|
# @return [Object]
|
|
@@ -352,7 +352,7 @@ module VoucherifySdk
|
|
|
352
352
|
end
|
|
353
353
|
|
|
354
354
|
# Enable Campaign
|
|
355
|
-
#
|
|
355
|
+
# Sets campaign state to **active**. The vouchers in this campaign can be redeemed - only if the redemption occurs after the start date of the campaign and voucher and the voucher and campaign are not expired.
|
|
356
356
|
# @param campaign_id [String] The campaign ID or name of the campaign being enabled. You can either pass the campaign ID, which was assigned by Voucherify or the name of the campaign as the path parameter value.
|
|
357
357
|
# @param [Hash] opts the optional parameters
|
|
358
358
|
# @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
|
|
@@ -401,7 +401,7 @@ module VoucherifySdk
|
|
|
401
401
|
end
|
|
402
402
|
|
|
403
403
|
# Export Campaign Transactions
|
|
404
|
-
# Export transactions is an asynchronous process that generates a CSV file with the data about credit movements on all gift cards or point movements on all loyalty cards in a given campaign. To export transactions: 1. In the export request, use parameters to select which fields will be exported, in what order, and which data will be filtered. 2. Use the returned id to track the export status with the [GET Export](/api-reference/exports/get-export) method. 3. In the GET Export method, when the returned status field has the DONE value, the export file has been generated. 4. Use the URL in the result property to download the file. You must be logged to your Voucherify account on a given cluster in the browser to be able to download the file. An export request will almost always result in a single file being generated by the system. However, when the data volume is large, the system may split the results into multiple files. An example export file can look as follows:
|
|
404
|
+
# Export transactions is an asynchronous process that generates a CSV file with the data about credit movements on all gift cards or point movements on all loyalty cards in a given campaign. To export transactions: 1. In the export request, use parameters to select which fields will be exported, in what order, and which data will be filtered. 2. Use the returned id to track the export status with the [GET Export](/api-reference/exports/get-export) method. 3. In the GET Export method, when the returned status field has the DONE value, the export file has been generated. 4. Use the URL in the result property to download the file. You must be logged to your Voucherify account on a given cluster in the browser to be able to download the file. An export request will almost always result in a single file being generated by the system. However, when the data volume is large, the system may split the results into multiple files. An example export file can look as follows: <Tip> <Badge color green>Export Loyalty Campaign Transactions</Badge> For loyalty campaigns, this method works in the same way the [POST Export Loyalty Campaign Transactions](/api-reference/loyalties/export-loyalty-campaign-transactions) does. </Tip>
|
|
405
405
|
# @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
|
|
406
406
|
# @param [Hash] opts the optional parameters
|
|
407
407
|
# @option opts [CampaignsTransactionsExportCreateRequestBody] :campaigns_transactions_export_create_request_body Specify the parameters for the transaction export.
|
|
@@ -412,7 +412,7 @@ module VoucherifySdk
|
|
|
412
412
|
end
|
|
413
413
|
|
|
414
414
|
# Export Campaign Transactions
|
|
415
|
-
# Export transactions is an asynchronous process that generates a CSV file with the data about credit movements on all gift cards or point movements on all loyalty cards in a given campaign. To export transactions: 1. In the export request, use parameters to select which fields will be exported, in what order, and which data will be filtered. 2. Use the returned id to track the export status with the [GET Export](/api-reference/exports/get-export) method. 3. In the GET Export method, when the returned status field has the DONE value, the export file has been generated. 4. Use the URL in the result property to download the file. You must be logged to your Voucherify account on a given cluster in the browser to be able to download the file. An export request will almost always result in a single file being generated by the system. However, when the data volume is large, the system may split the results into multiple files. An example export file can look as follows:
|
|
415
|
+
# Export transactions is an asynchronous process that generates a CSV file with the data about credit movements on all gift cards or point movements on all loyalty cards in a given campaign. To export transactions: 1. In the export request, use parameters to select which fields will be exported, in what order, and which data will be filtered. 2. Use the returned id to track the export status with the [GET Export](/api-reference/exports/get-export) method. 3. In the GET Export method, when the returned status field has the DONE value, the export file has been generated. 4. Use the URL in the result property to download the file. You must be logged to your Voucherify account on a given cluster in the browser to be able to download the file. An export request will almost always result in a single file being generated by the system. However, when the data volume is large, the system may split the results into multiple files. An example export file can look as follows: <Tip> <Badge color green>Export Loyalty Campaign Transactions</Badge> For loyalty campaigns, this method works in the same way the [POST Export Loyalty Campaign Transactions](/api-reference/loyalties/export-loyalty-campaign-transactions) does. </Tip>
|
|
416
416
|
# @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
|
|
417
417
|
# @param [Hash] opts the optional parameters
|
|
418
418
|
# @option opts [CampaignsTransactionsExportCreateRequestBody] :campaigns_transactions_export_create_request_body Specify the parameters for the transaction export.
|
|
@@ -526,7 +526,7 @@ module VoucherifySdk
|
|
|
526
526
|
end
|
|
527
527
|
|
|
528
528
|
# Get Campaign Summary
|
|
529
|
-
# Returns data for campaign analytics, covering validations, redemptions, publications, and other details specific to a given campaign type. Use start_date and end_date to narrow down the data to specific periods.
|
|
529
|
+
# Returns data for campaign analytics, covering validations, redemptions, publications, and other details specific to a given campaign type. Use start_date and end_date to narrow down the data to specific periods. <Warning> <Badge color yellow>Campaigns created before 17 June 2025</Badge> This endpoint returns analytics data for campaigns that were created after 17 June 2025. Older campaigns return empty data. </Warning>
|
|
530
530
|
# @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
|
|
531
531
|
# @param [Hash] opts the optional parameters
|
|
532
532
|
# @option opts [Date] :start_date Timestamp representing the date which results must begin on. Represented in ISO 8601 format.
|
|
@@ -538,7 +538,7 @@ module VoucherifySdk
|
|
|
538
538
|
end
|
|
539
539
|
|
|
540
540
|
# Get Campaign Summary
|
|
541
|
-
# Returns data for campaign analytics, covering validations, redemptions, publications, and other details specific to a given campaign type. Use start_date and end_date to narrow down the data to specific periods.
|
|
541
|
+
# Returns data for campaign analytics, covering validations, redemptions, publications, and other details specific to a given campaign type. Use start_date and end_date to narrow down the data to specific periods. <Warning> <Badge color yellow>Campaigns created before 17 June 2025</Badge> This endpoint returns analytics data for campaigns that were created after 17 June 2025. Older campaigns return empty data. </Warning>
|
|
542
542
|
# @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
|
|
543
543
|
# @param [Hash] opts the optional parameters
|
|
544
544
|
# @option opts [Date] :start_date Timestamp representing the date which results must begin on. Represented in ISO 8601 format.
|
|
@@ -724,7 +724,7 @@ module VoucherifySdk
|
|
|
724
724
|
end
|
|
725
725
|
|
|
726
726
|
# List Campaign Transactions
|
|
727
|
-
# Retrieves all transactions for the campaign with the given campaign ID or campaign name. The id filter denotes the unique transaction identifier.
|
|
727
|
+
# Retrieves all transactions for the campaign with the given campaign ID or campaign name. The id filter denotes the unique transaction identifier. <Warning> The endpoint works only for gift card and loyalty campaigns. </Warning>
|
|
728
728
|
# @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
|
|
729
729
|
# @param [Hash] opts the optional parameters
|
|
730
730
|
# @option opts [Integer] :limit Limits the number of objects to be returned. The limit can range between 1 and 100 items. If no limit is set, it returns 10 items.
|
|
@@ -738,7 +738,7 @@ module VoucherifySdk
|
|
|
738
738
|
end
|
|
739
739
|
|
|
740
740
|
# List Campaign Transactions
|
|
741
|
-
# Retrieves all transactions for the campaign with the given campaign ID or campaign name. The id filter denotes the unique transaction identifier.
|
|
741
|
+
# Retrieves all transactions for the campaign with the given campaign ID or campaign name. The id filter denotes the unique transaction identifier. <Warning> The endpoint works only for gift card and loyalty campaigns. </Warning>
|
|
742
742
|
# @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
|
|
743
743
|
# @param [Hash] opts the optional parameters
|
|
744
744
|
# @option opts [Integer] :limit Limits the number of objects to be returned. The limit can range between 1 and 100 items. If no limit is set, it returns 10 items.
|
|
@@ -870,7 +870,7 @@ module VoucherifySdk
|
|
|
870
870
|
end
|
|
871
871
|
|
|
872
872
|
# Update Campaign
|
|
873
|
-
# Updates the specified campaign by setting the values of the parameters passed in the request body. Any parameters not provided in the payload will be left unchanged. Fields other than the ones listed in the request body wont be modified. Even if provided, they will be silently skipped.
|
|
873
|
+
# Updates the specified campaign by setting the values of the parameters passed in the request body. Any parameters not provided in the payload will be left unchanged. Fields other than the ones listed in the request body wont be modified. Even if provided, they will be silently skipped. <Warning> <Badge color yellow>Vouchers will be affected</Badge> This method will update vouchers aggregated in the campaign. It will affect all vouchers that are not published or redeemed yet. </Warning>
|
|
874
874
|
# @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
|
|
875
875
|
# @param [Hash] opts the optional parameters
|
|
876
876
|
# @option opts [CampaignsUpdateRequestBody] :campaigns_update_request_body Specify the campaign parameters to be updated.
|
|
@@ -881,7 +881,7 @@ module VoucherifySdk
|
|
|
881
881
|
end
|
|
882
882
|
|
|
883
883
|
# Update Campaign
|
|
884
|
-
# Updates the specified campaign by setting the values of the parameters passed in the request body. Any parameters not provided in the payload will be left unchanged. Fields other than the ones listed in the request body wont be modified. Even if provided, they will be silently skipped.
|
|
884
|
+
# Updates the specified campaign by setting the values of the parameters passed in the request body. Any parameters not provided in the payload will be left unchanged. Fields other than the ones listed in the request body wont be modified. Even if provided, they will be silently skipped. <Warning> <Badge color yellow>Vouchers will be affected</Badge> This method will update vouchers aggregated in the campaign. It will affect all vouchers that are not published or redeemed yet. </Warning>
|
|
885
885
|
# @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
|
|
886
886
|
# @param [Hash] opts the optional parameters
|
|
887
887
|
# @option opts [CampaignsUpdateRequestBody] :campaigns_update_request_body Specify the campaign parameters to be updated.
|
|
@@ -20,7 +20,7 @@ module VoucherifySdk
|
|
|
20
20
|
@api_client = api_client
|
|
21
21
|
end
|
|
22
22
|
# Check Eligibility (client-side)
|
|
23
|
-
# Generate a list of redeemables that are applicable in the context of the customer and order. The new qualifications method is an improved version of [Campaign Qualifications](/api-reference/campaigns/examine-campaign-qualification), [Voucher Qualifications](/api-reference/vouchers/examine-voucher-qualification) API requests. The new qualification method introduces the following improvements: - Qualification results are returned faster - No limit on the number of returned redeemables - Introduces new qualification scenarios, not available in the previous version
|
|
23
|
+
# Generate a list of redeemables that are applicable in the context of the customer and order. The new qualifications method is an improved version of [Campaign Qualifications](/api-reference/campaigns/examine-campaign-qualification), [Voucher Qualifications](/api-reference/vouchers/examine-voucher-qualification) API requests. The new qualification method introduces the following improvements: - Qualification results are returned faster - No limit on the number of returned redeemables - Introduces new qualification scenarios, not available in the previous version <Tip> <Badge color green>Scenario Guide</Badge> Read our dedicated guide to learn about some use cases this endpoint can cover [here](/guides/checking-eligibility). </Tip> # Paging The Voucherify Qualifications API request will return to you all of the redeemables available for the customer in batches of up to 50 redeemables per page. To get the next batch of redeemables, you need to use the starting_after cursor. To process of paging the redeemables works in the following manner: - You send the first API request for Qualifications without the starting_after parameter. - The response will contain a parameter named has_more. If the parameters value is set to true, then more redeemables are available. - Get the value of the created_at parameter of the last returned redeemable. The value of this parameter will be used as a cursor to retrieve the next page of redeemables. - Send another API request for Qualification with the starting_after parameter set to the value taken from the created_at parameter from the last returned redeemable. - Voucherify will return the next page of redeemables. - If the has_more parameter is set to true, apply steps 3-5 to get the next page of redeemables. # Caching Qualification has a 5-minute cache for the returned results. If you change your campaign settings or validation rules, the changes will apply to qualification results after the cache refreshes.
|
|
24
24
|
# @param [Hash] opts the optional parameters
|
|
25
25
|
# @option opts [ClientQualificationsCheckEligibilityRequestBody] :client_qualifications_check_eligibility_request_body Define order and customer context.
|
|
26
26
|
# @return [ClientQualificationsCheckEligibilityResponseBody]
|
|
@@ -30,7 +30,7 @@ module VoucherifySdk
|
|
|
30
30
|
end
|
|
31
31
|
|
|
32
32
|
# Check Eligibility (client-side)
|
|
33
|
-
# Generate a list of redeemables that are applicable in the context of the customer and order. The new qualifications method is an improved version of [Campaign Qualifications](/api-reference/campaigns/examine-campaign-qualification), [Voucher Qualifications](/api-reference/vouchers/examine-voucher-qualification) API requests. The new qualification method introduces the following improvements: - Qualification results are returned faster - No limit on the number of returned redeemables - Introduces new qualification scenarios, not available in the previous version
|
|
33
|
+
# Generate a list of redeemables that are applicable in the context of the customer and order. The new qualifications method is an improved version of [Campaign Qualifications](/api-reference/campaigns/examine-campaign-qualification), [Voucher Qualifications](/api-reference/vouchers/examine-voucher-qualification) API requests. The new qualification method introduces the following improvements: - Qualification results are returned faster - No limit on the number of returned redeemables - Introduces new qualification scenarios, not available in the previous version <Tip> <Badge color green>Scenario Guide</Badge> Read our dedicated guide to learn about some use cases this endpoint can cover [here](/guides/checking-eligibility). </Tip> # Paging The Voucherify Qualifications API request will return to you all of the redeemables available for the customer in batches of up to 50 redeemables per page. To get the next batch of redeemables, you need to use the starting_after cursor. To process of paging the redeemables works in the following manner: - You send the first API request for Qualifications without the starting_after parameter. - The response will contain a parameter named has_more. If the parameters value is set to true, then more redeemables are available. - Get the value of the created_at parameter of the last returned redeemable. The value of this parameter will be used as a cursor to retrieve the next page of redeemables. - Send another API request for Qualification with the starting_after parameter set to the value taken from the created_at parameter from the last returned redeemable. - Voucherify will return the next page of redeemables. - If the has_more parameter is set to true, apply steps 3-5 to get the next page of redeemables. # Caching Qualification has a 5-minute cache for the returned results. If you change your campaign settings or validation rules, the changes will apply to qualification results after the cache refreshes.
|
|
34
34
|
# @param [Hash] opts the optional parameters
|
|
35
35
|
# @option opts [ClientQualificationsCheckEligibilityRequestBody] :client_qualifications_check_eligibility_request_body Define order and customer context.
|
|
36
36
|
# @return [Array<(ClientQualificationsCheckEligibilityResponseBody, Integer, Hash)>] ClientQualificationsCheckEligibilityResponseBody data, response status code and response headers
|
|
@@ -156,7 +156,7 @@ module VoucherifySdk
|
|
|
156
156
|
end
|
|
157
157
|
|
|
158
158
|
# Redeem Stackable Discounts (client-side)
|
|
159
|
-
# This method is accessible through public keys which you can use in client side requests coming from mobile and web browser applications. # How API returns calculated discounts and order amounts in the response In the table below, you can see the logic the API follows to calculate discounts and amounts:
|
|
159
|
+
# This method is accessible through public keys which you can use in client side requests coming from mobile and web browser applications. # How API returns calculated discounts and order amounts in the response In the table below, you can see the logic the API follows to calculate discounts and amounts: <Note> <Badge color blue>Rollbacks</Badge> You cant roll back a child redemption. When you call rollback on a stacked redemption, all child redemptions will be rolled back. You need to refer to a parent redemption ID in your [rollback request](/api-reference/redemptions/rollback-stackable-redemptions). </Note>
|
|
160
160
|
# @param origin [String] Indicates the origin (scheme, hostname, and port).
|
|
161
161
|
# @param [Hash] opts the optional parameters
|
|
162
162
|
# @option opts [ClientRedemptionsRedeemRequestBody] :client_redemptions_redeem_request_body
|
|
@@ -167,7 +167,7 @@ module VoucherifySdk
|
|
|
167
167
|
end
|
|
168
168
|
|
|
169
169
|
# Redeem Stackable Discounts (client-side)
|
|
170
|
-
# This method is accessible through public keys which you can use in client side requests coming from mobile and web browser applications. # How API returns calculated discounts and order amounts in the response In the table below, you can see the logic the API follows to calculate discounts and amounts:
|
|
170
|
+
# This method is accessible through public keys which you can use in client side requests coming from mobile and web browser applications. # How API returns calculated discounts and order amounts in the response In the table below, you can see the logic the API follows to calculate discounts and amounts: <Note> <Badge color blue>Rollbacks</Badge> You cant roll back a child redemption. When you call rollback on a stacked redemption, all child redemptions will be rolled back. You need to refer to a parent redemption ID in your [rollback request](/api-reference/redemptions/rollback-stackable-redemptions). </Note>
|
|
171
171
|
# @param origin [String] Indicates the origin (scheme, hostname, and port).
|
|
172
172
|
# @param [Hash] opts the optional parameters
|
|
173
173
|
# @option opts [ClientRedemptionsRedeemRequestBody] :client_redemptions_redeem_request_body
|
|
@@ -20,7 +20,7 @@ module VoucherifySdk
|
|
|
20
20
|
@api_client = api_client
|
|
21
21
|
end
|
|
22
22
|
# Create Customer
|
|
23
|
-
# Creates a customer object.
|
|
23
|
+
# Creates a customer object. <Note> <Badge color blue>Upsert Mode</Badge> If you pass an id or a source_id that already exists in the customer database, Voucherify will return a related customer object with updated fields. </Note>
|
|
24
24
|
# @param [Hash] opts the optional parameters
|
|
25
25
|
# @option opts [CustomersCreateRequestBody] :customers_create_request_body Create a customer with specified parameters.
|
|
26
26
|
# @return [CustomersCreateResponseBody]
|
|
@@ -30,7 +30,7 @@ module VoucherifySdk
|
|
|
30
30
|
end
|
|
31
31
|
|
|
32
32
|
# Create Customer
|
|
33
|
-
# Creates a customer object.
|
|
33
|
+
# Creates a customer object. <Note> <Badge color blue>Upsert Mode</Badge> If you pass an id or a source_id that already exists in the customer database, Voucherify will return a related customer object with updated fields. </Note>
|
|
34
34
|
# @param [Hash] opts the optional parameters
|
|
35
35
|
# @option opts [CustomersCreateRequestBody] :customers_create_request_body Create a customer with specified parameters.
|
|
36
36
|
# @return [Array<(CustomersCreateResponseBody, Integer, Hash)>] CustomersCreateResponseBody data, response status code and response headers
|
|
@@ -84,7 +84,7 @@ module VoucherifySdk
|
|
|
84
84
|
end
|
|
85
85
|
|
|
86
86
|
# Delete Customer Permanently
|
|
87
|
-
# The organization user can remove
|
|
87
|
+
# The organization user can remove customer data permanently from the Voucherify system by using this API method. It deletes all customer data and connected resources. It makes the customer profile forgotten by Voucherify as per the GDPR.
|
|
88
88
|
# @param customer_id [String] A Voucherify customers id or source_id.
|
|
89
89
|
# @param [Hash] opts the optional parameters
|
|
90
90
|
# @return [CustomersPermanentDeletionCreateResponseBody]
|
|
@@ -94,7 +94,7 @@ module VoucherifySdk
|
|
|
94
94
|
end
|
|
95
95
|
|
|
96
96
|
# Delete Customer Permanently
|
|
97
|
-
# The organization user can remove
|
|
97
|
+
# The organization user can remove customer data permanently from the Voucherify system by using this API method. It deletes all customer data and connected resources. It makes the customer profile forgotten by Voucherify as per the GDPR.
|
|
98
98
|
# @param customer_id [String] A Voucherify customers id or source_id.
|
|
99
99
|
# @param [Hash] opts the optional parameters
|
|
100
100
|
# @return [Array<(CustomersPermanentDeletionCreateResponseBody, Integer, Hash)>] CustomersPermanentDeletionCreateResponseBody data, response status code and response headers
|
|
@@ -143,7 +143,7 @@ module VoucherifySdk
|
|
|
143
143
|
end
|
|
144
144
|
|
|
145
145
|
# Delete Customer
|
|
146
|
-
# This method deletes a customer.
|
|
146
|
+
# This method deletes a customer. The customer is permanently deleted. This means that a new customer with the same source_id can be created. <Note> <Badge color blue>GDPR compliance</Badge> This method does NOT delete all related data, including personal data, from Voucherify databases. To delete these records and fulfil the right to be forgotten in the sense of the GDPR, use the [Delete Customer Permanently](/api-reference/customers/delete-customer-permanently) endpoint or go to [Delete people data](/manage/team-settings#delete-people-data) in the Voucherify [Team settings](/manage/team-settings). </Note>
|
|
147
147
|
# @param customer_id [String] A Voucherify customers id or source_id.
|
|
148
148
|
# @param [Hash] opts the optional parameters
|
|
149
149
|
# @return [nil]
|
|
@@ -153,7 +153,7 @@ module VoucherifySdk
|
|
|
153
153
|
end
|
|
154
154
|
|
|
155
155
|
# Delete Customer
|
|
156
|
-
# This method deletes a customer.
|
|
156
|
+
# This method deletes a customer. The customer is permanently deleted. This means that a new customer with the same source_id can be created. <Note> <Badge color blue>GDPR compliance</Badge> This method does NOT delete all related data, including personal data, from Voucherify databases. To delete these records and fulfil the right to be forgotten in the sense of the GDPR, use the [Delete Customer Permanently](/api-reference/customers/delete-customer-permanently) endpoint or go to [Delete people data](/manage/team-settings#delete-people-data) in the Voucherify [Team settings](/manage/team-settings). </Note>
|
|
157
157
|
# @param customer_id [String] A Voucherify customers id or source_id.
|
|
158
158
|
# @param [Hash] opts the optional parameters
|
|
159
159
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
@@ -259,7 +259,7 @@ module VoucherifySdk
|
|
|
259
259
|
end
|
|
260
260
|
|
|
261
261
|
# Import and Update Customers using CSV
|
|
262
|
-
# This API method lets you import or update customer data. To get a proper and valid response, please send a CSV file with data separated by commas. # Request Example # CSV File Format The CSV file has to include headers in the first line. All properties which cannot be mapped to standard customer fields will be added to the metadata object.
|
|
262
|
+
# This API method lets you import or update customer data. To get a proper and valid response, please send a CSV file with data separated by commas. # Request Example # CSV File Format The CSV file has to include headers in the first line. All properties which cannot be mapped to standard customer fields will be added to the metadata object. <Note> <Badge color blue>Standard customer fields mapping</Badge> **No spaces allowed in field names** Id, Name, Email, Phone, Birthdate, Source_id, Address_line_1, Address_line_2, Address_Postal_Code, Address_City, Address_State, Address_Country, Description, Metadata_name_1, Metadata_name_2 </Note> # Update Customers using CSV If you would like to update customers data, you can do it using the CSV file with new data. However, remember to include a source_id in your CSV file to manage the update successfully. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
|
|
263
263
|
# @param [Hash] opts the optional parameters
|
|
264
264
|
# @option opts [File] :file File path.
|
|
265
265
|
# @return [CustomersImportCsvCreateResponseBody]
|
|
@@ -269,7 +269,7 @@ module VoucherifySdk
|
|
|
269
269
|
end
|
|
270
270
|
|
|
271
271
|
# Import and Update Customers using CSV
|
|
272
|
-
# This API method lets you import or update customer data. To get a proper and valid response, please send a CSV file with data separated by commas. # Request Example # CSV File Format The CSV file has to include headers in the first line. All properties which cannot be mapped to standard customer fields will be added to the metadata object.
|
|
272
|
+
# This API method lets you import or update customer data. To get a proper and valid response, please send a CSV file with data separated by commas. # Request Example # CSV File Format The CSV file has to include headers in the first line. All properties which cannot be mapped to standard customer fields will be added to the metadata object. <Note> <Badge color blue>Standard customer fields mapping</Badge> **No spaces allowed in field names** Id, Name, Email, Phone, Birthdate, Source_id, Address_line_1, Address_line_2, Address_Postal_Code, Address_City, Address_State, Address_Country, Description, Metadata_name_1, Metadata_name_2 </Note> # Update Customers using CSV If you would like to update customers data, you can do it using the CSV file with new data. However, remember to include a source_id in your CSV file to manage the update successfully. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
|
|
273
273
|
# @param [Hash] opts the optional parameters
|
|
274
274
|
# @option opts [File] :file File path.
|
|
275
275
|
# @return [Array<(CustomersImportCsvCreateResponseBody, Integer, Hash)>] CustomersImportCsvCreateResponseBody data, response status code and response headers
|
|
@@ -324,7 +324,7 @@ module VoucherifySdk
|
|
|
324
324
|
end
|
|
325
325
|
|
|
326
326
|
# List Customer Activities
|
|
327
|
-
# >
|
|
327
|
+
# <Danger> <Badge color red>Deprecated</Badge> This endpoint represents the deprecated version of the API responsible for listing customer activities and we do not recommend using it. Developers are encouraged to migrate to the latest version to take advantage of the latest enhancements and bug fixes. No updates will be provided to the deprecated endpoint. </Danger> Retrieve customer activities.
|
|
328
328
|
# @param customer_id [String] A Voucherify customers id or source ID of the customer who performed the activities.
|
|
329
329
|
# @param [Hash] opts the optional parameters
|
|
330
330
|
# @option opts [Integer] :limit Limits the number of objects to be returned. The limit can range between 1 and 100 items. If no limit is set, it returns 10 items.
|
|
@@ -343,7 +343,7 @@ module VoucherifySdk
|
|
|
343
343
|
end
|
|
344
344
|
|
|
345
345
|
# List Customer Activities
|
|
346
|
-
# >
|
|
346
|
+
# <Danger> <Badge color red>Deprecated</Badge> This endpoint represents the deprecated version of the API responsible for listing customer activities and we do not recommend using it. Developers are encouraged to migrate to the latest version to take advantage of the latest enhancements and bug fixes. No updates will be provided to the deprecated endpoint. </Danger> Retrieve customer activities.
|
|
347
347
|
# @param customer_id [String] A Voucherify customers id or source ID of the customer who performed the activities.
|
|
348
348
|
# @param [Hash] opts the optional parameters
|
|
349
349
|
# @option opts [Integer] :limit Limits the number of objects to be returned. The limit can range between 1 and 100 items. If no limit is set, it returns 10 items.
|
|
@@ -20,7 +20,7 @@ module VoucherifySdk
|
|
|
20
20
|
@api_client = api_client
|
|
21
21
|
end
|
|
22
22
|
# Create Export
|
|
23
|
-
# Create export object. The export can be any of the following types: voucher, redemption, publication, customer, order, points_expiration, voucher_transactions, product, or sku. # Defaults If you only specify the object type in the request body without specifying the fields, the API will return the following fields per export object:
|
|
23
|
+
# Create export object. The export can be any of the following types: voucher, redemption, publication, customer, order, points_expiration, voucher_transactions, product, or sku. # Defaults If you only specify the object type in the request body without specifying the fields, the API will return the following fields per export object: <Note> <Badge color blue>Date and time in the export API</Badge> The exported date and times are always provided in the UTC time zone. </Note> # Fetching particular data sets Using the parameters body parameter, you can narrow down which fields to export and how to filter the results. The fields are an array of strings containing the data that you would like to export. These fields define the headers in the CSV file. The array can be a combination of any of the following available fields: # Orders # Vouchers # Publications # Redemptions # Customers # Points Expirations # Gift Card Transactions # Loyalty Card Transactions # Products # SKUs
|
|
24
24
|
# @param [Hash] opts the optional parameters
|
|
25
25
|
# @option opts [ExportsCreateRequestBody] :exports_create_request_body Specify the details of the export that you would like to create.
|
|
26
26
|
# @return [ExportsCreateResponseBody]
|
|
@@ -30,7 +30,7 @@ module VoucherifySdk
|
|
|
30
30
|
end
|
|
31
31
|
|
|
32
32
|
# Create Export
|
|
33
|
-
# Create export object. The export can be any of the following types: voucher, redemption, publication, customer, order, points_expiration, voucher_transactions, product, or sku. # Defaults If you only specify the object type in the request body without specifying the fields, the API will return the following fields per export object:
|
|
33
|
+
# Create export object. The export can be any of the following types: voucher, redemption, publication, customer, order, points_expiration, voucher_transactions, product, or sku. # Defaults If you only specify the object type in the request body without specifying the fields, the API will return the following fields per export object: <Note> <Badge color blue>Date and time in the export API</Badge> The exported date and times are always provided in the UTC time zone. </Note> # Fetching particular data sets Using the parameters body parameter, you can narrow down which fields to export and how to filter the results. The fields are an array of strings containing the data that you would like to export. These fields define the headers in the CSV file. The array can be a combination of any of the following available fields: # Orders # Vouchers # Publications # Redemptions # Customers # Points Expirations # Gift Card Transactions # Loyalty Card Transactions # Products # SKUs
|
|
34
34
|
# @param [Hash] opts the optional parameters
|
|
35
35
|
# @option opts [ExportsCreateRequestBody] :exports_create_request_body Specify the details of the export that you would like to create.
|
|
36
36
|
# @return [Array<(ExportsCreateResponseBody, Integer, Hash)>] ExportsCreateResponseBody data, response status code and response headers
|
|
@@ -85,7 +85,7 @@ module VoucherifySdk
|
|
|
85
85
|
|
|
86
86
|
# Delete Export
|
|
87
87
|
# This method deletes a previously created export object.
|
|
88
|
-
# @param export_id [String] Unique export object ID of previously created export. This object can be a: voucher, redemption, publication, customer, order, points_expiration, or
|
|
88
|
+
# @param export_id [String] Unique export object ID of previously created export. This object can be a: voucher, redemption, publication, customer, order, points_expiration, voucher_transactions, product, or sku.
|
|
89
89
|
# @param [Hash] opts the optional parameters
|
|
90
90
|
# @return [nil]
|
|
91
91
|
def delete_export(export_id, opts = {})
|
|
@@ -95,7 +95,7 @@ module VoucherifySdk
|
|
|
95
95
|
|
|
96
96
|
# Delete Export
|
|
97
97
|
# This method deletes a previously created export object.
|
|
98
|
-
# @param export_id [String] Unique export object ID of previously created export. This object can be a: voucher, redemption, publication, customer, order, points_expiration, or
|
|
98
|
+
# @param export_id [String] Unique export object ID of previously created export. This object can be a: voucher, redemption, publication, customer, order, points_expiration, voucher_transactions, product, or sku.
|
|
99
99
|
# @param [Hash] opts the optional parameters
|
|
100
100
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
101
101
|
private def delete_export_with_http_info(export_id, opts = {})
|
|
@@ -141,7 +141,7 @@ module VoucherifySdk
|
|
|
141
141
|
end
|
|
142
142
|
|
|
143
143
|
# Download Export
|
|
144
|
-
# Download the contents of the exported CSV file.
|
|
144
|
+
# Download the contents of the exported CSV file. <Note> <Badge color blue>Important notes</Badge> **Base URL:** - https://download.voucherify.io (Europe) - https://us1.download.voucherify.io (US) - https://as1.download.voucherify.io (Asia) **Token:** Can be found within the result parameter of the [Get Export](/api-reference/exports/get-export) method response. </Note>
|
|
145
145
|
# @param export_id [String] Unique export object ID.
|
|
146
146
|
# @param [Hash] opts the optional parameters
|
|
147
147
|
# @option opts [String] :token Token that was issued to the export, to get this token, get the export first
|
|
@@ -152,7 +152,7 @@ module VoucherifySdk
|
|
|
152
152
|
end
|
|
153
153
|
|
|
154
154
|
# Download Export
|
|
155
|
-
# Download the contents of the exported CSV file.
|
|
155
|
+
# Download the contents of the exported CSV file. <Note> <Badge color blue>Important notes</Badge> **Base URL:** - https://download.voucherify.io (Europe) - https://us1.download.voucherify.io (US) - https://as1.download.voucherify.io (Asia) **Token:** Can be found within the result parameter of the [Get Export](/api-reference/exports/get-export) method response. </Note>
|
|
156
156
|
# @param export_id [String] Unique export object ID.
|
|
157
157
|
# @param [Hash] opts the optional parameters
|
|
158
158
|
# @option opts [String] :token Token that was issued to the export, to get this token, get the export first
|
|
@@ -204,7 +204,7 @@ module VoucherifySdk
|
|
|
204
204
|
|
|
205
205
|
# Get Export
|
|
206
206
|
# Retrieves the URL of the downloadable file, which was generated via the [Create Export](/api-reference/exports/create-export) method.
|
|
207
|
-
# @param export_id [String] Unique export object ID of previously created export. This object can be a: voucher, redemption, publication, customer, order, points_expiration, or
|
|
207
|
+
# @param export_id [String] Unique export object ID of previously created export. This object can be a: voucher, redemption, publication, customer, order, points_expiration, voucher_transactions, product, or sku.
|
|
208
208
|
# @param [Hash] opts the optional parameters
|
|
209
209
|
# @return [ExportsGetResponseBody]
|
|
210
210
|
def get_export(export_id, opts = {})
|
|
@@ -214,7 +214,7 @@ module VoucherifySdk
|
|
|
214
214
|
|
|
215
215
|
# Get Export
|
|
216
216
|
# Retrieves the URL of the downloadable file, which was generated via the [Create Export](/api-reference/exports/create-export) method.
|
|
217
|
-
# @param export_id [String] Unique export object ID of previously created export. This object can be a: voucher, redemption, publication, customer, order, points_expiration, or
|
|
217
|
+
# @param export_id [String] Unique export object ID of previously created export. This object can be a: voucher, redemption, publication, customer, order, points_expiration, voucher_transactions, product, or sku.
|
|
218
218
|
# @param [Hash] opts the optional parameters
|
|
219
219
|
# @return [Array<(ExportsGetResponseBody, Integer, Hash)>] ExportsGetResponseBody data, response status code and response headers
|
|
220
220
|
private def get_export_with_http_info(export_id, opts = {})
|