talon_one 4.0.0 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -6
  3. data/docs/ActivateUserRequest.md +17 -0
  4. data/docs/Coupon.md +2 -2
  5. data/docs/CustomerInventory.md +1 -1
  6. data/docs/InlineResponse20044.md +1 -1
  7. data/docs/IntegrationApi.md +11 -11
  8. data/docs/IntegrationCoupon.md +2 -2
  9. data/docs/InventoryCoupon.md +2 -2
  10. data/docs/LoyaltyCardBalances.md +21 -0
  11. data/docs/LoyaltyCardProfileRegistration.md +1 -1
  12. data/docs/ManagementApi.md +187 -69
  13. data/docs/MessageLogEntry.md +1 -3
  14. data/docs/NewCoupons.md +1 -1
  15. data/docs/NewExternalInvitation.md +21 -0
  16. data/docs/UpdateCoupon.md +1 -1
  17. data/docs/UpdateUser.md +1 -1
  18. data/lib/talon_one/api/integration_api.rb +18 -18
  19. data/lib/talon_one/api/management_api.rb +200 -76
  20. data/lib/talon_one/models/activate_user_request.rb +213 -0
  21. data/lib/talon_one/models/additional_campaign_properties.rb +2 -2
  22. data/lib/talon_one/models/campaign.rb +2 -2
  23. data/lib/talon_one/models/coupon.rb +2 -2
  24. data/lib/talon_one/models/customer_inventory.rb +1 -1
  25. data/lib/talon_one/models/inline_response20044.rb +1 -1
  26. data/lib/talon_one/models/integration_coupon.rb +2 -2
  27. data/lib/talon_one/models/inventory_coupon.rb +2 -2
  28. data/lib/talon_one/models/loyalty_card_balances.rb +231 -0
  29. data/lib/talon_one/models/loyalty_card_profile_registration.rb +1 -1
  30. data/lib/talon_one/models/message_log_entry.rb +4 -14
  31. data/lib/talon_one/models/new_coupons.rb +1 -1
  32. data/lib/talon_one/models/new_external_invitation.rb +235 -0
  33. data/lib/talon_one/models/update_coupon.rb +1 -1
  34. data/lib/talon_one/models/update_user.rb +1 -1
  35. data/lib/talon_one/version.rb +1 -1
  36. data/lib/talon_one.rb +3 -0
  37. data/spec/api/integration_api_spec.rb +7 -7
  38. data/spec/api/management_api_spec.rb +43 -19
  39. data/spec/models/activate_user_request_spec.rb +41 -0
  40. data/spec/models/additional_campaign_properties_spec.rb +1 -1
  41. data/spec/models/campaign_spec.rb +1 -1
  42. data/spec/models/loyalty_card_balances_spec.rb +53 -0
  43. data/spec/models/message_log_entry_spec.rb +1 -7
  44. data/spec/models/new_external_invitation_spec.rb +53 -0
  45. metadata +30 -18
@@ -84,7 +84,7 @@ module TalonOne
84
84
  end
85
85
 
86
86
  # Create coupon reservation
87
- # Create a coupon reservation for specified customer profiles on the specified coupon. You can also create a reservation via the Campaign Manager using the [Create coupon code reservation effect](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). Reserving a coupon allows you to associate a coupon code to a given customer(s). You can then list the reserved coupons of a given customer with the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. If a coupon gets created for a specific user, it will automatically appear in their coupons. When a user redeems a coupon, a reservation is automatically created after the redemption and the used coupon will be returned in the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. For example, you can use this endpoint and `List customer data` to create a _coupon wallet_ by reserving coupon codes for a customer, and then displaying their coupon wallet when they visit your store. If the **Coupon visibility** checkbox was selected when [creating a universal code](https://docs.talon.one/docs/product/campaigns/coupons/creating-coupons#generating-a-universal-code), the coupon code is implicitly reserved for all customers, and the code will be returned for all customer profiles in the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. <div class=\"redoc-section\"> <p class=\"title\">Important</p> This endpoint creates a **soft** reservation. _Any_ customer can use a reserved coupon code and proceed to checkout. To create a hard reservation, you can: - use the [Create coupons](https://docs.talon.one/management-api#operation/createCoupons) endpoint or, - use the [Create coupons for multiple recipients](https://docs.talon.one/management-api#operation/createCouponsForMultipleRecipients) endpoint setting the `recipientsIntegrationId` property or, - create a coupon code with the **Reservation mandatory** option then use the [Create coupon code reservation effect](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). This endpoint overrides the reservation limit set for the coupon code during coupon creation. </div> To delete a reservation, use the [Delete reservation](https://docs.talon.one/integration-api#tag/Coupons/operation/deleteCouponReservation) endpoint.
87
+ # Create a coupon reservation for the specified customer profiles on the specified coupon. You can also create a reservation via the Campaign Manager using the [Create coupon code reservation effect](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). - If the **Reservation mandatory** option was selected when creating the specified coupon, the endpoint creates a **hard** reservation, meaning only users who have this coupon code reserved can redeem it. Otherwise, the endpoint creates a **soft** reservation, meaning the coupon will be associated with the specified customer profiles (they show up when using the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint), but any user can redeem it. This can be useful, for example, to display a _coupon wallet_ for customers when they visit your store. - If the **Coupon visibility** option was selected when creating the specified coupon, the coupon code is implicitly soft-reserved for all customers, and the code will be returned for all customer profiles in the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. To delete a reservation, use the [Delete reservation](https://docs.talon.one/integration-api#tag/Coupons/operation/deleteCouponReservation) endpoint.
88
88
  # @param coupon_value [String] The code of the coupon.
89
89
  # @param body [CouponReservations] body
90
90
  # @param [Hash] opts the optional parameters
@@ -95,7 +95,7 @@ module TalonOne
95
95
  end
96
96
 
97
97
  # Create coupon reservation
98
- # Create a coupon reservation for specified customer profiles on the specified coupon. You can also create a reservation via the Campaign Manager using the [Create coupon code reservation effect](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). Reserving a coupon allows you to associate a coupon code to a given customer(s). You can then list the reserved coupons of a given customer with the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. If a coupon gets created for a specific user, it will automatically appear in their coupons. When a user redeems a coupon, a reservation is automatically created after the redemption and the used coupon will be returned in the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. For example, you can use this endpoint and &#x60;List customer data&#x60; to create a _coupon wallet_ by reserving coupon codes for a customer, and then displaying their coupon wallet when they visit your store. If the **Coupon visibility** checkbox was selected when [creating a universal code](https://docs.talon.one/docs/product/campaigns/coupons/creating-coupons#generating-a-universal-code), the coupon code is implicitly reserved for all customers, and the code will be returned for all customer profiles in the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. &lt;div class&#x3D;\&quot;redoc-section\&quot;&gt; &lt;p class&#x3D;\&quot;title\&quot;&gt;Important&lt;/p&gt; This endpoint creates a **soft** reservation. _Any_ customer can use a reserved coupon code and proceed to checkout. To create a hard reservation, you can: - use the [Create coupons](https://docs.talon.one/management-api#operation/createCoupons) endpoint or, - use the [Create coupons for multiple recipients](https://docs.talon.one/management-api#operation/createCouponsForMultipleRecipients) endpoint setting the &#x60;recipientsIntegrationId&#x60; property or, - create a coupon code with the **Reservation mandatory** option then use the [Create coupon code reservation effect](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). This endpoint overrides the reservation limit set for the coupon code during coupon creation. &lt;/div&gt; To delete a reservation, use the [Delete reservation](https://docs.talon.one/integration-api#tag/Coupons/operation/deleteCouponReservation) endpoint.
98
+ # Create a coupon reservation for the specified customer profiles on the specified coupon. You can also create a reservation via the Campaign Manager using the [Create coupon code reservation effect](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). - If the **Reservation mandatory** option was selected when creating the specified coupon, the endpoint creates a **hard** reservation, meaning only users who have this coupon code reserved can redeem it. Otherwise, the endpoint creates a **soft** reservation, meaning the coupon will be associated with the specified customer profiles (they show up when using the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint), but any user can redeem it. This can be useful, for example, to display a _coupon wallet_ for customers when they visit your store. - If the **Coupon visibility** option was selected when creating the specified coupon, the coupon code is implicitly soft-reserved for all customers, and the code will be returned for all customer profiles in the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. To delete a reservation, use the [Delete reservation](https://docs.talon.one/integration-api#tag/Coupons/operation/deleteCouponReservation) endpoint.
99
99
  # @param coupon_value [String] The code of the coupon.
