ultracart_api 4.1.232 → 4.1.234

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.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +35 -2
  3. data/docs/SfvbApi.md +922 -34
  4. data/docs/SfvbApprovalCreateRequest.md +2 -0
  5. data/docs/SfvbApprovalParams.md +1 -1
  6. data/docs/SfvbCampaign.md +4 -0
  7. data/docs/SfvbCampaignWriteRequest.md +2 -0
  8. data/docs/SfvbCommsLookupOwner.md +28 -0
  9. data/docs/SfvbCommsLookupResponse.md +36 -0
  10. data/docs/SfvbCommsRulerValidateRequest.md +18 -0
  11. data/docs/SfvbCommsRulerValidateResponse.md +22 -0
  12. data/docs/SfvbCommsSequenceFolder.md +28 -0
  13. data/docs/SfvbCommsSequenceFolderResponse.md +22 -0
  14. data/docs/SfvbCommsSequenceFoldersResponse.md +18 -0
  15. data/docs/SfvbCommsStat.md +1 -1
  16. data/docs/SfvbCommsTemplateResponse.md +8 -2
  17. data/docs/SfvbCommsUnreferencedEmail.md +30 -0
  18. data/docs/SfvbCommsUnreferencedPostcard.md +24 -0
  19. data/docs/SfvbCommsUnreferencedResponse.md +32 -0
  20. data/docs/SfvbEmail.md +8 -0
  21. data/docs/SfvbFlow.md +4 -0
  22. data/docs/SfvbFlowBackfillRequest.md +24 -0
  23. data/docs/SfvbFlowBackfillResponse.md +38 -0
  24. data/docs/SfvbFlowWriteRequest.md +2 -0
  25. data/docs/SfvbPreviewTrackingHtmlRequest.md +20 -0
  26. data/docs/SfvbServerLog.md +1 -1
  27. data/docs/SfvbStepCounts.md +1 -1
  28. data/docs/SfvbTrackingHtmlRenderRequest.md +20 -0
  29. data/docs/SfvbTrackingHtmlRenderResponse.md +32 -0
  30. data/docs/SfvbTrackingProvider.md +2 -0
  31. data/lib/ultracart_api/api/sfvb_api.rb +1235 -31
  32. data/lib/ultracart_api/models/sfvb_approval_create_request.rb +12 -3
  33. data/lib/ultracart_api/models/sfvb_approval_params.rb +1 -1
  34. data/lib/ultracart_api/models/sfvb_campaign.rb +21 -1
  35. data/lib/ultracart_api/models/sfvb_campaign_write_request.rb +11 -1
  36. data/lib/ultracart_api/models/sfvb_comms_lookup_owner.rb +270 -0
  37. data/lib/ultracart_api/models/sfvb_comms_lookup_response.rb +311 -0
  38. data/lib/ultracart_api/models/sfvb_comms_ruler_validate_request.rb +220 -0
  39. data/lib/ultracart_api/models/sfvb_comms_ruler_validate_response.rb +242 -0
  40. data/lib/ultracart_api/models/sfvb_comms_sequence_folder.rb +270 -0
  41. data/lib/ultracart_api/models/sfvb_comms_sequence_folder_response.rb +243 -0
  42. data/lib/ultracart_api/models/sfvb_comms_sequence_folders_response.rb +222 -0
  43. data/lib/ultracart_api/models/sfvb_comms_stat.rb +1 -1
  44. data/lib/ultracart_api/models/sfvb_comms_template_response.rb +35 -5
  45. data/lib/ultracart_api/models/sfvb_comms_unreferenced_email.rb +280 -0
  46. data/lib/ultracart_api/models/sfvb_comms_unreferenced_postcard.rb +250 -0
  47. data/lib/ultracart_api/models/sfvb_comms_unreferenced_response.rb +296 -0
  48. data/lib/ultracart_api/models/sfvb_email.rb +41 -1
  49. data/lib/ultracart_api/models/sfvb_flow.rb +21 -1
  50. data/lib/ultracart_api/models/sfvb_flow_backfill_request.rb +250 -0
  51. data/lib/ultracart_api/models/sfvb_flow_backfill_response.rb +322 -0
  52. data/lib/ultracart_api/models/sfvb_flow_write_request.rb +11 -1
  53. data/lib/ultracart_api/models/sfvb_preview_tracking_html_request.rb +230 -0
  54. data/lib/ultracart_api/models/sfvb_server_log.rb +1 -1
  55. data/lib/ultracart_api/models/sfvb_step_counts.rb +1 -1
  56. data/lib/ultracart_api/models/sfvb_tracking_html_render_request.rb +230 -0
  57. data/lib/ultracart_api/models/sfvb_tracking_html_render_response.rb +328 -0
  58. data/lib/ultracart_api/models/sfvb_tracking_provider.rb +11 -1
  59. data/lib/ultracart_api/version.rb +1 -1
  60. data/lib/ultracart_api.rb +15 -0
  61. metadata +32 -2
@@ -677,6 +677,90 @@ module UltracartClient
677
677
  return data, status_code, headers
678
678
  end
679
679
 
680
+ # Back populate a live flow, or count who it would enroll
681
+ # Enrolls customers who would have met the flow's trigger before it existed: a segment trigger's members, or the orders of the last order_days_old days (1 to 90, default 5, every storefront on the account) for an order trigger, up to the plan's customer limit. The flow must be on. dry_run counts them and enrolls nobody. A real backfill needs sfvb_publish, the sign-in of a person, and an approved flow.backfill request for exactly this flow and window; it runs in the background and mails each customer through the flow.
682
+ # @param storefront_oid [Integer]
683
+ # @param flow_uuid [String]
684
+ # @param flow_backfill_request [SfvbFlowBackfillRequest] The window and dry_run
685
+ # @param [Hash] opts the optional parameters
686
+ # @option opts [String] :approval_id The approval_id of an approved flow.backfill request for exactly this flow and window. See POST /sfvb/approvals.
687
+ # @return [SfvbFlowBackfillResponse]
688
+ def backfill_sfvb_comms_flow(storefront_oid, flow_uuid, flow_backfill_request, opts = {})
689
+ data, _status_code, _headers = backfill_sfvb_comms_flow_with_http_info(storefront_oid, flow_uuid, flow_backfill_request, opts)
690
+ data
691
+ end
692
+
693
+ # Back populate a live flow, or count who it would enroll
694
+ # Enrolls customers who would have met the flow's trigger before it existed: a segment trigger's members, or the orders of the last order_days_old days (1 to 90, default 5, every storefront on the account) for an order trigger, up to the plan's customer limit. The flow must be on. dry_run counts them and enrolls nobody. A real backfill needs sfvb_publish, the sign-in of a person, and an approved flow.backfill request for exactly this flow and window; it runs in the background and mails each customer through the flow.
695
+ # @param storefront_oid [Integer]
696
+ # @param flow_uuid [String]
697
+ # @param flow_backfill_request [SfvbFlowBackfillRequest] The window and dry_run
698
+ # @param [Hash] opts the optional parameters
699
+ # @option opts [String] :approval_id The approval_id of an approved flow.backfill request for exactly this flow and window. See POST /sfvb/approvals.
700
+ # @return [Array<(SfvbFlowBackfillResponse, Integer, Hash)>] SfvbFlowBackfillResponse data, response status code and response headers
701
+ def backfill_sfvb_comms_flow_with_http_info(storefront_oid, flow_uuid, flow_backfill_request, opts = {})
702
+ if @api_client.config.debugging
703
+ @api_client.config.logger.debug 'Calling API: SfvbApi.backfill_sfvb_comms_flow ...'
704
+ end
705
+ # verify the required parameter 'storefront_oid' is set
706
+ if @api_client.config.client_side_validation && storefront_oid.nil?
707
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.backfill_sfvb_comms_flow"
708
+ end
709
+ # verify the required parameter 'flow_uuid' is set
710
+ if @api_client.config.client_side_validation && flow_uuid.nil?
711
+ fail ArgumentError, "Missing the required parameter 'flow_uuid' when calling SfvbApi.backfill_sfvb_comms_flow"
712
+ end
713
+ # verify the required parameter 'flow_backfill_request' is set
714
+ if @api_client.config.client_side_validation && flow_backfill_request.nil?
715
+ fail ArgumentError, "Missing the required parameter 'flow_backfill_request' when calling SfvbApi.backfill_sfvb_comms_flow"
716
+ end
717
+ # resource path
718
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/comms/flows/{flow_uuid}/backfill'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s)).sub('{' + 'flow_uuid' + '}', CGI.escape(flow_uuid.to_s))
719
+
720
+ # query parameters
721
+ query_params = opts[:query_params] || {}
722
+
723
+ # header parameters
724
+ header_params = opts[:header_params] || {}
725
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
726
+ # HTTP header 'Accept' (if needed)
727
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
728
+ # HTTP header 'Content-Type'
729
+ content_type = @api_client.select_header_content_type(['application/json'])
730
+ if !content_type.nil?
731
+ header_params['Content-Type'] = content_type
732
+ end
733
+ header_params[:'Approval-Id'] = opts[:'approval_id'] if !opts[:'approval_id'].nil?
734
+
735
+ # form parameters
736
+ form_params = opts[:form_params] || {}
737
+
738
+ # http body (model)
739
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(flow_backfill_request)
740
+
741
+ # return_type
742
+ return_type = opts[:debug_return_type] || 'SfvbFlowBackfillResponse'
743
+
744
+ # auth_names
745
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
746
+
747
+ new_options = opts.merge(
748
+ :operation => :"SfvbApi.backfill_sfvb_comms_flow",
749
+ :header_params => header_params,
750
+ :query_params => query_params,
751
+ :form_params => form_params,
752
+ :body => post_body,
753
+ :auth_names => auth_names,
754
+ :return_type => return_type
755
+ )
756
+
757
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
758
+ if @api_client.config.debugging
759
+ @api_client.config.logger.debug "API called: SfvbApi#backfill_sfvb_comms_flow\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
760
+ end
761
+ return data, status_code, headers
762
+ end
763
+
680
764
  # Check a redirect rule without creating it
681
765
  # Runs every check a create runs (loops, chains, duplicates, missing or external targets, system paths, live pages, the rule limit) and returns the findings. Writes nothing.
682
766
  # @param storefront_oid [Integer]
@@ -1619,6 +1703,160 @@ module UltracartClient
1619
1703
  return data, status_code, headers
1620
1704
  end
1621
1705
 