100
100
  # @param body [CouponReservations] body
101
101
  # @param [Hash] opts the optional parameters
@@ -683,12 +683,12 @@ module TalonOne
683
683
  end
684
684
 
685
685
  # Get customer's loyalty points
686
- # Retrieve loyalty ledger balances for the given Integration ID in the specified loyalty program. You can filter balances by date and subledger ID. **Note**: If no filtering options are applied, you retrieve all loyalty balances on the current date for the given integration ID. Loyalty balances are calculated when Talon.One receives your request using the points stored in our database, so retrieving a large number of balances at once can impact performance. For more information, see: - [Managing card-based loyalty program data](https://docs.talon.one/docs/product/loyalty-programs/card-based/managing-loyalty-cards) - [Managing profile-based loyalty program data](https://docs.talon.one/docs/product/loyalty-programs/profile-based/managing-pb-lp-data)
686
+ # Retrieve loyalty ledger balances for the given Integration ID in the specified loyalty program. You can filter balances by date and subledger ID. **Note**: If no filtering options are applied, you retrieve all loyalty balances on the current date for the given integration ID. Loyalty balances are calculated when Talon.One receives your request using the points stored in our database, so retrieving a large number of balances at once can impact performance. For more information, see: - [Managing card-based loyalty program data](https://docs.talon.one/docs/product/loyalty-programs/card-based/managing-loyalty-cards) - [Managing profile-based loyalty program data](https://docs.talon.one/docs/product/loyalty-programs/profile-based/managing-pb-lp-data)
687
687
  # @param loyalty_program_id [Integer] Identifier of the profile-based loyalty program. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
688
688
  # @param integration_id [String] The integration identifier for this customer profile. Must be: - Unique within the deployment. - Stable for the customer. Do not use an ID that the customer can update themselves. For example, you can use a database ID. Once set, you cannot update this identifier.
689
689
  # @param [Hash] opts the optional parameters
690
690
  # @option opts [DateTime] :end_date Used to return expired, active, and pending loyalty balances before this timestamp. You can enter any past, present, or future timestamp value. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, &#x60;T23:59:59&#x60; to specify the end of the day. The time zone setting considered is &#x60;UTC&#x60;. If you do not include a time component, a default time value of &#x60;T00:00:00&#x60; (midnight) in &#x60;UTC&#x60; is considered.
691
- # @option opts [Array<String>] :subledger_id Filter results by one or more subledger IDs. Must be exact match.
691
+ # @option opts [String] :subledger_id The ID of the subledger by which we filter the data.
692
692
  # @return [LoyaltyBalances]
693
693
  def get_loyalty_balances(loyalty_program_id, integration_id, opts = {})
694
694
  data, _status_code, _headers = get_loyalty_balances_with_http_info(loyalty_program_id, integration_id, opts)
@@ -696,12 +696,12 @@ module TalonOne
696
696
  end
697
697
 
698
698
  # Get customer&#39;s loyalty points
699
- # Retrieve loyalty ledger balances for the given Integration ID in the specified loyalty program. You can filter balances by date and subledger ID. **Note**: If no filtering options are applied, you retrieve all loyalty balances on the current date for the given integration ID. Loyalty balances are calculated when Talon.One receives your request using the points stored in our database, so retrieving a large number of balances at once can impact performance. For more information, see: - [Managing card-based loyalty program data](https://docs.talon.one/docs/product/loyalty-programs/card-based/managing-loyalty-cards) - [Managing profile-based loyalty program data](https://docs.talon.one/docs/product/loyalty-programs/profile-based/managing-pb-lp-data)
699
+ # Retrieve loyalty ledger balances for the given Integration ID in the specified loyalty program. You can filter balances by date and subledger ID. **Note**: If no filtering options are applied, you retrieve all loyalty balances on the current date for the given integration ID. Loyalty balances are calculated when Talon.One receives your request using the points stored in our database, so retrieving a large number of balances at once can impact performance. For more information, see: - [Managing card-based loyalty program data](https://docs.talon.one/docs/product/loyalty-programs/card-based/managing-loyalty-cards) - [Managing profile-based loyalty program data](https://docs.talon.one/docs/product/loyalty-programs/profile-based/managing-pb-lp-data)
700
700
  # @param loyalty_program_id [Integer] Identifier of the profile-based loyalty program. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
701
701
  # @param integration_id [String] The integration identifier for this customer profile. Must be: - Unique within the deployment. - Stable for the customer. Do not use an ID that the customer can update themselves. For example, you can use a database ID. Once set, you cannot update this identifier.
702
702
  # @param [Hash] opts the optional parameters
703
703
  # @option opts [DateTime] :end_date Used to return expired, active, and pending loyalty balances before this timestamp. You can enter any past, present, or future timestamp value. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, &#x60;T23:59:59&#x60; to specify the end of the day. The time zone setting considered is &#x60;UTC&#x60;. If you do not include a time component, a default time value of &#x60;T00:00:00&#x60; (midnight) in &#x60;UTC&#x60; is considered.
704
- # @option opts [Array<String>] :subledger_id Filter results by one or more subledger IDs. Must be exact match.
704
+ # @option opts [String] :subledger_id The ID of the subledger by which we filter the data.
705
705
  # @return [Array<(LoyaltyBalances, Integer, Hash)>] LoyaltyBalances data, response status code and response headers
706
706
  def get_loyalty_balances_with_http_info(loyalty_program_id, integration_id, opts = {})
707
707
  if @api_client.config.debugging
@@ -721,7 +721,7 @@ module TalonOne
721
721
  # query parameters
722
722
  query_params = opts[:query_params] || {}
723
723
  query_params[:'endDate'] = opts[:'end_date'] if !opts[:'end_date'].nil?
724
- query_params[:'subledgerId'] = @api_client.build_collection_param(opts[:'subledger_id'], :csv) if !opts[:'subledger_id'].nil?
724
+ query_params[:'subledgerId'] = opts[:'subledger_id'] if !opts[:'subledger_id'].nil?
725
725
 
726
726
  # header parameters
727
727
  header_params = opts[:header_params] || {}
@@ -763,7 +763,7 @@ module TalonOne
763
763
  # @param [Hash] opts the optional parameters
764
764
  # @option opts [DateTime] :end_date Used to return expired, active, and pending loyalty balances before this timestamp. You can enter any past, present, or future timestamp value. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, &#x60;T23:59:59&#x60; to specify the end of the day. The time zone setting considered is &#x60;UTC&#x60;. If you do not include a time component, a default time value of &#x60;T00:00:00&#x60; (midnight) in &#x60;UTC&#x60; is considered.
765
765
  # @option opts [Array<String>] :subledger_id Filter results by one or more subledger IDs. Must be exact match.
766
- # @return [LoyaltyBalances]
766
+ # @return [LoyaltyCardBalances]
767
767
  def get_loyalty_card_balances(loyalty_program_id, loyalty_card_id, opts = {})
768
768
  data, _status_code, _headers = get_loyalty_card_balances_with_http_info(loyalty_program_id, loyalty_card_id, opts)
769
769
  data
@@ -776,7 +776,7 @@ module TalonOne
776
776
  # @param [Hash] opts the optional parameters
777
777
  # @option opts [DateTime] :end_date Used to return expired, active, and pending loyalty balances before this timestamp. You can enter any past, present, or future timestamp value. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, &#x60;T23:59:59&#x60; to specify the end of the day. The time zone setting considered is &#x60;UTC&#x60;. If you do not include a time component, a default time value of &#x60;T00:00:00&#x60; (midnight) in &#x60;UTC&#x60; is considered.
778
778
  # @option opts [Array<String>] :subledger_id Filter results by one or more subledger IDs. Must be exact match.
779
- # @return [Array<(LoyaltyBalances, Integer, Hash)>] LoyaltyBalances data, response status code and response headers
779
+ # @return [Array<(LoyaltyCardBalances, Integer, Hash)>] LoyaltyCardBalances data, response status code and response headers
780
780
  def get_loyalty_card_balances_with_http_info(loyalty_program_id, loyalty_card_id, opts = {})
781
781
  if @api_client.config.debugging
782
782
  @api_client.config.logger.debug 'Calling API: IntegrationApi.get_loyalty_card_balances ...'
@@ -813,7 +813,7 @@ module TalonOne
813
813
  post_body = opts[:body]
814
814
 
815
815
  # return_type
816
- return_type = opts[:return_type] || 'LoyaltyBalances'
816
+ return_type = opts[:return_type] || 'LoyaltyCardBalances'
817
817
 
818
818
  # auth_names
819
819
  auth_names = opts[:auth_names] || ['api_key_v1']
@@ -840,7 +840,7 @@ module TalonOne
840
840
  # @param loyalty_card_id [String] Identifier of the loyalty card. You can get the identifier with the [List loyalty cards](https://docs.talon.one/management-api#tag/Loyalty-cards/operation/getLoyaltyCards) endpoint.
841
841
  # @param [Hash] opts the optional parameters
842
842
  # @option opts [String] :status Filter points based on their status. (default to 'active')
843
- # @option opts [String] :subledger_id The ID of the subledger by which we filter the data.
843
+ # @option opts [Array<String>] :subledger_id Filter results by one or more subledger IDs. Must be exact match.
844
844
  # @option opts [Integer] :page_size The number of items in the response. (default to 50)
845
845
  # @option opts [Integer] :skip The number of items to skip when paging through large result sets.
846
846
  # @return [InlineResponse2003]
@@ -855,7 +855,7 @@ module TalonOne
855
855
  # @param loyalty_card_id [String] Identifier of the loyalty card. You can get the identifier with the [List loyalty cards](https://docs.talon.one/management-api#tag/Loyalty-cards/operation/getLoyaltyCards) endpoint.
856
856
  # @param [Hash] opts the optional parameters
857
857
  # @option opts [String] :status Filter points based on their status.
858
- # @option opts [String] :subledger_id The ID of the subledger by which we filter the data.
858
+ # @option opts [Array<String>] :subledger_id Filter results by one or more subledger IDs. Must be exact match.
859
859
  # @option opts [Integer] :page_size The number of items in the response.
860
860
  # @option opts [Integer] :skip The number of items to skip when paging through large result sets.
861
861
  # @return [Array<(InlineResponse2003, Integer, Hash)>] InlineResponse2003 data, response status code and response headers
@@ -893,7 +893,7 @@ module TalonOne
893
893
  # query parameters
894
894
  query_params = opts[:query_params] || {}
895
895
  query_params[:'status'] = opts[:'status'] if !opts[:'status'].nil?
896
- query_params[:'subledgerId'] = opts[:'subledger_id'] if !opts[:'subledger_id'].nil?
896
+ query_params[:'subledgerId'] = @api_client.build_collection_param(opts[:'subledger_id'], :csv) if !opts[:'subledger_id'].nil?
897
897
  query_params[:'pageSize'] = opts[:'page_size'] if !opts[:'page_size'].nil?
898
898
  query_params[:'skip'] = opts[:'skip'] if !opts[:'skip'].nil?
899
899
 
@@ -935,7 +935,7 @@ module TalonOne
935
935
  # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
936
936
  # @param loyalty_card_id [String] Identifier of the loyalty card. You can get the identifier with the [List loyalty cards](https://docs.talon.one/management-api#tag/Loyalty-cards/operation/getLoyaltyCards) endpoint.
937
937
  # @param [Hash] opts the optional parameters
938
- # @option opts [String] :subledger_id The ID of the subledger by which we filter the data.
938
+ # @option opts [Array<String>] :subledger_id Filter results by one or more subledger IDs. Must be exact match.
939
939
  # @option opts [String] :loyalty_transaction_type Filter results by loyalty transaction type: - &#x60;manual&#x60;: Loyalty transaction that was done manually. - &#x60;session&#x60;: Loyalty transaction that resulted from a customer session. - &#x60;import&#x60;: Loyalty transaction that was imported from a CSV file.
940
940
  # @option opts [DateTime] :start_date Date and time from which results are returned. Results are filtered by transaction creation date. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, &#x60;T23:59:59&#x60; to specify the end of the day. The time zone setting considered is &#x60;UTC&#x60;. If you do not include a time component, a default time value of &#x60;T00:00:00&#x60; (midnight) in &#x60;UTC&#x60; is considered.
941
941
  # @option opts [DateTime] :end_date Date and time by which results are returned. Results are filtered by transaction creation date. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, &#x60;T23:59:59&#x60; to specify the end of the day. The time zone setting considered is &#x60;UTC&#x60;. If you do not include a time component, a default time value of &#x60;T00:00:00&#x60; (midnight) in &#x60;UTC&#x60; is considered.
@@ -952,7 +952,7 @@ module TalonOne
952
952
  # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
953
953
  # @param loyalty_card_id [String] Identifier of the loyalty card. You can get the identifier with the [List loyalty cards](https://docs.talon.one/management-api#tag/Loyalty-cards/operation/getLoyaltyCards) endpoint.
954
954
  # @param [Hash] opts the optional parameters