1706
+ # Delete a campaign folder
1707
+ # Its campaigns are kept and filed under no folder, as the admin does; items names each one. Send the folder's hash_sha256 as If-Match. A folder the admin made itself (system_generated) can't be deleted here.
1708
+ # @param storefront_oid [Integer]
1709
+ # @param folder_uuid [String]
1710
+ # @param if_match [String] The folder&#39;s hash_sha256 from the last read. Required; 428 when absent, 412 when stale.
1711
+ # @param [Hash] opts the optional parameters
1712
+ # @return [SfvbCommsSequenceFolderResponse]
1713
+ def delete_sfvb_comms_campaign_folder(storefront_oid, folder_uuid, if_match, opts = {})
1714
+ data, _status_code, _headers = delete_sfvb_comms_campaign_folder_with_http_info(storefront_oid, folder_uuid, if_match, opts)
1715
+ data
1716
+ end
1717
+
1718
+ # Delete a campaign folder
1719
+ # Its campaigns are kept and filed under no folder, as the admin does; items names each one. Send the folder&#39;s hash_sha256 as If-Match. A folder the admin made itself (system_generated) can&#39;t be deleted here.
1720
+ # @param storefront_oid [Integer]
1721
+ # @param folder_uuid [String]
1722
+ # @param if_match [String] The folder&#39;s hash_sha256 from the last read. Required; 428 when absent, 412 when stale.
1723
+ # @param [Hash] opts the optional parameters
1724
+ # @return [Array<(SfvbCommsSequenceFolderResponse, Integer, Hash)>] SfvbCommsSequenceFolderResponse data, response status code and response headers
1725
+ def delete_sfvb_comms_campaign_folder_with_http_info(storefront_oid, folder_uuid, if_match, opts = {})
1726
+ if @api_client.config.debugging
1727
+ @api_client.config.logger.debug 'Calling API: SfvbApi.delete_sfvb_comms_campaign_folder ...'
1728
+ end
1729
+ # verify the required parameter 'storefront_oid' is set
1730
+ if @api_client.config.client_side_validation && storefront_oid.nil?
1731
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.delete_sfvb_comms_campaign_folder"
1732
+ end
1733
+ # verify the required parameter 'folder_uuid' is set
1734
+ if @api_client.config.client_side_validation && folder_uuid.nil?
1735
+ fail ArgumentError, "Missing the required parameter 'folder_uuid' when calling SfvbApi.delete_sfvb_comms_campaign_folder"
1736
+ end
1737
+ # verify the required parameter 'if_match' is set
1738
+ if @api_client.config.client_side_validation && if_match.nil?
1739
+ fail ArgumentError, "Missing the required parameter 'if_match' when calling SfvbApi.delete_sfvb_comms_campaign_folder"
1740
+ end
1741
+ # resource path
1742
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/campaign_folders/{folder_uuid}'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s)).sub('{' + 'folder_uuid' + '}', CGI.escape(folder_uuid.to_s))
1743
+
1744
+ # query parameters
1745
+ query_params = opts[:query_params] || {}
1746
+
1747
+ # header parameters
1748
+ header_params = opts[:header_params] || {}
1749
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
1750
+ # HTTP header 'Accept' (if needed)
1751
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1752
+ header_params[:'If-Match'] = if_match
1753
+
1754
+ # form parameters
1755
+ form_params = opts[:form_params] || {}
1756
+
1757
+ # http body (model)
1758
+ post_body = opts[:debug_body]
1759
+
1760
+ # return_type
1761
+ return_type = opts[:debug_return_type] || 'SfvbCommsSequenceFolderResponse'
1762
+
1763
+ # auth_names
1764
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
1765
+
1766
+ new_options = opts.merge(
1767
+ :operation => :"SfvbApi.delete_sfvb_comms_campaign_folder",
1768
+ :header_params => header_params,
1769
+ :query_params => query_params,
1770
+ :form_params => form_params,
1771
+ :body => post_body,
1772
+ :auth_names => auth_names,
1773
+ :return_type => return_type
1774
+ )
1775
+
1776
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
1777
+ if @api_client.config.debugging
1778
+ @api_client.config.logger.debug "API called: SfvbApi#delete_sfvb_comms_campaign_folder\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1779
+ end
1780
+ return data, status_code, headers
1781
+ end
1782
+
1783
+ # Delete a flow folder
1784
+ # Its flows are kept and filed under no folder, as the admin does; items names each one. Send the folder's hash_sha256 as If-Match. A folder the admin made itself (system_generated) can't be deleted here.
1785
+ # @param storefront_oid [Integer]
1786
+ # @param folder_uuid [String]
1787
+ # @param if_match [String] The folder&#39;s hash_sha256 from the last read. Required; 428 when absent, 412 when stale.
1788
+ # @param [Hash] opts the optional parameters
1789
+ # @return [SfvbCommsSequenceFolderResponse]
1790
+ def delete_sfvb_comms_flow_folder(storefront_oid, folder_uuid, if_match, opts = {})
1791
+ data, _status_code, _headers = delete_sfvb_comms_flow_folder_with_http_info(storefront_oid, folder_uuid, if_match, opts)
1792
+ data
1793
+ end
1794
+
1795
+ # Delete a flow folder
1796
+ # Its flows are kept and filed under no folder, as the admin does; items names each one. Send the folder&#39;s hash_sha256 as If-Match. A folder the admin made itself (system_generated) can&#39;t be deleted here.
1797
+ # @param storefront_oid [Integer]
1798
+ # @param folder_uuid [String]
1799
+ # @param if_match [String] The folder&#39;s hash_sha256 from the last read. Required; 428 when absent, 412 when stale.
1800
+ # @param [Hash] opts the optional parameters
1801
+ # @return [Array<(SfvbCommsSequenceFolderResponse, Integer, Hash)>] SfvbCommsSequenceFolderResponse data, response status code and response headers
1802
+ def delete_sfvb_comms_flow_folder_with_http_info(storefront_oid, folder_uuid, if_match, opts = {})
1803
+ if @api_client.config.debugging
1804
+ @api_client.config.logger.debug 'Calling API: SfvbApi.delete_sfvb_comms_flow_folder ...'
1805
+ end
1806
+ # verify the required parameter 'storefront_oid' is set
1807
+ if @api_client.config.client_side_validation && storefront_oid.nil?
1808
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.delete_sfvb_comms_flow_folder"
1809
+ end
1810
+ # verify the required parameter 'folder_uuid' is set
1811
+ if @api_client.config.client_side_validation && folder_uuid.nil?
1812
+ fail ArgumentError, "Missing the required parameter 'folder_uuid' when calling SfvbApi.delete_sfvb_comms_flow_folder"
1813
+ end
1814
+ # verify the required parameter 'if_match' is set
1815
+ if @api_client.config.client_side_validation && if_match.nil?
1816
+ fail ArgumentError, "Missing the required parameter 'if_match' when calling SfvbApi.delete_sfvb_comms_flow_folder"
1817
+ end
1818
+ # resource path
1819
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/flow_folders/{folder_uuid}'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s)).sub('{' + 'folder_uuid' + '}', CGI.escape(folder_uuid.to_s))
1820
+
1821
+ # query parameters
1822
+ query_params = opts[:query_params] || {}
1823
+
1824
+ # header parameters
1825
+ header_params = opts[:header_params] || {}
1826
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
1827
+ # HTTP header 'Accept' (if needed)
1828
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1829
+ header_params[:'If-Match'] = if_match
1830
+
1831
+ # form parameters
1832
+ form_params = opts[:form_params] || {}
1833
+
1834
+ # http body (model)
1835
+ post_body = opts[:debug_body]
1836
+
1837
+ # return_type
1838
+ return_type = opts[:debug_return_type] || 'SfvbCommsSequenceFolderResponse'
1839
+
1840
+ # auth_names
1841
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
1842
+
1843
+ new_options = opts.merge(
1844
+ :operation => :"SfvbApi.delete_sfvb_comms_flow_folder",
1845
+ :header_params => header_params,
1846
+ :query_params => query_params,
1847
+ :form_params => form_params,
1848
+ :body => post_body,
1849
+ :auth_names => auth_names,
1850
+ :return_type => return_type
1851
+ )
1852
+
1853
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
1854
+ if @api_client.config.debugging
1855
+ @api_client.config.logger.debug "API called: SfvbApi#delete_sfvb_comms_flow_folder\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1856
+ end
1857
+ return data, status_code, headers
1858
+ end
1859
+
1622
1860
  # Delete a list and segment folder
1623
1861
  # Its lists and segments are kept and filed under no folder, as the admin does; items names each one. Send the folder's hash_sha256 as If-Match. A folder the admin made itself (system_generated) can't be deleted here.
1624
1862
  # @param storefront_oid [Integer]
@@ -2728,11 +2966,13 @@ module UltracartClient
2728
2966
  end
2729
2967
 
2730
2968
  # Clear one tracking provider
2731
- # Clears every field and secret the API can change, the consent gate and the events, and turns off Google Tag Gateway. The provider stops being sent anything. An OAuth connection is left alone, and notes say to disconnect it in the admin. Send the provider's hash_sha256 as If-Match. Needs sfvb_publish. No approval.
2969
+ # Clears every field and secret the API can change, the consent gate and the events, and turns off Google Tag Gateway. An OAuth connection is left alone, and notes say to disconnect it in the admin. Send the provider's hash_sha256 as If-Match. Needs sfvb_publish. dry_run=true reports the changes, and approval_needed, without clearing. No approval, except when the clear removes a consent gate while something outside the provider's fields still fires it (Google Ads for an affiliate's own Google conversion id, Commission Junction for an affiliate network of its type): that needs an approved tracking_provider.clear request for the provider (Approval-Id).
2732
2970
  # @param storefront_oid [Integer]
2733
2971
  # @param provider [String]
2734
2972
  # @param if_match [String] The provider&#39;s hash_sha256 from the last read. 428 when absent, 412 when stale.
2735
2973
  # @param [Hash] opts the optional parameters
2974
+ # @option opts [Boolean] :dry_run
2975
+ # @option opts [String] :approval_id When the clear removes a consent gate while something else still fires the provider, the approval_id of an approved tracking_provider.clear request for it. See POST /sfvb/approvals.
2736
2976
  # @return [SfvbTrackingProvider]
2737
2977
  def delete_sfvb_tracking_provider(storefront_oid, provider, if_match, opts = {})
2738
2978
  data, _status_code, _headers = delete_sfvb_tracking_provider_with_http_info(storefront_oid, provider, if_match, opts)
@@ -2740,11 +2980,13 @@ module UltracartClient
2740
2980
  end
2741
2981
 
2742
2982
  # Clear one tracking provider