955
- # @option opts [String] :subledger_id The ID of the subledger by which we filter the data.
955
+ # @option opts [Array<String>] :subledger_id Filter results by one or more subledger IDs. Must be exact match.
956
956
  # @option opts [String] :loyalty_transaction_type Filter results by loyalty transaction type: - &#x60;manual&#x60;: Loyalty transaction that was done manually. - &#x60;session&#x60;: Loyalty transaction that resulted from a customer session. - &#x60;import&#x60;: Loyalty transaction that was imported from a CSV file.
957
957
  # @option opts [DateTime] :start_date Date and time from which results are returned. Results are filtered by transaction creation date. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, &#x60;T23:59:59&#x60; to specify the end of the day. The time zone setting considered is &#x60;UTC&#x60;. If you do not include a time component, a default time value of &#x60;T00:00:00&#x60; (midnight) in &#x60;UTC&#x60; is considered.
958
958
  # @option opts [DateTime] :end_date Date and time by which results are returned. Results are filtered by transaction creation date. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, &#x60;T23:59:59&#x60; to specify the end of the day. The time zone setting considered is &#x60;UTC&#x60;. If you do not include a time component, a default time value of &#x60;T00:00:00&#x60; (midnight) in &#x60;UTC&#x60; is considered.
@@ -992,7 +992,7 @@ module TalonOne
992
992
 
993
993
  # query parameters
994
994
  query_params = opts[:query_params] || {}
995
- query_params[:'subledgerId'] = opts[:'subledger_id'] if !opts[:'subledger_id'].nil?
995
+ query_params[:'subledgerId'] = @api_client.build_collection_param(opts[:'subledger_id'], :csv) if !opts[:'subledger_id'].nil?
996
996
  query_params[:'loyaltyTransactionType'] = opts[:'loyalty_transaction_type'] if !opts[:'loyalty_transaction_type'].nil?
997
997
  query_params[:'startDate'] = opts[:'start_date'] if !opts[:'start_date'].nil?
998
998
  query_params[:'endDate'] = opts[:'end_date'] if !opts[:'end_date'].nil?
@@ -1223,7 +1223,7 @@ module TalonOne
1223
1223
  end
1224
1224
 
1225
1225
  # List customers that have this coupon reserved
1226
- # Return all customers that have this coupon marked as reserved. Coupons are reserved in the following ways: - To create a soft reservation (any customer can use the coupon), use the [Create coupon reservation](#operation/createCouponReservation) endpoint. - To create a hard reservation (only the given customer can use the coupon), create a coupon in the Campaign Manager for a given `recipientIntegrationId` or use the [Create coupons](https://docs.talon.one/management-api#operation/createCoupons) or [Create coupons for multiple recipients](https://docs.talon.one/management-api#operation/createCouponsForMultipleRecipients) endpoints.
1226
+ # Return all customers that have this coupon marked as reserved. This includes hard and soft reservations.
1227
1227
  # @param coupon_value [String] The code of the coupon.
1228
1228
  # @param [Hash] opts the optional parameters
1229
1229
  # @return [InlineResponse200]
@@ -1233,7 +1233,7 @@ module TalonOne
1233
1233
  end
1234
1234
 
1235
1235
  # List customers that have this coupon reserved
1236
- # Return all customers that have this coupon marked as reserved. Coupons are reserved in the following ways: - To create a soft reservation (any customer can use the coupon), use the [Create coupon reservation](#operation/createCouponReservation) endpoint. - To create a hard reservation (only the given customer can use the coupon), create a coupon in the Campaign Manager for a given &#x60;recipientIntegrationId&#x60; or use the [Create coupons](https://docs.talon.one/management-api#operation/createCoupons) or [Create coupons for multiple recipients](https://docs.talon.one/management-api#operation/createCouponsForMultipleRecipients) endpoints.
1236
+ # Return all customers that have this coupon marked as reserved. This includes hard and soft reservations.
1237
1237
  # @param coupon_value [String] The code of the coupon.
1238
1238
  # @param [Hash] opts the optional parameters
1239
1239
  # @return [Array<(InlineResponse200, Integer, Hash)>] InlineResponse200 data, response status code and response headers
@@ -19,6 +19,68 @@ module TalonOne
19
19
  def initialize(api_client = ApiClient.default)
20
20
  @api_client = api_client
21
21
  end
22
+ # Activate user by email address
23
+ # Activate a deactivated user by their email address.
24
+ # @param body [ActivateUserRequest] body
25
+ # @param [Hash] opts the optional parameters
26
+ # @return [nil]
27
+ def activate_user_by_email(body, opts = {})
28
+ activate_user_by_email_with_http_info(body, opts)
29
+ nil
30
+ end
31
+
32
+ # Activate user by email address
33
+ # Activate a deactivated user by their email address.
34
+ # @param body [ActivateUserRequest] body
35
+ # @param [Hash] opts the optional parameters
36
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
37
+ def activate_user_by_email_with_http_info(body, opts = {})
38
+ if @api_client.config.debugging
39
+ @api_client.config.logger.debug 'Calling API: ManagementApi.activate_user_by_email ...'
40
+ end
41
+ # verify the required parameter 'body' is set
42
+ if @api_client.config.client_side_validation && body.nil?
43
+ fail ArgumentError, "Missing the required parameter 'body' when calling ManagementApi.activate_user_by_email"
44
+ end
45
+ # resource path
46
+ local_var_path = '/v1/users/activate'
47
+
48
+ # query parameters
49
+ query_params = opts[:query_params] || {}
50
+
51
+ # header parameters
52
+ header_params = opts[:header_params] || {}
53
+ # HTTP header 'Content-Type'
54
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
55
+
56
+ # form parameters
57
+ form_params = opts[:form_params] || {}
58
+
59
+ # http body (model)
60
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
61
+
62
+ # return_type
63
+ return_type = opts[:return_type]
64
+
65
+ # auth_names
66
+ auth_names = opts[:auth_names] || ['management_key', 'manager_auth']
67
+
68
+ new_options = opts.merge(
69
+ :header_params => header_params,
70
+ :query_params => query_params,
71
+ :form_params => form_params,
72
+ :body => post_body,
73
+ :auth_names => auth_names,
74
+ :return_type => return_type
75
+ )
76
+
77
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
78
+ if @api_client.config.debugging
79
+ @api_client.config.logger.debug "API called: ManagementApi#activate_user_by_email\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
80
+ end
81
+ return data, status_code, headers
82
+ end
83
+
22
84
  # Add points to card
23
85
  # Add points to the given loyalty card in the specified card-based loyalty program.
24
86
  # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
@@ -2489,7 +2551,7 @@ module TalonOne
2489
2551
  end
2490
2552
 
2491
2553
  # Export coupons
2492
- # Download a CSV file containing the coupons that match the given properties. **Tip:** If the exported CSV file is too large to view, you can [split it into multiple files](https://www.makeuseof.com/tag/how-to-split-a-huge-csv-excel-workbook-into-seperate-files/). The CSV file can contain the following columns: - `accountid`: The ID of your deployment. - `applicationid`: The ID of the Application this coupon is related to. - `attributes`: A json object describing _custom_ referral attribute names and their values. - `batchid`: The ID of the batch this coupon is part of. - `campaignid`: The ID of the campaign this coupon is related to. - `counter`: The number of times this coupon has been redeemed. - `created`: The creation date of the coupon code. - `deleted`: Whether the coupon code is deleted. - `deleted_changelogid`: The ID of the delete event in the logs. - `discount_counter`: The amount of discount given by this coupon. - `discount_limitval`: The maximum discount amount that can be given be this coupon. - `expirydate`: The end date in RFC3339 of the code redemption period. - `id`: The internal ID of the coupon code. - `importid`: The ID of the import job that created this coupon. - `is_reservation_mandatory`: Whether this coupon requires a reservation to be redeemed. - `limits`: The limits set on this coupon. - `limitval`: The maximum number of redemptions of this code. - `recipientintegrationid`: The integration ID of the customer considered as recipient of the coupon. Only the customer with this integration ID can redeem the corresponding coupon code. Learn about [coupon reservation](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). - `referralid`: The ID of the referral code that triggered the creation of this coupon (create coupon effect). - `reservation`: Whether the coupon is reserved. - `reservation_counter`: How many times this coupon has been reserved. - `reservation_limitval`: The maximum of number of reservations this coupon can have. - `startdate`: The start date in RFC3339 of the code redemption period. - `value`: The coupon code.
2554
+ # Download a CSV file containing the coupons that match the given properties. **Tip:** If the exported CSV file is too large to view, you can [split it into multiple files](https://www.makeuseof.com/tag/how-to-split-a-huge-csv-excel-workbook-into-seperate-files/). The CSV file can contain the following columns: - `accountid`: The ID of your deployment. - `applicationid`: The ID of the Application this coupon is related to. - `attributes`: A json object describing _custom_ referral attribute names and their values. - `batchid`: The ID of the batch this coupon is part of. - `campaignid`: The ID of the campaign this coupon is related to. - `counter`: The number of times this coupon has been redeemed. - `created`: The creation date of the coupon code. - `deleted`: Whether the coupon code is deleted. - `deleted_changelogid`: The ID of the delete event in the logs. - `discount_counter`: The amount of discount given by this coupon. - `discount_limitval`: The maximum discount amount that can be given be this coupon. - `expirydate`: The end date in RFC3339 of the code redemption period. - `id`: The internal ID of the coupon code. - `importid`: The ID of the import job that created this coupon. - `is_reservation_mandatory`: Whether this coupon requires a reservation to be redeemed. - `limits`: The limits set on this coupon. - `limitval`: The maximum number of redemptions of this code. - `recipientintegrationid`: The integration ID of the recipient of the coupon. Only the customer with this integration ID can redeem this code. Available only for personal codes. - `referralid`: The ID of the referral code that triggered the creation of this coupon (create coupon effect). - `reservation`: Whether the coupon can be reserved for multiple customers. - `reservation_counter`: How many times this coupon has been reserved. - `reservation_limitval`: The maximum of number of reservations this coupon can have. - `startdate`: The start date in RFC3339 of the code redemption period. - `value`: The coupon code.
2493
2555
  # @param application_id [Integer] The ID of the Application. It is displayed in your Talon.One deployment URL.
2494
2556
  # @param [Hash] opts the optional parameters
2495
2557
  # @option opts [Float] :campaign_id Filter results by campaign.
@@ -2513,7 +2575,7 @@ module TalonOne
2513
2575
  end
2514
2576
 
2515
2577
  # Export coupons
2516
- # Download a CSV file containing the coupons that match the given properties. **Tip:** If the exported CSV file is too large to view, you can [split it into multiple files](https://www.makeuseof.com/tag/how-to-split-a-huge-csv-excel-workbook-into-seperate-files/). The CSV file can contain the following columns: - &#x60;accountid&#x60;: The ID of your deployment. - &#x60;applicationid&#x60;: The ID of the Application this coupon is related to. - &#x60;attributes&#x60;: A json object describing _custom_ referral attribute names and their values. - &#x60;batchid&#x60;: The ID of the batch this coupon is part of. - &#x60;campaignid&#x60;: The ID of the campaign this coupon is related to. - &#x60;counter&#x60;: The number of times this coupon has been redeemed. - &#x60;created&#x60;: The creation date of the coupon code. - &#x60;deleted&#x60;: Whether the coupon code is deleted. - &#x60;deleted_changelogid&#x60;: The ID of the delete event in the logs. - &#x60;discount_counter&#x60;: The amount of discount given by this coupon. - &#x60;discount_limitval&#x60;: The maximum discount amount that can be given be this coupon. - &#x60;expirydate&#x60;: The end date in RFC3339 of the code redemption period. - &#x60;id&#x60;: The internal ID of the coupon code. - &#x60;importid&#x60;: The ID of the import job that created this coupon. - &#x60;is_reservation_mandatory&#x60;: Whether this coupon requires a reservation to be redeemed. - &#x60;limits&#x60;: The limits set on this coupon. - &#x60;limitval&#x60;: The maximum number of redemptions of this code. - &#x60;recipientintegrationid&#x60;: The integration ID of the customer considered as recipient of the coupon. Only the customer with this integration ID can redeem the corresponding coupon code. Learn about [coupon reservation](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). - &#x60;referralid&#x60;: The ID of the referral code that triggered the creation of this coupon (create coupon effect). - &#x60;reservation&#x60;: Whether the coupon is reserved. - &#x60;reservation_counter&#x60;: How many times this coupon has been reserved. - &#x60;reservation_limitval&#x60;: The maximum of number of reservations this coupon can have. - &#x60;startdate&#x60;: The start date in RFC3339 of the code redemption period. - &#x60;value&#x60;: The coupon code.
2578
+ # Download a CSV file containing the coupons that match the given properties. **Tip:** If the exported CSV file is too large to view, you can [split it into multiple files](https://www.makeuseof.com/tag/how-to-split-a-huge-csv-excel-workbook-into-seperate-files/). The CSV file can contain the following columns: - &#x60;accountid&#x60;: The ID of your deployment. - &#x60;applicationid&#x60;: The ID of the Application this coupon is related to. - &#x60;attributes&#x60;: A json object describing _custom_ referral attribute names and their values. - &#x60;batchid&#x60;: The ID of the batch this coupon is part of. - &#x60;campaignid&#x60;: The ID of the campaign this coupon is related to. - &#x60;counter&#x60;: The number of times this coupon has been redeemed. - &#x60;created&#x60;: The creation date of the coupon code. - &#x60;deleted&#x60;: Whether the coupon code is deleted. - &#x60;deleted_changelogid&#x60;: The ID of the delete event in the logs. - &#x60;discount_counter&#x60;: The amount of discount given by this coupon. - &#x60;discount_limitval&#x60;: The maximum discount amount that can be given be this coupon. - &#x60;expirydate&#x60;: The end date in RFC3339 of the code redemption period. - &#x60;id&#x60;: The internal ID of the coupon code. - &#x60;importid&#x60;: The ID of the import job that created this coupon. - &#x60;is_reservation_mandatory&#x60;: Whether this coupon requires a reservation to be redeemed. - &#x60;limits&#x60;: The limits set on this coupon. - &#x60;limitval&#x60;: The maximum number of redemptions of this code. - &#x60;recipientintegrationid&#x60;: The integration ID of the recipient of the coupon. Only the customer with this integration ID can redeem this code. Available only for personal codes. - &#x60;referralid&#x60;: The ID of the referral code that triggered the creation of this coupon (create coupon effect). - &#x60;reservation&#x60;: Whether the coupon can be reserved for multiple customers. - &#x60;reservation_counter&#x60;: How many times this coupon has been reserved. - &#x60;reservation_limitval&#x60;: The maximum of number of reservations this coupon can have. - &#x60;startdate&#x60;: The start date in RFC3339 of the code redemption period. - &#x60;value&#x60;: The coupon code.
2517
2579
  # @param application_id [Integer] The ID of the Application. It is displayed in your Talon.One deployment URL.