2743
- # Clears every field and secret the API can change, the consent gate and the events, and turns off Google Tag Gateway. The provider stops being sent anything. An OAuth connection is left alone, and notes say to disconnect it in the admin. Send the provider&#39;s hash_sha256 as If-Match. Needs sfvb_publish. No approval.
2983
+ # Clears every field and secret the API can change, the consent gate and the events, and turns off Google Tag Gateway. An OAuth connection is left alone, and notes say to disconnect it in the admin. Send the provider&#39;s hash_sha256 as If-Match. Needs sfvb_publish. dry_run&#x3D;true reports the changes, and approval_needed, without clearing. No approval, except when the clear removes a consent gate while something outside the provider&#39;s fields still fires it (Google Ads for an affiliate&#39;s own Google conversion id, Commission Junction for an affiliate network of its type): that needs an approved tracking_provider.clear request for the provider (Approval-Id).
2744
2984
  # @param storefront_oid [Integer]
2745
2985
  # @param provider [String]
2746
2986
  # @param if_match [String] The provider&#39;s hash_sha256 from the last read. 428 when absent, 412 when stale.
2747
2987
  # @param [Hash] opts the optional parameters
2988
+ # @option opts [Boolean] :dry_run
2989
+ # @option opts [String] :approval_id When the clear removes a consent gate while something else still fires the provider, the approval_id of an approved tracking_provider.clear request for it. See POST /sfvb/approvals.
2748
2990
  # @return [Array<(SfvbTrackingProvider, Integer, Hash)>] SfvbTrackingProvider data, response status code and response headers
2749
2991
  def delete_sfvb_tracking_provider_with_http_info(storefront_oid, provider, if_match, opts = {})
2750
2992
  if @api_client.config.debugging
@@ -2767,6 +3009,7 @@ module UltracartClient
2767
3009
 
2768
3010
  # query parameters
2769
3011
  query_params = opts[:query_params] || {}
3012
+ query_params[:'dry_run'] = opts[:'dry_run'] if !opts[:'dry_run'].nil?
2770
3013
 
2771
3014
  # header parameters
2772
3015
  header_params = opts[:header_params] || {}
@@ -2774,6 +3017,7 @@ module UltracartClient
2774
3017
  # HTTP header 'Accept' (if needed)
2775
3018
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2776
3019
  header_params[:'If-Match'] = if_match
3020
+ header_params[:'Approval-Id'] = opts[:'approval_id'] if !opts[:'approval_id'].nil?
2777
3021
 
2778
3022
  # form parameters
2779
3023
  form_params = opts[:form_params] || {}
@@ -4898,6 +5142,140 @@ module UltracartClient
4898
5142
  return data, status_code, headers
4899
5143
  end
4900
5144
 
5145
+ # Read one campaign folder
5146
+ # The folder, with the name and uuid of each campaign filed in it.
5147
+ # @param storefront_oid [Integer]
5148
+ # @param folder_uuid [String]
5149
+ # @param [Hash] opts the optional parameters
5150
+ # @return [SfvbCommsSequenceFolderResponse]
5151
+ def get_sfvb_comms_campaign_folder(storefront_oid, folder_uuid, opts = {})
5152
+ data, _status_code, _headers = get_sfvb_comms_campaign_folder_with_http_info(storefront_oid, folder_uuid, opts)
5153
+ data
5154
+ end
5155
+
5156
+ # Read one campaign folder
5157
+ # The folder, with the name and uuid of each campaign filed in it.
5158
+ # @param storefront_oid [Integer]
5159
+ # @param folder_uuid [String]
5160
+ # @param [Hash] opts the optional parameters
5161
+ # @return [Array<(SfvbCommsSequenceFolderResponse, Integer, Hash)>] SfvbCommsSequenceFolderResponse data, response status code and response headers
5162
+ def get_sfvb_comms_campaign_folder_with_http_info(storefront_oid, folder_uuid, opts = {})
5163
+ if @api_client.config.debugging
5164
+ @api_client.config.logger.debug 'Calling API: SfvbApi.get_sfvb_comms_campaign_folder ...'
5165
+ end
5166
+ # verify the required parameter 'storefront_oid' is set
5167
+ if @api_client.config.client_side_validation && storefront_oid.nil?
5168
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.get_sfvb_comms_campaign_folder"
5169
+ end
5170
+ # verify the required parameter 'folder_uuid' is set
5171
+ if @api_client.config.client_side_validation && folder_uuid.nil?
5172
+ fail ArgumentError, "Missing the required parameter 'folder_uuid' when calling SfvbApi.get_sfvb_comms_campaign_folder"
5173
+ end
5174
+ # resource path
5175
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/campaign_folders/{folder_uuid}'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s)).sub('{' + 'folder_uuid' + '}', CGI.escape(folder_uuid.to_s))
5176
+
5177
+ # query parameters
5178
+ query_params = opts[:query_params] || {}
5179
+
5180
+ # header parameters
5181
+ header_params = opts[:header_params] || {}
5182
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
5183
+ # HTTP header 'Accept' (if needed)
5184
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
5185
+
5186
+ # form parameters
5187
+ form_params = opts[:form_params] || {}
5188
+
5189
+ # http body (model)
5190
+ post_body = opts[:debug_body]
5191
+
5192
+ # return_type
5193
+ return_type = opts[:debug_return_type] || 'SfvbCommsSequenceFolderResponse'
5194
+
5195
+ # auth_names
5196
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
5197
+
5198
+ new_options = opts.merge(
5199
+ :operation => :"SfvbApi.get_sfvb_comms_campaign_folder",
5200
+ :header_params => header_params,
5201
+ :query_params => query_params,
5202
+ :form_params => form_params,
5203
+ :body => post_body,
5204
+ :auth_names => auth_names,
5205
+ :return_type => return_type
5206
+ )
5207
+
5208
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
5209
+ if @api_client.config.debugging
5210
+ @api_client.config.logger.debug "API called: SfvbApi#get_sfvb_comms_campaign_folder\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
5211
+ end
5212
+ return data, status_code, headers
5213
+ end
5214
+
5215
+ # List the campaign folders
5216
+ # Each campaign folder with how many campaigns are filed in it, whether the admin made it, and its hash_sha256.
5217
+ # @param storefront_oid [Integer]
5218
+ # @param [Hash] opts the optional parameters
5219
+ # @return [SfvbCommsSequenceFoldersResponse]
5220
+ def get_sfvb_comms_campaign_folders(storefront_oid, opts = {})
5221
+ data, _status_code, _headers = get_sfvb_comms_campaign_folders_with_http_info(storefront_oid, opts)
5222
+ data
5223
+ end
5224
+
5225
+ # List the campaign folders
5226
+ # Each campaign folder with how many campaigns are filed in it, whether the admin made it, and its hash_sha256.
5227
+ # @param storefront_oid [Integer]
5228
+ # @param [Hash] opts the optional parameters
5229
+ # @return [Array<(SfvbCommsSequenceFoldersResponse, Integer, Hash)>] SfvbCommsSequenceFoldersResponse data, response status code and response headers
5230
+ def get_sfvb_comms_campaign_folders_with_http_info(storefront_oid, opts = {})
5231
+ if @api_client.config.debugging
5232
+ @api_client.config.logger.debug 'Calling API: SfvbApi.get_sfvb_comms_campaign_folders ...'
5233
+ end
5234
+ # verify the required parameter 'storefront_oid' is set
5235
+ if @api_client.config.client_side_validation && storefront_oid.nil?
5236
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.get_sfvb_comms_campaign_folders"
5237
+ end
5238
+ # resource path
5239
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/campaign_folders'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s))
5240
+
5241
+ # query parameters
5242
+ query_params = opts[:query_params] || {}
5243
+
5244
+ # header parameters
5245
+ header_params = opts[:header_params] || {}
5246
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
5247
+ # HTTP header 'Accept' (if needed)
5248
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
5249
+
5250
+ # form parameters
5251
+ form_params = opts[:form_params] || {}
5252
+
5253
+ # http body (model)
5254
+ post_body = opts[:debug_body]
5255
+
5256
+ # return_type
5257
+ return_type = opts[:debug_return_type] || 'SfvbCommsSequenceFoldersResponse'
5258
+
5259
+ # auth_names
5260
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
5261
+
5262
+ new_options = opts.merge(
5263
+ :operation => :"SfvbApi.get_sfvb_comms_campaign_folders",
5264
+ :header_params => header_params,
5265
+ :query_params => query_params,
5266
+ :form_params => form_params,
5267
+ :body => post_body,
5268
+ :auth_names => auth_names,
5269
+ :return_type => return_type
5270
+ )
5271
+
5272
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
5273
+ if @api_client.config.debugging
5274
+ @api_client.config.logger.debug "API called: SfvbApi#get_sfvb_comms_campaign_folders\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
5275
+ end
5276
+ return data, status_code, headers
5277
+ end
5278
+
4901
5279
  # Read every flow's and campaign's counts over a window, with the account's daily sending
4902
5280
  # rows cover each flow and campaign with activity in the last days (1 to 365, default 30); daily is the account's last 31 days of sending, whatever the window. Read only.
4903
5281
  # @param storefront_oid [Integer]
@@ -5044,6 +5422,140 @@ module UltracartClient
5044
5422
  return data, status_code, headers
5045
5423
  end
5046
5424
 