2518
2580
  # @param [Hash] opts the optional parameters
2519
2581
  # @option opts [Float] :campaign_id Filter results by campaign.
@@ -3980,62 +4042,6 @@ module TalonOne
3980
4042
  return data, status_code, headers
3981
4043
  end
3982
4044
 
3983
- # List roles
3984
- # List all roles.
3985
- # @param [Hash] opts the optional parameters
3986
- # @return [InlineResponse20044]
3987
- def get_all_roles(opts = {})
3988
- data, _status_code, _headers = get_all_roles_with_http_info(opts)
3989
- data
3990
- end
3991
-
3992
- # List roles
3993
- # List all roles.
3994
- # @param [Hash] opts the optional parameters
3995
- # @return [Array<(InlineResponse20044, Integer, Hash)>] InlineResponse20044 data, response status code and response headers
3996
- def get_all_roles_with_http_info(opts = {})
3997
- if @api_client.config.debugging
3998
- @api_client.config.logger.debug 'Calling API: ManagementApi.get_all_roles ...'
3999
- end
4000
- # resource path
4001
- local_var_path = '/v1/roles'
4002
-
4003
- # query parameters
4004
- query_params = opts[:query_params] || {}
4005
-
4006
- # header parameters
4007
- header_params = opts[:header_params] || {}
4008
- # HTTP header 'Accept' (if needed)
4009
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
4010
-
4011
- # form parameters
4012
- form_params = opts[:form_params] || {}
4013
-
4014
- # http body (model)
4015
- post_body = opts[:body]
4016
-
4017
- # return_type
4018
- return_type = opts[:return_type] || 'InlineResponse20044'
4019
-
4020
- # auth_names
4021
- auth_names = opts[:auth_names] || ['management_key', 'manager_auth']
4022
-
4023
- new_options = opts.merge(
4024
- :header_params => header_params,
4025
- :query_params => query_params,
4026
- :form_params => form_params,
4027
- :body => post_body,
4028
- :auth_names => auth_names,
4029
- :return_type => return_type
4030
- )
4031
-
4032
- data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
4033
- if @api_client.config.debugging
4034
- @api_client.config.logger.debug "API called: ManagementApi#get_all_roles\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
4035
- end
4036
- return data, status_code, headers
4037
- end
4038
-
4039
4045
  # Get Application
4040
4046
  # Get the application specified by the ID.
4041
4047
  # @param application_id [Integer] The ID of the Application. It is displayed in your Talon.One deployment URL.
@@ -7707,30 +7713,30 @@ module TalonOne
7707
7713
  end
7708
7714
 
7709
7715
  # Get role
7710
- # Get the details of a specific role. To see all the roles, use [List roles](#operation/getAllRoles).
7711
- # @param role_id [Integer] ID of role. **Note**: To find the ID of a role, use the [List roles](https://docs.talon.one/management-api#tag/Roles/operation/getAllRoles) endpoint.
7716
+ # Get the details of a specific role. To see all the roles, use the [List roles](/management-api#tag/Roles/operation/listAllRolesV2) endpoint.
7717
+ # @param role_id [Integer] The ID of role. **Note**: To find the ID of a role, use the [List roles](/management-api#tag/Roles/operation/listAllRolesV2) endpoint.
7712
7718
  # @param [Hash] opts the optional parameters
7713
- # @return [Role]
7714
- def get_role(role_id, opts = {})
7715
- data, _status_code, _headers = get_role_with_http_info(role_id, opts)
7719
+ # @return [RoleV2]
7720
+ def get_role_v2(role_id, opts = {})
7721
+ data, _status_code, _headers = get_role_v2_with_http_info(role_id, opts)
7716
7722
  data
7717
7723
  end
7718
7724
 
7719
7725
  # Get role
7720
- # Get the details of a specific role. To see all the roles, use [List roles](#operation/getAllRoles).
7721
- # @param role_id [Integer] ID of role. **Note**: To find the ID of a role, use the [List roles](https://docs.talon.one/management-api#tag/Roles/operation/getAllRoles) endpoint.
7726
+ # Get the details of a specific role. To see all the roles, use the [List roles](/management-api#tag/Roles/operation/listAllRolesV2) endpoint.
7727
+ # @param role_id [Integer] The ID of role. **Note**: To find the ID of a role, use the [List roles](/management-api#tag/Roles/operation/listAllRolesV2) endpoint.
7722
7728
  # @param [Hash] opts the optional parameters
7723
- # @return [Array<(Role, Integer, Hash)>] Role data, response status code and response headers
7724
- def get_role_with_http_info(role_id, opts = {})
7729
+ # @return [Array<(RoleV2, Integer, Hash)>] RoleV2 data, response status code and response headers
7730
+ def get_role_v2_with_http_info(role_id, opts = {})
7725
7731
  if @api_client.config.debugging
7726
- @api_client.config.logger.debug 'Calling API: ManagementApi.get_role ...'
7732
+ @api_client.config.logger.debug 'Calling API: ManagementApi.get_role_v2 ...'
7727
7733
  end
7728
7734
  # verify the required parameter 'role_id' is set
7729
7735
  if @api_client.config.client_side_validation && role_id.nil?
7730
- fail ArgumentError, "Missing the required parameter 'role_id' when calling ManagementApi.get_role"
7736
+ fail ArgumentError, "Missing the required parameter 'role_id' when calling ManagementApi.get_role_v2"
7731
7737
  end
7732
7738
  # resource path
7733
- local_var_path = '/v1/roles/{roleId}'.sub('{' + 'roleId' + '}', CGI.escape(role_id.to_s))
7739
+ local_var_path = '/v2/roles/{roleId}'.sub('{' + 'roleId' + '}', CGI.escape(role_id.to_s))
7734
7740
 
7735
7741
  # query parameters
7736
7742
  query_params = opts[:query_params] || {}
@@ -7747,7 +7753,7 @@ module TalonOne
7747
7753
  post_body = opts[:body]
7748
7754
 
7749
7755
  # return_type
7750
- return_type = opts[:return_type] || 'Role'
7756
+ return_type = opts[:return_type] || 'RoleV2'
7751
7757
 
7752
7758
  # auth_names
7753
7759
  auth_names = opts[:auth_names] || ['management_key', 'manager_auth']
@@ -7763,7 +7769,7 @@ module TalonOne
7763
7769
 
7764
7770
  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
7765
7771
  if @api_client.config.debugging
7766
- @api_client.config.logger.debug "API called: ManagementApi#get_role\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
7772
+ @api_client.config.logger.debug "API called: ManagementApi#get_role_v2\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
7767
7773
  end
7768
7774
  return data, status_code, headers
7769
7775
  end
@@ -8758,7 +8764,7 @@ module TalonOne
8758
8764
  end
8759
8765
 
8760
8766
  # Import coupons
8761
- # Upload a CSV file containing the coupons that should be created. The file should be sent as multipart data. The CSV file contains the following columns: - `value` (required): The coupon code. - `expirydate`: The end date in RFC3339 of the code redemption period. - `startdate`: The start date in RFC3339 of the code redemption period. - `recipientintegrationid`: The integration ID of the customer who receives the coupon. Only the customer with this integration ID can redeem the corresponding coupon code. Learn about [coupon reservation](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). - `limitval`: The maximum number of redemptions of this code. For unlimited redemptions, use `0`. Defaults to `1` when not provided. - `discountlimit`: The total discount value that the code can give. This is typically used to represent a gift card value. - `attributes`: A JSON object describing _custom_ coupon attribute names and their values, enclosed with double quotation marks. For example, if you created a [custom attribute](https://docs.talon.one/docs/dev/concepts/attributes#custom-attributes) called `category` associated with the coupon entity, the object in the CSV file, when opened in a text editor, must be: `\"{\"category\": \"10_off\"}\"`. You can use the time zone of your choice. It is converted to UTC internally by Talon.One. **Note:** We recommend limiting your file size to 500MB. **Example:** ```text \"value\",\"expirydate\",\"startdate\",\"recipientintegrationid\",\"limitval\",\"attributes\",\"discountlimit\" COUP1,2018-07-01T04:00:00Z,2018-05-01T04:00:00Z,cust123,1,\"{\"\"Category\"\": \"\"10_off\"\"}\",2.4 ``` Once imported, you can find the `batchId` in the Campaign Manager or by using [List coupons](#tag/Coupons/operation/getCouponsWithoutTotalCount).
8767
+ # Upload a CSV file containing the coupons that should be created. The file should be sent as multipart data. The CSV file contains the following columns: - `value` (required): The coupon code. - `expirydate`: The end date in RFC3339 of the code redemption period. - `startdate`: The start date in RFC3339 of the code redemption period. - `recipientintegrationid`: The integration ID of the recipient of the coupon. Only the customer with this integration ID can redeem this code. Available only for personal codes. - `limitval`: The maximum number of redemptions of this code. For unlimited redemptions, use `0`. Defaults to `1` when not provided. - `discountlimit`: The total discount value that the code can give. This is typically used to represent a gift card value. - `attributes`: A JSON object describing _custom_ coupon attribute names and their values, enclosed with double quotation marks. For example, if you created a [custom attribute](https://docs.talon.one/docs/dev/concepts/attributes#custom-attributes) called `category` associated with the coupon entity, the object in the CSV file, when opened in a text editor, must be: `\"{\"category\": \"10_off\"}\"`. You can use the time zone of your choice. It is converted to UTC internally by Talon.One. **Note:** We recommend limiting your file size to 500MB. **Example:** ```text \"value\",\"expirydate\",\"startdate\",\"recipientintegrationid\",\"limitval\",\"attributes\",\"discountlimit\" COUP1,2018-07-01T04:00:00Z,2018-05-01T04:00:00Z,cust123,1,\"{\"\"Category\"\": \"\"10_off\"\"}\",2.4 ``` Once imported, you can find the `batchId` in the Campaign Manager or by using [List coupons](#tag/Coupons/operation/getCouponsWithoutTotalCount).
8762
8768
  # @param application_id [Integer] The ID of the Application. It is displayed in your Talon.One deployment URL.
8763
8769
  # @param campaign_id [Integer] The ID of the campaign. It is displayed in your Talon.One deployment URL.
8764
8770
  # @param [Hash] opts the optional parameters
@@ -8771,7 +8777,7 @@ module TalonOne
8771
8777
  end
8772
8778
 
8773
8779
  # Import coupons
8774
- # Upload a CSV file containing the coupons that should be created. The file should be sent as multipart data. The CSV file contains the following columns: - &#x60;value&#x60; (required): The coupon code. - &#x60;expirydate&#x60;: The end date in RFC3339 of the code redemption period. - &#x60;startdate&#x60;: The start date in RFC3339 of the code redemption period. - &#x60;recipientintegrationid&#x60;: The integration ID of the customer who receives the coupon. Only the customer with this integration ID can redeem the corresponding coupon code. Learn about [coupon reservation](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). - &#x60;limitval&#x60;: The maximum number of redemptions of this code. For unlimited redemptions, use &#x60;0&#x60;. Defaults to &#x60;1&#x60; when not provided. - &#x60;discountlimit&#x60;: The total discount value that the code can give. This is typically used to represent a gift card value. - &#x60;attributes&#x60;: A JSON object describing _custom_ coupon attribute names and their values, enclosed with double quotation marks. For example, if you created a [custom attribute](https://docs.talon.one/docs/dev/concepts/attributes#custom-attributes) called &#x60;category&#x60; associated with the coupon entity, the object in the CSV file, when opened in a text editor, must be: &#x60;\&quot;{\&quot;category\&quot;: \&quot;10_off\&quot;}\&quot;&#x60;. You can use the time zone of your choice. It is converted to UTC internally by Talon.One. **Note:** We recommend limiting your file size to 500MB. **Example:** &#x60;&#x60;&#x60;text \&quot;value\&quot;,\&quot;expirydate\&quot;,\&quot;startdate\&quot;,\&quot;recipientintegrationid\&quot;,\&quot;limitval\&quot;,\&quot;attributes\&quot;,\&quot;discountlimit\&quot; COUP1,2018-07-01T04:00:00Z,2018-05-01T04:00:00Z,cust123,1,\&quot;{\&quot;\&quot;Category\&quot;\&quot;: \&quot;\&quot;10_off\&quot;\&quot;}\&quot;,2.4 &#x60;&#x60;&#x60; Once imported, you can find the &#x60;batchId&#x60; in the Campaign Manager or by using [List coupons](#tag/Coupons/operation/getCouponsWithoutTotalCount).
8780
+ # Upload a CSV file containing the coupons that should be created. The file should be sent as multipart data. The CSV file contains the following columns: - &#x60;value&#x60; (required): The coupon code. - &#x60;expirydate&#x60;: The end date in RFC3339 of the code redemption period. - &#x60;startdate&#x60;: The start date in RFC3339 of the code redemption period. - &#x60;recipientintegrationid&#x60;: The integration ID of the recipient of the coupon. Only the customer with this integration ID can redeem this code. Available only for personal codes. - &#x60;limitval&#x60;: The maximum number of redemptions of this code. For unlimited redemptions, use &#x60;0&#x60;. Defaults to &#x60;1&#x60; when not provided. - &#x60;discountlimit&#x60;: The total discount value that the code can give. This is typically used to represent a gift card value. - &#x60;attributes&#x60;: A JSON object describing _custom_ coupon attribute names and their values, enclosed with double quotation marks. For example, if you created a [custom attribute](https://docs.talon.one/docs/dev/concepts/attributes#custom-attributes) called &#x60;category&#x60; associated with the coupon entity, the object in the CSV file, when opened in a text editor, must be: &#x60;\&quot;{\&quot;category\&quot;: \&quot;10_off\&quot;}\&quot;&#x60;. You can use the time zone of your choice. It is converted to UTC internally by Talon.One. **Note:** We recommend limiting your file size to 500MB. **Example:** &#x60;&#x60;&#x60;text \&quot;value\&quot;,\&quot;expirydate\&quot;,\&quot;startdate\&quot;,\&quot;recipientintegrationid\&quot;,\&quot;limitval\&quot;,\&quot;attributes\&quot;,\&quot;discountlimit\&quot; COUP1,2018-07-01T04:00:00Z,2018-05-01T04:00:00Z,cust123,1,\&quot;{\&quot;\&quot;Category\&quot;\&quot;: \&quot;\&quot;10_off\&quot;\&quot;}\&quot;,2.4 &#x60;&#x60;&#x60; Once imported, you can find the &#x60;batchId&#x60; in the Campaign Manager or by using [List coupons](#tag/Coupons/operation/getCouponsWithoutTotalCount).
8775
8781
  # @param application_id [Integer] The ID of the Application. It is displayed in your Talon.One deployment URL.