5425
+ # Read one flow folder
5426
+ # The folder, with the name and uuid of each flow filed in it.
5427
+ # @param storefront_oid [Integer]
5428
+ # @param folder_uuid [String]
5429
+ # @param [Hash] opts the optional parameters
5430
+ # @return [SfvbCommsSequenceFolderResponse]
5431
+ def get_sfvb_comms_flow_folder(storefront_oid, folder_uuid, opts = {})
5432
+ data, _status_code, _headers = get_sfvb_comms_flow_folder_with_http_info(storefront_oid, folder_uuid, opts)
5433
+ data
5434
+ end
5435
+
5436
+ # Read one flow folder
5437
+ # The folder, with the name and uuid of each flow filed in it.
5438
+ # @param storefront_oid [Integer]
5439
+ # @param folder_uuid [String]
5440
+ # @param [Hash] opts the optional parameters
5441
+ # @return [Array<(SfvbCommsSequenceFolderResponse, Integer, Hash)>] SfvbCommsSequenceFolderResponse data, response status code and response headers
5442
+ def get_sfvb_comms_flow_folder_with_http_info(storefront_oid, folder_uuid, opts = {})
5443
+ if @api_client.config.debugging
5444
+ @api_client.config.logger.debug 'Calling API: SfvbApi.get_sfvb_comms_flow_folder ...'
5445
+ end
5446
+ # verify the required parameter 'storefront_oid' is set
5447
+ if @api_client.config.client_side_validation && storefront_oid.nil?
5448
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.get_sfvb_comms_flow_folder"
5449
+ end
5450
+ # verify the required parameter 'folder_uuid' is set
5451
+ if @api_client.config.client_side_validation && folder_uuid.nil?
5452
+ fail ArgumentError, "Missing the required parameter 'folder_uuid' when calling SfvbApi.get_sfvb_comms_flow_folder"
5453
+ end
5454
+ # resource path
5455
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/flow_folders/{folder_uuid}'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s)).sub('{' + 'folder_uuid' + '}', CGI.escape(folder_uuid.to_s))
5456
+
5457
+ # query parameters
5458
+ query_params = opts[:query_params] || {}
5459
+
5460
+ # header parameters
5461
+ header_params = opts[:header_params] || {}
5462
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
5463
+ # HTTP header 'Accept' (if needed)
5464
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
5465
+
5466
+ # form parameters
5467
+ form_params = opts[:form_params] || {}
5468
+
5469
+ # http body (model)
5470
+ post_body = opts[:debug_body]
5471
+
5472
+ # return_type
5473
+ return_type = opts[:debug_return_type] || 'SfvbCommsSequenceFolderResponse'
5474
+
5475
+ # auth_names
5476
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
5477
+
5478
+ new_options = opts.merge(
5479
+ :operation => :"SfvbApi.get_sfvb_comms_flow_folder",
5480
+ :header_params => header_params,
5481
+ :query_params => query_params,
5482
+ :form_params => form_params,
5483
+ :body => post_body,
5484
+ :auth_names => auth_names,
5485
+ :return_type => return_type
5486
+ )
5487
+
5488
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
5489
+ if @api_client.config.debugging
5490
+ @api_client.config.logger.debug "API called: SfvbApi#get_sfvb_comms_flow_folder\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
5491
+ end
5492
+ return data, status_code, headers
5493
+ end
5494
+
5495
+ # List the flow folders
5496
+ # Each flow folder with how many flows are filed in it, whether the admin made it, and its hash_sha256.
5497
+ # @param storefront_oid [Integer]
5498
+ # @param [Hash] opts the optional parameters
5499
+ # @return [SfvbCommsSequenceFoldersResponse]
5500
+ def get_sfvb_comms_flow_folders(storefront_oid, opts = {})
5501
+ data, _status_code, _headers = get_sfvb_comms_flow_folders_with_http_info(storefront_oid, opts)
5502
+ data
5503
+ end
5504
+
5505
+ # List the flow folders
5506
+ # Each flow folder with how many flows are filed in it, whether the admin made it, and its hash_sha256.
5507
+ # @param storefront_oid [Integer]
5508
+ # @param [Hash] opts the optional parameters
5509
+ # @return [Array<(SfvbCommsSequenceFoldersResponse, Integer, Hash)>] SfvbCommsSequenceFoldersResponse data, response status code and response headers
5510
+ def get_sfvb_comms_flow_folders_with_http_info(storefront_oid, opts = {})
5511
+ if @api_client.config.debugging
5512
+ @api_client.config.logger.debug 'Calling API: SfvbApi.get_sfvb_comms_flow_folders ...'
5513
+ end
5514
+ # verify the required parameter 'storefront_oid' is set
5515
+ if @api_client.config.client_side_validation && storefront_oid.nil?
5516
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.get_sfvb_comms_flow_folders"
5517
+ end
5518
+ # resource path
5519
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/flow_folders'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s))
5520
+
5521
+ # query parameters
5522
+ query_params = opts[:query_params] || {}
5523
+
5524
+ # header parameters
5525
+ header_params = opts[:header_params] || {}
5526
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
5527
+ # HTTP header 'Accept' (if needed)
5528
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
5529
+
5530
+ # form parameters
5531
+ form_params = opts[:form_params] || {}
5532
+
5533
+ # http body (model)
5534
+ post_body = opts[:debug_body]
5535
+
5536
+ # return_type
5537
+ return_type = opts[:debug_return_type] || 'SfvbCommsSequenceFoldersResponse'
5538
+
5539
+ # auth_names
5540
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
5541
+
5542
+ new_options = opts.merge(
5543
+ :operation => :"SfvbApi.get_sfvb_comms_flow_folders",
5544
+ :header_params => header_params,
5545
+ :query_params => query_params,
5546
+ :form_params => form_params,
5547
+ :body => post_body,
5548
+ :auth_names => auth_names,
5549
+ :return_type => return_type
5550
+ )
5551
+
5552
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
5553
+ if @api_client.config.debugging
5554
+ @api_client.config.logger.debug "API called: SfvbApi#get_sfvb_comms_flow_folders\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
5555
+ end
5556
+ return data, status_code, headers
5557
+ end
5558
+
5047
5559
  # Read one list and segment folder
5048
5560
  # The folder, with the name and uuid of each list and segment filed in it.
5049
5561
  # @param storefront_oid [Integer]
@@ -5262,35 +5774,100 @@ module UltracartClient
5262
5774
  data
5263
5775
  end
5264
5776
 
5265
- # Read one page of a list&#39;s members
5266
- # Each member&#39;s customer uuid, email and the date they joined. Email addresses are masked (w***a@example.com) and customer_data is masked, unless show_customer_data is true, which returns the real addresses and needs the sfvb_publish scope. Every such read is logged. Ask for them only when the merchant needs a person&#39;s address. Read only.
5267
- # @param storefront_oid [Integer]
5268
- # @param list_uuid [String]
5777
+ # Read one page of a list&#39;s members
5778
+ # Each member&#39;s customer uuid, email and the date they joined. Email addresses are masked (w***a@example.com) and customer_data is masked, unless show_customer_data is true, which returns the real addresses and needs the sfvb_publish scope. Every such read is logged. Ask for them only when the merchant needs a person&#39;s address. Read only.
5779
+ # @param storefront_oid [Integer]
5780
+ # @param list_uuid [String]
5781
+ # @param [Hash] opts the optional parameters
5782
+ # @option opts [Integer] :page The page, from 1
5783
+ # @option opts [Integer] :page_size Members per page, 1 to 100 (default 50)
5784
+ # @option opts [Boolean] :show_customer_data True to return the real email addresses instead of masked ones
5785
+ # @return [Array<(SfvbCommsMembersResponse, Integer, Hash)>] SfvbCommsMembersResponse data, response status code and response headers
5786
+ def get_sfvb_comms_list_members_with_http_info(storefront_oid, list_uuid, opts = {})
5787
+ if @api_client.config.debugging
5788
+ @api_client.config.logger.debug 'Calling API: SfvbApi.get_sfvb_comms_list_members ...'
5789
+ end
5790
+ # verify the required parameter 'storefront_oid' is set
5791
+ if @api_client.config.client_side_validation && storefront_oid.nil?
5792
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.get_sfvb_comms_list_members"
5793
+ end
5794
+ # verify the required parameter 'list_uuid' is set
5795
+ if @api_client.config.client_side_validation && list_uuid.nil?
5796
+ fail ArgumentError, "Missing the required parameter 'list_uuid' when calling SfvbApi.get_sfvb_comms_list_members"
5797
+ end
5798
+ # resource path
5799
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/lists/{list_uuid}/members'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s)).sub('{' + 'list_uuid' + '}', CGI.escape(list_uuid.to_s))
5800
+
5801
+ # query parameters
5802
+ query_params = opts[:query_params] || {}
5803
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
5804
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
5805
+ query_params[:'show_customer_data'] = opts[:'show_customer_data'] if !opts[:'show_customer_data'].nil?
5806
+
5807
+ # header parameters
5808
+ header_params = opts[:header_params] || {}
5809
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
5810
+ # HTTP header 'Accept' (if needed)
5811
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
5812
+
5813
+ # form parameters
5814
+ form_params = opts[:form_params] || {}
5815
+
5816
+ # http body (model)
5817
+ post_body = opts[:debug_body]
5818
+
5819
+ # return_type
5820
+ return_type = opts[:debug_return_type] || 'SfvbCommsMembersResponse'
5821
+
5822
+ # auth_names
5823
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
5824
+
5825
+ new_options = opts.merge(
5826
+ :operation => :"SfvbApi.get_sfvb_comms_list_members",
5827
+ :header_params => header_params,
5828
+ :query_params => query_params,
5829
+ :form_params => form_params,
5830
+ :body => post_body,
5831
+ :auth_names => auth_names,
5832
+ :return_type => return_type
5833
+ )
5834
+
5835
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
5836
+ if @api_client.config.debugging
5837
+ @api_client.config.logger.debug "API called: SfvbApi#get_sfvb_comms_list_members\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
5838
+ end
5839
+ return data, status_code, headers
5840
+ end
5841
+
5842
+ # Find which storefront a communications uuid lives on
5843
+ # Takes a campaign, flow, sequence, step, email, postcard, list or segment uuid and says which of this account's storefronts it is on, what it is, the campaign or flow it belongs to, and the command that reads it. An archived campaign or flow is found too, with archived true, and owner.archived is true when what was found belongs to one. A uuid nothing on this account has, another account's included, and a deleted step, email, postcard, list or segment, is 404. Read only.
5844
+ # @param uuid [String] The uuid to find.
5845
+ # @param [Hash] opts the optional parameters
5846
+ # @return [SfvbCommsLookupResponse]
5847
+ def get_sfvb_comms_lookup(uuid, opts = {})
5848
+ data, _status_code, _headers = get_sfvb_comms_lookup_with_http_info(uuid, opts)
5849
+ data
5850
+ end
5851
+
5852
+ # Find which storefront a communications uuid lives on
5853
+ # Takes a campaign, flow, sequence, step, email, postcard, list or segment uuid and says which of this account&#39;s storefronts it is on, what it is, the campaign or flow it belongs to, and the command that reads it. An archived campaign or flow is found too, with archived true, and owner.archived is true when what was found belongs to one. A uuid nothing on this account has, another account&#39;s included, and a deleted step, email, postcard, list or segment, is 404. Read only.
5854
+ # @param uuid [String] The uuid to find.
5269
5855
  # @param [Hash] opts the optional parameters
5270
- # @option opts [Integer] :page The page, from 1
5271
- # @option opts [Integer] :page_size Members per page, 1 to 100 (default 50)
5272
- # @option opts [Boolean] :show_customer_data True to return the real email addresses instead of masked ones
5273
- # @return [Array<(SfvbCommsMembersResponse, Integer, Hash)>] SfvbCommsMembersResponse data, response status code and response headers
5274
- def get_sfvb_comms_list_members_with_http_info(storefront_oid, list_uuid, opts = {})
5856
+ # @return [Array<(SfvbCommsLookupResponse, Integer, Hash)>] SfvbCommsLookupResponse data, response status code and response headers
5857
+ def get_sfvb_comms_lookup_with_http_info(uuid, opts = {})
5275
5858
  if @api_client.config.debugging
5276
- @api_client.config.logger.debug 'Calling API: SfvbApi.get_sfvb_comms_list_members ...'
5277
- end
5278
- # verify the required parameter 'storefront_oid' is set
5279
- if @api_client.config.client_side_validation && storefront_oid.nil?
5280
- fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.get_sfvb_comms_list_members"
5859
+ @api_client.config.logger.debug 'Calling API: SfvbApi.get_sfvb_comms_lookup ...'
5281
5860
  end
5282
- # verify the required parameter 'list_uuid' is set
5283
- if @api_client.config.client_side_validation && list_uuid.nil?
5284
- fail ArgumentError, "Missing the required parameter 'list_uuid' when calling SfvbApi.get_sfvb_comms_list_members"
5861
+ # verify the required parameter 'uuid' is set
5862
+ if @api_client.config.client_side_validation && uuid.nil?
5863
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling SfvbApi.get_sfvb_comms_lookup"
5285
5864
  end
5286
5865
  # resource path
5287
- local_var_path = '/sfvb/storefronts/{storefront_oid}/lists/{list_uuid}/members'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s)).sub('{' + 'list_uuid' + '}', CGI.escape(list_uuid.to_s))
5866
+ local_var_path = '/sfvb/comms/lookup'
5288
5867
 
5289
5868
  # query parameters
5290
5869
  query_params = opts[:query_params] || {}
5291
- query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
5292
- query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
5293
- query_params[:'show_customer_data'] = opts[:'show_customer_data'] if !opts[:'show_customer_data'].nil?
5870
+ query_params[:'uuid'] = uuid
5294
5871
 
5295
5872
  # header parameters
5296
5873
  header_params = opts[:header_params] || {}
@@ -5305,13 +5882,13 @@ module UltracartClient
5305
5882
  post_body = opts[:debug_body]
5306
5883
 
5307
5884
  # return_type
5308
- return_type = opts[:debug_return_type] || 'SfvbCommsMembersResponse'
5885
+ return_type = opts[:debug_return_type] || 'SfvbCommsLookupResponse'
5309
5886
 
5310
5887
  # auth_names
5311
5888
  auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
5312
5889
 