8776
8782
  # @param campaign_id [Integer] The ID of the campaign. It is displayed in your Talon.One deployment URL.
8777
8783
  # @param [Hash] opts the optional parameters
@@ -9174,6 +9180,68 @@ module TalonOne
9174
9180
  return data, status_code, headers
9175
9181
  end
9176
9182
 
9183
+ # Invite user from identity provider
9184
+ # Invite a user from an external identity provider to Talon.One by sending an invitation to their email address.
9185
+ # @param body [NewExternalInvitation] body
9186
+ # @param [Hash] opts the optional parameters
9187
+ # @return [nil]
9188
+ def invite_user_external(body, opts = {})
9189
+ invite_user_external_with_http_info(body, opts)
9190
+ nil
9191
+ end
9192
+
9193
+ # Invite user from identity provider
9194
+ # Invite a user from an external identity provider to Talon.One by sending an invitation to their email address.
9195
+ # @param body [NewExternalInvitation] body
9196
+ # @param [Hash] opts the optional parameters
9197
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
9198
+ def invite_user_external_with_http_info(body, opts = {})
9199
+ if @api_client.config.debugging
9200
+ @api_client.config.logger.debug 'Calling API: ManagementApi.invite_user_external ...'
9201
+ end
9202
+ # verify the required parameter 'body' is set
9203
+ if @api_client.config.client_side_validation && body.nil?
9204
+ fail ArgumentError, "Missing the required parameter 'body' when calling ManagementApi.invite_user_external"
9205
+ end
9206
+ # resource path
9207
+ local_var_path = '/v1/users/invite'
9208
+
9209
+ # query parameters
9210
+ query_params = opts[:query_params] || {}
9211
+
9212
+ # header parameters
9213
+ header_params = opts[:header_params] || {}
9214
+ # HTTP header 'Content-Type'
9215
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
9216
+
9217
+ # form parameters
9218
+ form_params = opts[:form_params] || {}
9219
+
9220
+ # http body (model)
9221
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
9222
+
9223
+ # return_type
9224
+ return_type = opts[:return_type]
9225
+
9226
+ # auth_names
9227
+ auth_names = opts[:auth_names] || ['management_key', 'manager_auth']
9228
+
9229
+ new_options = opts.merge(
9230
+ :header_params => header_params,
9231
+ :query_params => query_params,
9232
+ :form_params => form_params,
9233
+ :body => post_body,
9234
+ :auth_names => auth_names,
9235
+ :return_type => return_type
9236
+ )
9237
+
9238
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
9239
+ if @api_client.config.debugging
9240
+ @api_client.config.logger.debug "API called: ManagementApi#invite_user_external\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
9241
+ end
9242
+ return data, status_code, headers
9243
+ end
9244
+
9177
9245
  # List collections in account
9178
9246
  # List account-level collections in the account.
9179
9247
  # @param [Hash] opts the optional parameters
@@ -9338,6 +9406,62 @@ module TalonOne
9338
9406
  return data, status_code, headers
9339
9407
  end
9340
9408
 
9409
+ # List roles
9410
+ # List all roles.
9411
+ # @param [Hash] opts the optional parameters
9412
+ # @return [InlineResponse20044]
9413
+ def list_all_roles_v2(opts = {})
9414
+ data, _status_code, _headers = list_all_roles_v2_with_http_info(opts)
9415
+ data
9416
+ end
9417
+
9418
+ # List roles
9419
+ # List all roles.
9420
+ # @param [Hash] opts the optional parameters
9421
+ # @return [Array<(InlineResponse20044, Integer, Hash)>] InlineResponse20044 data, response status code and response headers
9422
+ def list_all_roles_v2_with_http_info(opts = {})
9423
+ if @api_client.config.debugging
9424
+ @api_client.config.logger.debug 'Calling API: ManagementApi.list_all_roles_v2 ...'
9425
+ end
9426
+ # resource path
9427
+ local_var_path = '/v2/roles'
9428
+
9429
+ # query parameters
9430
+ query_params = opts[:query_params] || {}
9431
+
9432
+ # header parameters
9433
+ header_params = opts[:header_params] || {}
9434
+ # HTTP header 'Accept' (if needed)
9435
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
9436
+
9437
+ # form parameters
9438
+ form_params = opts[:form_params] || {}
9439
+
9440
+ # http body (model)
9441
+ post_body = opts[:body]
9442
+
9443
+ # return_type
9444
+ return_type = opts[:return_type] || 'InlineResponse20044'
9445
+
9446
+ # auth_names
9447
+ auth_names = opts[:auth_names] || ['management_key', 'manager_auth']
9448
+
9449
+ new_options = opts.merge(
9450
+ :header_params => header_params,
9451
+ :query_params => query_params,
9452
+ :form_params => form_params,
9453
+ :body => post_body,
9454
+ :auth_names => auth_names,
9455
+ :return_type => return_type
9456
+ )
9457
+
9458
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
9459
+ if @api_client.config.debugging
9460
+ @api_client.config.logger.debug "API called: ManagementApi#list_all_roles_v2\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
9461
+ end
9462
+ return data, status_code, headers
9463
+ end
9464
+
9341
9465
  # List items in a catalog
9342
9466
  # Return a paginated list of cart items in the given catalog.
9343
9467
  # @param catalog_id [Integer] The ID of the catalog. You can find the ID in the Campaign Manager in **Account** &gt; **Tools** &gt; **Cart item catalogs**.
@@ -11218,7 +11342,7 @@ module TalonOne
11218
11342
 
11219
11343
  # Update role
11220
11344
  # Update a specific role.
11221
- # @param role_id [Integer] The ID of role.
11345
+ # @param role_id [Integer] The ID of role. **Note**: To find the ID of a role, use the [List roles](/management-api#tag/Roles/operation/listAllRolesV2) endpoint.
11222
11346
  # @param body [RoleV2Base] body
11223
11347
  # @param [Hash] opts the optional parameters
11224
11348
  # @return [RoleV2]
@@ -11229,7 +11353,7 @@ module TalonOne
11229
11353
 
11230
11354
  # Update role
11231
11355
  # Update a specific role.
11232
- # @param role_id [Integer] The ID of role.
11356
+ # @param role_id [Integer] The ID of role. **Note**: To find the ID of a role, use the [List roles](/management-api#tag/Roles/operation/listAllRolesV2) endpoint.
11233
11357
  # @param body [RoleV2Base] body
11234
11358
  # @param [Hash] opts the optional parameters
11235
11359
  # @return [Array<(RoleV2, Integer, Hash)>] RoleV2 data, response status code and response headers