5313
5890
  new_options = opts.merge(
5314
- :operation => :"SfvbApi.get_sfvb_comms_list_members",
5891
+ :operation => :"SfvbApi.get_sfvb_comms_lookup",
5315
5892
  :header_params => header_params,
5316
5893
  :query_params => query_params,
5317
5894
  :form_params => form_params,
@@ -5322,7 +5899,7 @@ module UltracartClient
5322
5899
 
5323
5900
  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
5324
5901
  if @api_client.config.debugging
5325
- @api_client.config.logger.debug "API called: SfvbApi#get_sfvb_comms_list_members\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
5902
+ @api_client.config.logger.debug "API called: SfvbApi#get_sfvb_comms_lookup\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
5326
5903
  end
5327
5904
  return data, status_code, headers
5328
5905
  end
@@ -5864,7 +6441,7 @@ module UltracartClient
5864
6441
  end
5865
6442
 
5866
6443
  # Read one saved email template's body
5867
- # A system template or one saved on this storefront; any other is 404. container_cjson is the body. The Velocity template it renders inside is named in email_template_vm_path, not shown. Read only.
6444
+ # A system template or one saved on this storefront; any other is 404. container_cjson is the body. The Velocity template it renders inside is the theme file at template_path; read it with the files endpoints. Read only.
5868
6445
  # @param storefront_oid [Integer]
5869
6446
  # @param email_template_oid [Integer]
5870
6447
  # @param [Hash] opts the optional parameters
@@ -5875,7 +6452,7 @@ module UltracartClient
5875
6452
  end
5876
6453
 
5877
6454
  # Read one saved email template&#39;s body
5878
- # A system template or one saved on this storefront; any other is 404. container_cjson is the body. The Velocity template it renders inside is named in email_template_vm_path, not shown. Read only.
6455
+ # A system template or one saved on this storefront; any other is 404. container_cjson is the body. The Velocity template it renders inside is the theme file at template_path; read it with the files endpoints. Read only.
5879
6456
  # @param storefront_oid [Integer]
5880
6457
  # @param email_template_oid [Integer]
5881
6458
  # @param [Hash] opts the optional parameters
@@ -6055,6 +6632,70 @@ module UltracartClient
6055
6632
  return data, status_code, headers
6056
6633
  end
6057
6634
 
6635
+ # List the emails and postcards on a storefront that no step names
6636
+ # An email or postcard no step of any sequence on this storefront names, an off or archived flow's included, so nothing sends it. The admin's add can leave one when its second call fails. Most recently changed first. Read only, nothing is deleted.
6637
+ # @param storefront_oid [Integer]
6638
+ # @param [Hash] opts the optional parameters
6639
+ # @return [SfvbCommsUnreferencedResponse]
6640
+ def get_sfvb_comms_unreferenced(storefront_oid, opts = {})
6641
+ data, _status_code, _headers = get_sfvb_comms_unreferenced_with_http_info(storefront_oid, opts)
6642
+ data
6643
+ end
6644
+
6645
+ # List the emails and postcards on a storefront that no step names
6646
+ # An email or postcard no step of any sequence on this storefront names, an off or archived flow&#39;s included, so nothing sends it. The admin&#39;s add can leave one when its second call fails. Most recently changed first. Read only, nothing is deleted.
6647
+ # @param storefront_oid [Integer]
6648
+ # @param [Hash] opts the optional parameters
6649
+ # @return [Array<(SfvbCommsUnreferencedResponse, Integer, Hash)>] SfvbCommsUnreferencedResponse data, response status code and response headers
6650
+ def get_sfvb_comms_unreferenced_with_http_info(storefront_oid, opts = {})
6651
+ if @api_client.config.debugging
6652
+ @api_client.config.logger.debug 'Calling API: SfvbApi.get_sfvb_comms_unreferenced ...'
6653
+ end
6654
+ # verify the required parameter 'storefront_oid' is set
6655
+ if @api_client.config.client_side_validation && storefront_oid.nil?
6656
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.get_sfvb_comms_unreferenced"
6657
+ end
6658
+ # resource path
6659
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/comms/unreferenced'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s))
6660
+
6661
+ # query parameters
6662
+ query_params = opts[:query_params] || {}
6663
+
6664
+ # header parameters
6665
+ header_params = opts[:header_params] || {}
6666
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
6667
+ # HTTP header 'Accept' (if needed)
6668
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
6669
+
6670
+ # form parameters
6671
+ form_params = opts[:form_params] || {}
6672
+
6673
+ # http body (model)
6674
+ post_body = opts[:debug_body]
6675
+
6676
+ # return_type
6677
+ return_type = opts[:debug_return_type] || 'SfvbCommsUnreferencedResponse'
6678
+
6679
+ # auth_names
6680
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
6681
+
6682
+ new_options = opts.merge(
6683
+ :operation => :"SfvbApi.get_sfvb_comms_unreferenced",
6684
+ :header_params => header_params,
6685
+ :query_params => query_params,
6686
+ :form_params => form_params,
6687
+ :body => post_body,
6688
+ :auth_names => auth_names,
6689
+ :return_type => return_type
6690
+ )
6691
+
6692
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
6693
+ if @api_client.config.debugging
6694
+ @api_client.config.logger.debug "API called: SfvbApi#get_sfvb_comms_unreferenced\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
6695
+ end
6696
+ return data, status_code, headers
6697
+ end
6698
+
6058
6699
  # Read a container stored outside the file system
6059
6700
  # owner_type is one of upsell, email, postcardfront, postcardback, item or itemid. It also says how owner_object_id is read - item and upsell take an oid, itemid takes a merchant item id, and the rest take an esp uuid. itemid reaches the same containers as item and is the way to address one from a storefront, where data-context-item-id carries the merchant item id and the oid appears nowhere. Item containers also require container_name. Theme and page containers are files; read those through files/content.
6060
6701
  # @param storefront_oid [Integer]
@@ -6278,7 +6919,7 @@ module UltracartClient
6278
6919
  end
6279
6920
 
6280
6921
  # Get a flow or campaign email's subject and preview text
6281
- # The subject, preview text and hash_sha256 to send as If-Match when updating them, with whether the email is live and its review state. The body is the email container (owner type email). Find the uuid in the storefront's campaigns and flows.
6922
+ # The subject, preview text and hash_sha256 to send as If-Match when updating them, with whether the email is live and its review state. The body is the email container (owner type email). The Velocity template it renders inside is the theme file at template_path; read it with the files endpoints, whose read reports valid and velocity_errors. Find the uuid in the storefront's campaigns and flows.
6282
6923
  # @param storefront_oid [Integer]
6283
6924
  # @param email_uuid [String]
6284
6925
  # @param [Hash] opts the optional parameters
@@ -6289,7 +6930,7 @@ module UltracartClient
6289
6930
  end
6290
6931
 
6291
6932
  # Get a flow or campaign email&#39;s subject and preview text
6292
- # The subject, preview text and hash_sha256 to send as If-Match when updating them, with whether the email is live and its review state. The body is the email container (owner type email). Find the uuid in the storefront&#39;s campaigns and flows.
6933
+ # The subject, preview text and hash_sha256 to send as If-Match when updating them, with whether the email is live and its review state. The body is the email container (owner type email). The Velocity template it renders inside is the theme file at template_path; read it with the files endpoints, whose read reports valid and velocity_errors. Find the uuid in the storefront&#39;s campaigns and flows.
6293
6934
  # @param storefront_oid [Integer]
6294
6935
  # @param email_uuid [String]
6295
6936
  # @param [Hash] opts the optional parameters
@@ -11145,6 +11786,156 @@ module UltracartClient
11145
11786
  return data, status_code, headers
11146
11787
  end
11147
11788
 
11789
+ # Create a campaign folder
11790
+ # A new, empty folder. File a campaign in it by setting its folder_uuid.
11791
+ # @param storefront_oid [Integer]
11792
+ # @param folder_write_request [SfvbCommsFolderWriteRequest] The new folder&#39;s name
11793
+ # @param [Hash] opts the optional parameters
11794
+ # @return [SfvbCommsSequenceFolderResponse]
11795
+ def insert_sfvb_comms_campaign_folder(storefront_oid, folder_write_request, opts = {})
11796
+ data, _status_code, _headers = insert_sfvb_comms_campaign_folder_with_http_info(storefront_oid, folder_write_request, opts)
11797
+ data
11798
+ end
11799
+
11800
+ # Create a campaign folder
11801
+ # A new, empty folder. File a campaign in it by setting its folder_uuid.
11802
+ # @param storefront_oid [Integer]
11803
+ # @param folder_write_request [SfvbCommsFolderWriteRequest] The new folder&#39;s name
11804
+ # @param [Hash] opts the optional parameters
11805
+ # @return [Array<(SfvbCommsSequenceFolderResponse, Integer, Hash)>] SfvbCommsSequenceFolderResponse data, response status code and response headers
11806
+ def insert_sfvb_comms_campaign_folder_with_http_info(storefront_oid, folder_write_request, opts = {})
11807
+ if @api_client.config.debugging
11808
+ @api_client.config.logger.debug 'Calling API: SfvbApi.insert_sfvb_comms_campaign_folder ...'
11809
+ end
11810
+ # verify the required parameter 'storefront_oid' is set
11811
+ if @api_client.config.client_side_validation && storefront_oid.nil?
11812
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.insert_sfvb_comms_campaign_folder"
11813
+ end
11814
+ # verify the required parameter 'folder_write_request' is set
11815
+ if @api_client.config.client_side_validation && folder_write_request.nil?
11816
+ fail ArgumentError, "Missing the required parameter 'folder_write_request' when calling SfvbApi.insert_sfvb_comms_campaign_folder"
11817
+ end
11818
+ # resource path
11819
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/campaign_folders'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s))
11820
+
11821
+ # query parameters
11822
+ query_params = opts[:query_params] || {}
11823
+
11824
+ # header parameters
11825
+ header_params = opts[:header_params] || {}
11826
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
11827
+ # HTTP header 'Accept' (if needed)
11828
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
11829
+ # HTTP header 'Content-Type'
11830
+ content_type = @api_client.select_header_content_type(['application/json'])
11831
+ if !content_type.nil?
11832
+ header_params['Content-Type'] = content_type
11833
+ end
11834
+
11835
+ # form parameters
11836
+ form_params = opts[:form_params] || {}
11837
+
11838
+ # http body (model)
11839
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(folder_write_request)
11840
+
11841
+ # return_type
11842
+ return_type = opts[:debug_return_type] || 'SfvbCommsSequenceFolderResponse'
11843
+
11844
+ # auth_names
11845
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
11846
+
11847
+ new_options = opts.merge(
11848
+ :operation => :"SfvbApi.insert_sfvb_comms_campaign_folder",
11849
+ :header_params => header_params,
11850
+ :query_params => query_params,
11851
+ :form_params => form_params,
11852
+ :body => post_body,
11853
+ :auth_names => auth_names,
11854
+ :return_type => return_type
11855
+ )
11856
+
11857
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
11858
+ if @api_client.config.debugging
11859
+ @api_client.config.logger.debug "API called: SfvbApi#insert_sfvb_comms_campaign_folder\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
11860
+ end
11861
+ return data, status_code, headers
11862
+ end
11863
+
11864
+ # Create a flow folder
11865
+ # A new, empty folder. File a flow in it by setting its folder_uuid.
11866
+ # @param storefront_oid [Integer]
11867
+ # @param folder_write_request [SfvbCommsFolderWriteRequest] The new folder&#39;s name
11868
+ # @param [Hash] opts the optional parameters
11869
+ # @return [SfvbCommsSequenceFolderResponse]
11870
+ def insert_sfvb_comms_flow_folder(storefront_oid, folder_write_request, opts = {})
11871
+ data, _status_code, _headers = insert_sfvb_comms_flow_folder_with_http_info(storefront_oid, folder_write_request, opts)
11872
+ data
11873
+ end
11874
+
11875
+ # Create a flow folder
11876
+ # A new, empty folder. File a flow in it by setting its folder_uuid.
11877
+ # @param storefront_oid [Integer]
11878
+ # @param folder_write_request [SfvbCommsFolderWriteRequest] The new folder&#39;s name
11879
+ # @param [Hash] opts the optional parameters
11880
+ # @return [Array<(SfvbCommsSequenceFolderResponse, Integer, Hash)>] SfvbCommsSequenceFolderResponse data, response status code and response headers
11881
+ def insert_sfvb_comms_flow_folder_with_http_info(storefront_oid, folder_write_request, opts = {})
11882
+ if @api_client.config.debugging
11883
+ @api_client.config.logger.debug 'Calling API: SfvbApi.insert_sfvb_comms_flow_folder ...'
11884
+ end
11885
+ # verify the required parameter 'storefront_oid' is set
11886
+ if @api_client.config.client_side_validation && storefront_oid.nil?
11887
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.insert_sfvb_comms_flow_folder"
11888
+ end
11889
+ # verify the required parameter 'folder_write_request' is set
11890
+ if @api_client.config.client_side_validation && folder_write_request.nil?
11891
+ fail ArgumentError, "Missing the required parameter 'folder_write_request' when calling SfvbApi.insert_sfvb_comms_flow_folder"
11892
+ end
11893
+ # resource path
11894
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/flow_folders'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s))
11895
+
11896
+ # query parameters
11897
+ query_params = opts[:query_params] || {}
11898
+
11899
+ # header parameters
11900
+ header_params = opts[:header_params] || {}
11901
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
11902
+ # HTTP header 'Accept' (if needed)
11903
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
11904
+ # HTTP header 'Content-Type'
11905
+ content_type = @api_client.select_header_content_type(['application/json'])
11906
+ if !content_type.nil?
11907
+ header_params['Content-Type'] = content_type
11908
+ end
11909
+
11910
+ # form parameters
11911
+ form_params = opts[:form_params] || {}
11912
+
11913
+ # http body (model)
11914
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(folder_write_request)
11915
+
11916
+ # return_type
11917
+ return_type = opts[:debug_return_type] || 'SfvbCommsSequenceFolderResponse'
11918
+
11919
+ # auth_names
11920
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
11921
+
11922
+ new_options = opts.merge(
11923
+ :operation => :"SfvbApi.insert_sfvb_comms_flow_folder",
11924
+ :header_params => header_params,
11925
+ :query_params => query_params,
11926
+ :form_params => form_params,
11927
+ :body => post_body,
11928
+ :auth_names => auth_names,
11929
+ :return_type => return_type
11930
+ )
11931
+
11932
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
11933
+ if @api_client.config.debugging
11934
+ @api_client.config.logger.debug "API called: SfvbApi#insert_sfvb_comms_flow_folder\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
11935
+ end
11936
+ return data, status_code, headers
11937
+ end
11938
+
11148
11939
  # Create a list and segment folder
11149
11940
  # A new, empty folder. File a list or segment in it by setting its folder_uuid.
11150
11941
  # @param storefront_oid [Integer]
@@ -15475,7 +16266,88 @@ module UltracartClient
15475
16266
 
15476
16267
  data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
15477
16268
  if @api_client.config.debugging
15478
- @api_client.config.logger.debug "API called: SfvbApi#put_sfvb_preview_session\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
16269
+ @api_client.config.logger.debug "API called: SfvbApi#put_sfvb_preview_session\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
16270
+ end
16271
+ return data, status_code, headers
16272
+ end
16273
+
16274
+ # Stage custom tracking HTML in a preview session
16275
+ # Runs Tracking HTML, Conversion HTML or both instead of the storefront's live slots, only in a browser that opened this session's preview access link, so a page can be checked before the write is approved. Staged Conversion HTML runs only on a test order's receipt. Each slot gets the same checks as a write. An empty string unstages a slot; a slot left out is left as it is. Containers pushed to the session later keep what is staged. Needs sfvb_write and a token that resolves to a user; no approval, since nothing durable is written and only that user's own session runs it.
16276
+ # @param storefront_oid [Integer]
16277
+ # @param preview_session_id [String]
16278
+ # @param preview_tracking_html [SfvbPreviewTrackingHtmlRequest] The HTML to stage
16279
+ # @param [Hash] opts the optional parameters
16280
+ # @return [SfvbTrackingHtmlResponse]
16281
+ def put_sfvb_preview_tracking_html(storefront_oid, preview_session_id, preview_tracking_html, opts = {})
16282
+ data, _status_code, _headers = put_sfvb_preview_tracking_html_with_http_info(storefront_oid, preview_session_id, preview_tracking_html, opts)
16283
+ data
16284
+ end
16285
+
16286
+ # Stage custom tracking HTML in a preview session
16287
+ # Runs Tracking HTML, Conversion HTML or both instead of the storefront&#39;s live slots, only in a browser that opened this session&#39;s preview access link, so a page can be checked before the write is approved. Staged Conversion HTML runs only on a test order&#39;s receipt. Each slot gets the same checks as a write. An empty string unstages a slot; a slot left out is left as it is. Containers pushed to the session later keep what is staged. Needs sfvb_write and a token that resolves to a user; no approval, since nothing durable is written and only that user&#39;s own session runs it.
16288
+ # @param storefront_oid [Integer]
16289
+ # @param preview_session_id [String]
16290
+ # @param preview_tracking_html [SfvbPreviewTrackingHtmlRequest] The HTML to stage
16291
+ # @param [Hash] opts the optional parameters
16292
+ # @return [Array<(SfvbTrackingHtmlResponse, Integer, Hash)>] SfvbTrackingHtmlResponse data, response status code and response headers
16293
+ def put_sfvb_preview_tracking_html_with_http_info(storefront_oid, preview_session_id, preview_tracking_html, opts = {})
16294
+ if @api_client.config.debugging
16295
+ @api_client.config.logger.debug 'Calling API: SfvbApi.put_sfvb_preview_tracking_html ...'
16296
+ end
16297
+ # verify the required parameter 'storefront_oid' is set
16298
+ if @api_client.config.client_side_validation && storefront_oid.nil?
16299
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.put_sfvb_preview_tracking_html"
16300
+ end
16301
+ # verify the required parameter 'preview_session_id' is set
16302
+ if @api_client.config.client_side_validation && preview_session_id.nil?
16303
+ fail ArgumentError, "Missing the required parameter 'preview_session_id' when calling SfvbApi.put_sfvb_preview_tracking_html"
16304
+ end
16305
+ # verify the required parameter 'preview_tracking_html' is set
16306
+ if @api_client.config.client_side_validation && preview_tracking_html.nil?
16307
+ fail ArgumentError, "Missing the required parameter 'preview_tracking_html' when calling SfvbApi.put_sfvb_preview_tracking_html"
16308
+ end
16309
+ # resource path
16310
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/preview_sessions/{preview_session_id}/tracking_html'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s)).sub('{' + 'preview_session_id' + '}', CGI.escape(preview_session_id.to_s))
16311
+
16312
+ # query parameters
16313
+ query_params = opts[:query_params] || {}
16314
+
16315
+ # header parameters
16316
+ header_params = opts[:header_params] || {}
16317
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
16318
+ # HTTP header 'Accept' (if needed)
16319
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
16320
+ # HTTP header 'Content-Type'
16321
+ content_type = @api_client.select_header_content_type(['application/json; charset=UTF-8'])
16322
+ if !content_type.nil?
16323
+ header_params['Content-Type'] = content_type
16324
+ end
16325
+
16326
+ # form parameters
16327
+ form_params = opts[:form_params] || {}
16328
+
16329
+ # http body (model)
16330
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(preview_tracking_html)
16331
+
16332
+ # return_type
16333
+ return_type = opts[:debug_return_type] || 'SfvbTrackingHtmlResponse'
16334
+
16335
+ # auth_names
16336
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
16337
+
16338
+ new_options = opts.merge(
16339
+ :operation => :"SfvbApi.put_sfvb_preview_tracking_html",
16340
+ :header_params => header_params,
16341
+ :query_params => query_params,
16342
+ :form_params => form_params,
16343
+ :body => post_body,
16344
+ :auth_names => auth_names,
16345
+ :return_type => return_type
16346
+ )
16347
+
16348
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
16349
+ if @api_client.config.debugging
16350
+ @api_client.config.logger.debug "API called: SfvbApi#put_sfvb_preview_tracking_html\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
15479
16351
  end
15480
16352
  return data, status_code, headers
15481
16353
  end
@@ -16095,6 +16967,87 @@ module UltracartClient
16095
16967
  return data, status_code, headers
16096
16968
  end
16097
16969
 
16970
+ # Render the Conversion HTML against a test order
16971
+ # The Conversion HTML as the receipt of that order would inject it: order tokens filled, then Velocity run with $order, $conversion and $formatHelper. Renders the stored slot, or content when it is sent (a draft, checked as a write is). Only a test order on this account may be used; a real or unknown order is refused the same way. Nothing is saved, injected or sent: the receipt's provider pixels, analytics and postbacks do not run, and a token that would write something ([CouponForNewAffiliate=...]) is left as written. Only the conversion slot renders; tracking HTML is checked by staging it in a preview session.
16972
+ # @param storefront_oid [Integer]
16973
+ # @param slot [String] conversion
16974
+ # @param tracking_html_render_request [SfvbTrackingHtmlRenderRequest] The test order, and optionally a draft
16975
+ # @param [Hash] opts the optional parameters
16976
+ # @return [SfvbTrackingHtmlRenderResponse]
16977
+ def render_sfvb_tracking_html(storefront_oid, slot, tracking_html_render_request, opts = {})
16978
+ data, _status_code, _headers = render_sfvb_tracking_html_with_http_info(storefront_oid, slot, tracking_html_render_request, opts)
16979
+ data
16980
+ end
16981
+
16982
+ # Render the Conversion HTML against a test order
16983
+ # The Conversion HTML as the receipt of that order would inject it: order tokens filled, then Velocity run with $order, $conversion and $formatHelper. Renders the stored slot, or content when it is sent (a draft, checked as a write is). Only a test order on this account may be used; a real or unknown order is refused the same way. Nothing is saved, injected or sent: the receipt&#39;s provider pixels, analytics and postbacks do not run, and a token that would write something ([CouponForNewAffiliate&#x3D;...]) is left as written. Only the conversion slot renders; tracking HTML is checked by staging it in a preview session.
16984
+ # @param storefront_oid [Integer]
16985
+ # @param slot [String] conversion
16986
+ # @param tracking_html_render_request [SfvbTrackingHtmlRenderRequest] The test order, and optionally a draft
16987
+ # @param [Hash] opts the optional parameters
16988
+ # @return [Array<(SfvbTrackingHtmlRenderResponse, Integer, Hash)>] SfvbTrackingHtmlRenderResponse data, response status code and response headers
16989
+ def render_sfvb_tracking_html_with_http_info(storefront_oid, slot, tracking_html_render_request, opts = {})
16990
+ if @api_client.config.debugging
16991
+ @api_client.config.logger.debug 'Calling API: SfvbApi.render_sfvb_tracking_html ...'
16992
+ end
16993
+ # verify the required parameter 'storefront_oid' is set
16994
+ if @api_client.config.client_side_validation && storefront_oid.nil?
16995
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.render_sfvb_tracking_html"
16996
+ end
16997
+ # verify the required parameter 'slot' is set
16998
+ if @api_client.config.client_side_validation && slot.nil?
16999
+ fail ArgumentError, "Missing the required parameter 'slot' when calling SfvbApi.render_sfvb_tracking_html"
17000
+ end
17001
+ # verify the required parameter 'tracking_html_render_request' is set
17002
+ if @api_client.config.client_side_validation && tracking_html_render_request.nil?
17003
+ fail ArgumentError, "Missing the required parameter 'tracking_html_render_request' when calling SfvbApi.render_sfvb_tracking_html"
17004
+ end
17005
+ # resource path
17006
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/tracking/html/{slot}/render'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s)).sub('{' + 'slot' + '}', CGI.escape(slot.to_s))
17007
+
17008
+ # query parameters
17009
+ query_params = opts[:query_params] || {}
17010
+
17011
+ # header parameters
17012
+ header_params = opts[:header_params] || {}
17013
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
17014
+ # HTTP header 'Accept' (if needed)
17015
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
17016
+ # HTTP header 'Content-Type'
17017
+ content_type = @api_client.select_header_content_type(['application/json; charset=UTF-8'])
17018
+ if !content_type.nil?
17019
+ header_params['Content-Type'] = content_type
17020
+ end
17021
+
17022
+ # form parameters
17023
+ form_params = opts[:form_params] || {}
17024
+
17025
+ # http body (model)
17026
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(tracking_html_render_request)
17027
+
17028
+ # return_type
17029
+ return_type = opts[:debug_return_type] || 'SfvbTrackingHtmlRenderResponse'
17030
+
17031
+ # auth_names
17032
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
17033
+
17034
+ new_options = opts.merge(
17035
+ :operation => :"SfvbApi.render_sfvb_tracking_html",
17036
+ :header_params => header_params,
17037
+ :query_params => query_params,
17038
+ :form_params => form_params,
17039
+ :body => post_body,
17040
+ :auth_names => auth_names,
17041
+ :return_type => return_type
17042
+ )
17043
+
17044
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
17045
+ if @api_client.config.debugging
17046
+ @api_client.config.logger.debug "API called: SfvbApi#render_sfvb_tracking_html\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
17047
+ end
17048
+ return data, status_code, headers
17049
+ end
17050
+
16098
17051
  # Render a transactional email without sending it
16099
17052
  # Renders a transactional email, such as the order receipt, exactly as it is sent, and returns the subject, HTML and text. Nothing is sent or saved. file_name is the template file, such as receipt_html.vm, or the display name. Give cjson to render an unsaved draft of the email's body container in place of the saved one. The order must be a test order. Without one the email renders with a made up order.
16100
17053
  # @param storefront_oid [Integer]
@@ -18236,6 +19189,182 @@ module UltracartClient
18236
19189
  return data, status_code, headers
18237
19190
  end
18238
19191
 
19192
+ # Rename a campaign folder
19193
+ # Send the folder's hash_sha256 as If-Match. A folder the admin made itself (system_generated) can't be renamed here.
19194
+ # @param storefront_oid [Integer]
19195
+ # @param folder_uuid [String]
19196
+ # @param if_match [String] The folder&#39;s hash_sha256 from the last read. Required; 428 when absent, 412 when stale.
19197
+ # @param folder_write_request [SfvbCommsFolderWriteRequest] The new name
19198
+ # @param [Hash] opts the optional parameters
19199
+ # @return [SfvbCommsSequenceFolderResponse]
19200
+ def update_sfvb_comms_campaign_folder(storefront_oid, folder_uuid, if_match, folder_write_request, opts = {})
19201
+ data, _status_code, _headers = update_sfvb_comms_campaign_folder_with_http_info(storefront_oid, folder_uuid, if_match, folder_write_request, opts)
19202
+ data
19203
+ end
19204
+
19205
+ # Rename a campaign folder
19206
+ # Send the folder&#39;s hash_sha256 as If-Match. A folder the admin made itself (system_generated) can&#39;t be renamed here.
19207
+ # @param storefront_oid [Integer]
19208
+ # @param folder_uuid [String]
19209
+ # @param if_match [String] The folder&#39;s hash_sha256 from the last read. Required; 428 when absent, 412 when stale.
19210
+ # @param folder_write_request [SfvbCommsFolderWriteRequest] The new name
19211
+ # @param [Hash] opts the optional parameters
19212
+ # @return [Array<(SfvbCommsSequenceFolderResponse, Integer, Hash)>] SfvbCommsSequenceFolderResponse data, response status code and response headers
19213
+ def update_sfvb_comms_campaign_folder_with_http_info(storefront_oid, folder_uuid, if_match, folder_write_request, opts = {})
19214
+ if @api_client.config.debugging
19215
+ @api_client.config.logger.debug 'Calling API: SfvbApi.update_sfvb_comms_campaign_folder ...'
19216
+ end
19217
+ # verify the required parameter 'storefront_oid' is set
19218
+ if @api_client.config.client_side_validation && storefront_oid.nil?
19219
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.update_sfvb_comms_campaign_folder"
19220
+ end
19221
+ # verify the required parameter 'folder_uuid' is set
19222
+ if @api_client.config.client_side_validation && folder_uuid.nil?
19223
+ fail ArgumentError, "Missing the required parameter 'folder_uuid' when calling SfvbApi.update_sfvb_comms_campaign_folder"
19224
+ end
19225
+ # verify the required parameter 'if_match' is set
19226
+ if @api_client.config.client_side_validation && if_match.nil?
19227
+ fail ArgumentError, "Missing the required parameter 'if_match' when calling SfvbApi.update_sfvb_comms_campaign_folder"
19228
+ end
19229
+ # verify the required parameter 'folder_write_request' is set
19230
+ if @api_client.config.client_side_validation && folder_write_request.nil?
19231
+ fail ArgumentError, "Missing the required parameter 'folder_write_request' when calling SfvbApi.update_sfvb_comms_campaign_folder"
19232
+ end
19233
+ # resource path
19234
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/campaign_folders/{folder_uuid}'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s)).sub('{' + 'folder_uuid' + '}', CGI.escape(folder_uuid.to_s))
19235
+
19236
+ # query parameters
19237
+ query_params = opts[:query_params] || {}
19238
+
19239
+ # header parameters
19240
+ header_params = opts[:header_params] || {}
19241
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
19242
+ # HTTP header 'Accept' (if needed)
19243
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
19244
+ # HTTP header 'Content-Type'
19245
+ content_type = @api_client.select_header_content_type(['application/json'])
19246
+ if !content_type.nil?
19247
+ header_params['Content-Type'] = content_type
19248
+ end
19249
+ header_params[:'If-Match'] = if_match
19250
+
19251
+ # form parameters
19252
+ form_params = opts[:form_params] || {}
19253
+
19254
+ # http body (model)
19255
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(folder_write_request)
19256
+
19257
+ # return_type
19258
+ return_type = opts[:debug_return_type] || 'SfvbCommsSequenceFolderResponse'
19259
+
19260
+ # auth_names
19261
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
19262
+
19263
+ new_options = opts.merge(
19264
+ :operation => :"SfvbApi.update_sfvb_comms_campaign_folder",
19265
+ :header_params => header_params,
19266
+ :query_params => query_params,
19267
+ :form_params => form_params,
19268
+ :body => post_body,
19269
+ :auth_names => auth_names,
19270
+ :return_type => return_type
19271
+ )
19272
+
19273
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
19274
+ if @api_client.config.debugging
19275
+ @api_client.config.logger.debug "API called: SfvbApi#update_sfvb_comms_campaign_folder\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
19276
+ end
19277
+ return data, status_code, headers
19278
+ end
19279
+
19280
+ # Rename a flow folder
19281
+ # Send the folder's hash_sha256 as If-Match. A folder the admin made itself (system_generated) can't be renamed here.
19282
+ # @param storefront_oid [Integer]
19283
+ # @param folder_uuid [String]
19284
+ # @param if_match [String] The folder&#39;s hash_sha256 from the last read. Required; 428 when absent, 412 when stale.
19285
+ # @param folder_write_request [SfvbCommsFolderWriteRequest] The new name
19286
+ # @param [Hash] opts the optional parameters
19287
+ # @return [SfvbCommsSequenceFolderResponse]
19288
+ def update_sfvb_comms_flow_folder(storefront_oid, folder_uuid, if_match, folder_write_request, opts = {})
19289
+ data, _status_code, _headers = update_sfvb_comms_flow_folder_with_http_info(storefront_oid, folder_uuid, if_match, folder_write_request, opts)
19290
+ data
19291
+ end
19292
+
19293
+ # Rename a flow folder
19294
+ # Send the folder&#39;s hash_sha256 as If-Match. A folder the admin made itself (system_generated) can&#39;t be renamed here.
19295
+ # @param storefront_oid [Integer]
19296
+ # @param folder_uuid [String]
19297
+ # @param if_match [String] The folder&#39;s hash_sha256 from the last read. Required; 428 when absent, 412 when stale.
19298
+ # @param folder_write_request [SfvbCommsFolderWriteRequest] The new name
19299
+ # @param [Hash] opts the optional parameters
19300
+ # @return [Array<(SfvbCommsSequenceFolderResponse, Integer, Hash)>] SfvbCommsSequenceFolderResponse data, response status code and response headers
19301
+ def update_sfvb_comms_flow_folder_with_http_info(storefront_oid, folder_uuid, if_match, folder_write_request, opts = {})
19302
+ if @api_client.config.debugging
19303
+ @api_client.config.logger.debug 'Calling API: SfvbApi.update_sfvb_comms_flow_folder ...'
19304
+ end
19305
+ # verify the required parameter 'storefront_oid' is set
19306
+ if @api_client.config.client_side_validation && storefront_oid.nil?
19307
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.update_sfvb_comms_flow_folder"
19308
+ end
19309
+ # verify the required parameter 'folder_uuid' is set
19310
+ if @api_client.config.client_side_validation && folder_uuid.nil?
19311
+ fail ArgumentError, "Missing the required parameter 'folder_uuid' when calling SfvbApi.update_sfvb_comms_flow_folder"
19312
+ end
19313
+ # verify the required parameter 'if_match' is set
19314
+ if @api_client.config.client_side_validation && if_match.nil?
19315
+ fail ArgumentError, "Missing the required parameter 'if_match' when calling SfvbApi.update_sfvb_comms_flow_folder"
19316
+ end
19317
+ # verify the required parameter 'folder_write_request' is set
19318
+ if @api_client.config.client_side_validation && folder_write_request.nil?
19319
+ fail ArgumentError, "Missing the required parameter 'folder_write_request' when calling SfvbApi.update_sfvb_comms_flow_folder"
19320
+ end
19321
+ # resource path
19322
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/flow_folders/{folder_uuid}'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s)).sub('{' + 'folder_uuid' + '}', CGI.escape(folder_uuid.to_s))
19323
+
19324
+ # query parameters
19325
+ query_params = opts[:query_params] || {}
19326
+
19327
+ # header parameters
19328
+ header_params = opts[:header_params] || {}
19329
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
19330
+ # HTTP header 'Accept' (if needed)
19331
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
19332
+ # HTTP header 'Content-Type'
19333
+ content_type = @api_client.select_header_content_type(['application/json'])
19334
+ if !content_type.nil?
19335
+ header_params['Content-Type'] = content_type
19336
+ end
19337
+ header_params[:'If-Match'] = if_match
19338
+
19339
+ # form parameters
19340
+ form_params = opts[:form_params] || {}
19341
+
19342
+ # http body (model)
19343
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(folder_write_request)
19344
+
19345
+ # return_type
19346
+ return_type = opts[:debug_return_type] || 'SfvbCommsSequenceFolderResponse'
19347
+
19348
+ # auth_names
19349
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
19350
+
19351
+ new_options = opts.merge(
19352
+ :operation => :"SfvbApi.update_sfvb_comms_flow_folder",
19353
+ :header_params => header_params,
19354
+ :query_params => query_params,
19355
+ :form_params => form_params,
19356
+ :body => post_body,
19357
+ :auth_names => auth_names,
19358
+ :return_type => return_type
19359
+ )
19360
+
19361
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
19362
+ if @api_client.config.debugging
19363
+ @api_client.config.logger.debug "API called: SfvbApi#update_sfvb_comms_flow_folder\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
19364
+ end
19365
+ return data, status_code, headers
19366
+ end
19367
+
18239
19368
  # Rename a list and segment folder
18240
19369
  # Send the folder's hash_sha256 as If-Match. A folder the admin made itself (system_generated) can't be renamed here.
18241
19370
  # @param storefront_oid [Integer]
@@ -20365,6 +21494,81 @@ module UltracartClient
20365
21494
  return data, status_code, headers
20366
21495
  end
20367
21496
 
21497
+ # Check an Event Ruler pattern for an Is in BigQuery segment rule
21498
+ # Compiles the pattern the way an Is in BigQuery segment rule's bigquery_ruler is checked, and says whether it is valid and, if not, why. An invalid pattern is a 200 with valid false. Nothing is read or saved. A segment create or update refuses a rule whose pattern doesn't compile, or whose bigquery_table_id isn't project.dataset.table.
21499
+ # @param storefront_oid [Integer]
21500
+ # @param ruler_validate_request [SfvbCommsRulerValidateRequest] The pattern to check
21501
+ # @param [Hash] opts the optional parameters
21502
+ # @return [SfvbCommsRulerValidateResponse]
21503
+ def validate_sfvb_comms_ruler(storefront_oid, ruler_validate_request, opts = {})
21504
+ data, _status_code, _headers = validate_sfvb_comms_ruler_with_http_info(storefront_oid, ruler_validate_request, opts)
21505
+ data
21506
+ end
21507
+
21508
+ # Check an Event Ruler pattern for an Is in BigQuery segment rule
21509
+ # Compiles the pattern the way an Is in BigQuery segment rule&#39;s bigquery_ruler is checked, and says whether it is valid and, if not, why. An invalid pattern is a 200 with valid false. Nothing is read or saved. A segment create or update refuses a rule whose pattern doesn&#39;t compile, or whose bigquery_table_id isn&#39;t project.dataset.table.
21510
+ # @param storefront_oid [Integer]
21511
+ # @param ruler_validate_request [SfvbCommsRulerValidateRequest] The pattern to check
21512
+ # @param [Hash] opts the optional parameters
21513
+ # @return [Array<(SfvbCommsRulerValidateResponse, Integer, Hash)>] SfvbCommsRulerValidateResponse data, response status code and response headers
21514
+ def validate_sfvb_comms_ruler_with_http_info(storefront_oid, ruler_validate_request, opts = {})
21515
+ if @api_client.config.debugging
21516
+ @api_client.config.logger.debug 'Calling API: SfvbApi.validate_sfvb_comms_ruler ...'
21517
+ end
21518
+ # verify the required parameter 'storefront_oid' is set
21519
+ if @api_client.config.client_side_validation && storefront_oid.nil?
21520
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling SfvbApi.validate_sfvb_comms_ruler"
21521
+ end
21522
+ # verify the required parameter 'ruler_validate_request' is set
21523
+ if @api_client.config.client_side_validation && ruler_validate_request.nil?
21524
+ fail ArgumentError, "Missing the required parameter 'ruler_validate_request' when calling SfvbApi.validate_sfvb_comms_ruler"
21525
+ end
21526
+ # resource path
21527
+ local_var_path = '/sfvb/storefronts/{storefront_oid}/comms/ruler/validate'.sub('{' + 'storefront_oid' + '}', CGI.escape(storefront_oid.to_s))
21528
+
21529
+ # query parameters
21530
+ query_params = opts[:query_params] || {}
21531
+
21532
+ # header parameters
21533
+ header_params = opts[:header_params] || {}
21534
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
21535
+ # HTTP header 'Accept' (if needed)
21536
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
21537
+ # HTTP header 'Content-Type'
21538
+ content_type = @api_client.select_header_content_type(['application/json'])
21539
+ if !content_type.nil?
21540
+ header_params['Content-Type'] = content_type
21541
+ end
21542
+
21543
+ # form parameters
21544
+ form_params = opts[:form_params] || {}
21545
+
21546
+ # http body (model)
21547
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(ruler_validate_request)
21548
+
21549
+ # return_type
21550
+ return_type = opts[:debug_return_type] || 'SfvbCommsRulerValidateResponse'
21551
+
21552
+ # auth_names
21553
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
21554
+
21555
+ new_options = opts.merge(
21556
+ :operation => :"SfvbApi.validate_sfvb_comms_ruler",
21557
+ :header_params => header_params,
21558
+ :query_params => query_params,
21559
+ :form_params => form_params,
21560
+ :body => post_body,
21561
+ :auth_names => auth_names,
21562
+ :return_type => return_type
21563
+ )
21564
+
21565
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
21566
+ if @api_client.config.debugging
21567
+ @api_client.config.logger.debug "API called: SfvbApi#validate_sfvb_comms_ruler\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
21568
+ end
21569
+ return data, status_code, headers
21570
+ end
21571
+
20368
21572
  # Validate a Velocity template against a theme
20369
21573
  # Theme scoped rather than stateless. Validation builds a theme template context and evaluates against it. Also applies the template sandbox, so an agent learns the rule before a write fails.
20370
21574
  # @param storefront_oid [Integer]