stackone_client 0.5.9 → 0.6.0

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 (213) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stack_one/accounts.rb +97 -15
  3. data/lib/stack_one/ats.rb +1442 -288
  4. data/lib/stack_one/connect_sessions.rb +40 -6
  5. data/lib/stack_one/connectors.rb +40 -6
  6. data/lib/stack_one/crm.rb +192 -30
  7. data/lib/stack_one/hris.rb +1164 -234
  8. data/lib/stack_one/iam.rb +154 -24
  9. data/lib/stack_one/lms.rb +515 -81
  10. data/lib/stack_one/marketing.rb +496 -78
  11. data/lib/stack_one/models/operations/ats_get_application_custom_field_definition_request.rb +2 -2
  12. data/lib/stack_one/models/operations/ats_get_application_document_request.rb +1 -1
  13. data/lib/stack_one/models/operations/ats_get_application_note_request.rb +1 -1
  14. data/lib/stack_one/models/operations/ats_get_application_offer_request.rb +1 -1
  15. data/lib/stack_one/models/operations/ats_get_application_request.rb +1 -1
  16. data/lib/stack_one/models/operations/ats_get_application_scheduled_interview_request.rb +1 -1
  17. data/lib/stack_one/models/operations/ats_get_application_scorecard_request.rb +1 -1
  18. data/lib/stack_one/models/operations/ats_get_assessments_package_request.rb +1 -1
  19. data/lib/stack_one/models/operations/ats_get_assessments_request_request.rb +1 -1
  20. data/lib/stack_one/models/operations/ats_get_assessments_result_request.rb +1 -1
  21. data/lib/stack_one/models/operations/ats_get_background_check_package_request.rb +1 -1
  22. data/lib/stack_one/models/operations/ats_get_background_check_request_request.rb +1 -1
  23. data/lib/stack_one/models/operations/ats_get_background_check_result_request.rb +1 -1
  24. data/lib/stack_one/models/operations/ats_get_candidate_custom_field_definition_request.rb +2 -2
  25. data/lib/stack_one/models/operations/ats_get_candidate_note_request.rb +1 -1
  26. data/lib/stack_one/models/operations/ats_get_candidate_request.rb +1 -1
  27. data/lib/stack_one/models/operations/ats_get_department_request.rb +1 -1
  28. data/lib/stack_one/models/operations/ats_get_interview_request.rb +1 -1
  29. data/lib/stack_one/models/operations/ats_get_interview_stage_request.rb +1 -1
  30. data/lib/stack_one/models/operations/ats_get_job_custom_field_definition_request.rb +2 -2
  31. data/lib/stack_one/models/operations/ats_get_job_posting_request.rb +1 -1
  32. data/lib/stack_one/models/operations/ats_get_job_request.rb +1 -1
  33. data/lib/stack_one/models/operations/ats_get_list_request.rb +1 -1
  34. data/lib/stack_one/models/operations/ats_get_location_request.rb +1 -1
  35. data/lib/stack_one/models/operations/ats_get_offer_request.rb +1 -1
  36. data/lib/stack_one/models/operations/ats_get_rejected_reason_request.rb +1 -1
  37. data/lib/stack_one/models/operations/ats_get_user_request.rb +1 -1
  38. data/lib/stack_one/models/operations/ats_list_application_custom_field_definitions_request.rb +2 -2
  39. data/lib/stack_one/models/operations/ats_list_application_documents_request.rb +2 -2
  40. data/lib/stack_one/models/operations/ats_list_application_notes_request.rb +2 -2
  41. data/lib/stack_one/models/operations/ats_list_application_scorecards_request.rb +2 -2
  42. data/lib/stack_one/models/operations/ats_list_applications_offers_request.rb +2 -2
  43. data/lib/stack_one/models/operations/ats_list_applications_request.rb +2 -2
  44. data/lib/stack_one/models/operations/ats_list_applications_scheduled_interviews_request.rb +2 -2
  45. data/lib/stack_one/models/operations/ats_list_assessments_packages_request.rb +2 -2
  46. data/lib/stack_one/models/operations/ats_list_background_check_packages_request.rb +2 -2
  47. data/lib/stack_one/models/operations/ats_list_background_check_request_request.rb +2 -2
  48. data/lib/stack_one/models/operations/ats_list_candidate_custom_field_definitions_request.rb +2 -2
  49. data/lib/stack_one/models/operations/ats_list_candidate_notes_request.rb +2 -2
  50. data/lib/stack_one/models/operations/ats_list_candidates_request.rb +2 -2
  51. data/lib/stack_one/models/operations/ats_list_departments_request.rb +2 -2
  52. data/lib/stack_one/models/operations/ats_list_interview_stages_request.rb +2 -2
  53. data/lib/stack_one/models/operations/ats_list_interviews_request.rb +2 -2
  54. data/lib/stack_one/models/operations/ats_list_job_custom_field_definitions_request.rb +2 -2
  55. data/lib/stack_one/models/operations/ats_list_job_postings_request.rb +2 -2
  56. data/lib/stack_one/models/operations/ats_list_jobs_request.rb +2 -2
  57. data/lib/stack_one/models/operations/ats_list_lists_request.rb +2 -2
  58. data/lib/stack_one/models/operations/ats_list_locations_request.rb +2 -2
  59. data/lib/stack_one/models/operations/ats_list_offers_request.rb +2 -2
  60. data/lib/stack_one/models/operations/ats_list_rejected_reasons_request.rb +2 -2
  61. data/lib/stack_one/models/operations/ats_list_users_request.rb +2 -2
  62. data/lib/stack_one/models/operations/crm_get_account_request.rb +1 -1
  63. data/lib/stack_one/models/operations/crm_get_contact_custom_field_definition_request.rb +2 -2
  64. data/lib/stack_one/models/operations/crm_get_contact_request.rb +1 -1
  65. data/lib/stack_one/models/operations/crm_get_list_request.rb +1 -1
  66. data/lib/stack_one/models/operations/crm_list_accounts_request.rb +2 -2
  67. data/lib/stack_one/models/operations/crm_list_contact_custom_field_definitions_request.rb +2 -2
  68. data/lib/stack_one/models/operations/crm_list_contacts_request.rb +2 -2
  69. data/lib/stack_one/models/operations/crm_list_lists_request.rb +2 -2
  70. data/lib/stack_one/models/operations/hris_get_benefit_request.rb +1 -1
  71. data/lib/stack_one/models/operations/hris_get_company_request.rb +1 -1
  72. data/lib/stack_one/models/operations/hris_get_cost_center_group_request.rb +1 -1
  73. data/lib/stack_one/models/operations/hris_get_department_group_request.rb +1 -1
  74. data/lib/stack_one/models/operations/hris_get_employee_custom_field_definition_request.rb +2 -2
  75. data/lib/stack_one/models/operations/hris_get_employee_document_category_request.rb +1 -1
  76. data/lib/stack_one/models/operations/hris_get_employee_document_request.rb +1 -1
  77. data/lib/stack_one/models/operations/hris_get_employee_employment_request.rb +1 -1
  78. data/lib/stack_one/models/operations/hris_get_employee_request.rb +1 -1
  79. data/lib/stack_one/models/operations/hris_get_employee_skill_request.rb +1 -1
  80. data/lib/stack_one/models/operations/hris_get_employee_time_off_balance_request.rb +1 -1
  81. data/lib/stack_one/models/operations/hris_get_employees_time_off_request_request.rb +1 -1
  82. data/lib/stack_one/models/operations/hris_get_employees_work_eligibility_request.rb +1 -1
  83. data/lib/stack_one/models/operations/hris_get_employment_request.rb +1 -1
  84. data/lib/stack_one/models/operations/hris_get_group_request.rb +1 -1
  85. data/lib/stack_one/models/operations/hris_get_job_request.rb +1 -1
  86. data/lib/stack_one/models/operations/hris_get_location_request.rb +1 -1
  87. data/lib/stack_one/models/operations/hris_get_location_response.rb +1 -1
  88. data/lib/stack_one/models/operations/hris_get_team_group_request.rb +1 -1
  89. data/lib/stack_one/models/operations/hris_get_time_entries_request.rb +1 -1
  90. data/lib/stack_one/models/operations/hris_get_time_off_policy_request.rb +1 -1
  91. data/lib/stack_one/models/operations/hris_get_time_off_request_request.rb +1 -1
  92. data/lib/stack_one/models/operations/hris_get_time_off_type_request.rb +1 -1
  93. data/lib/stack_one/models/operations/hris_list_benefits_request.rb +2 -2
  94. data/lib/stack_one/models/operations/hris_list_companies_request.rb +2 -2
  95. data/lib/stack_one/models/operations/hris_list_cost_center_groups_request.rb +2 -2
  96. data/lib/stack_one/models/operations/hris_list_department_groups_request.rb +2 -2
  97. data/lib/stack_one/models/operations/hris_list_employee_categories_request.rb +2 -2
  98. data/lib/stack_one/models/operations/hris_list_employee_custom_field_definitions_request.rb +2 -2
  99. data/lib/stack_one/models/operations/hris_list_employee_documents_request.rb +2 -2
  100. data/lib/stack_one/models/operations/hris_list_employee_employments_request.rb +2 -2
  101. data/lib/stack_one/models/operations/hris_list_employee_skills_request.rb +2 -2
  102. data/lib/stack_one/models/operations/hris_list_employee_time_off_balances_request.rb +2 -2
  103. data/lib/stack_one/models/operations/hris_list_employee_time_off_requests_request.rb +2 -2
  104. data/lib/stack_one/models/operations/hris_list_employee_work_eligibility_request.rb +2 -2
  105. data/lib/stack_one/models/operations/hris_list_employees_request.rb +2 -2
  106. data/lib/stack_one/models/operations/hris_list_employments_request.rb +2 -2
  107. data/lib/stack_one/models/operations/hris_list_groups_request.rb +2 -2
  108. data/lib/stack_one/models/operations/hris_list_jobs_request.rb +2 -2
  109. data/lib/stack_one/models/operations/hris_list_locations_request.rb +2 -2
  110. data/lib/stack_one/models/operations/hris_list_locations_response.rb +1 -1
  111. data/lib/stack_one/models/operations/hris_list_team_groups_request.rb +2 -2
  112. data/lib/stack_one/models/operations/hris_list_time_entries_request.rb +2 -2
  113. data/lib/stack_one/models/operations/hris_list_time_off_policies_request.rb +2 -2
  114. data/lib/stack_one/models/operations/hris_list_time_off_requests_request.rb +2 -2
  115. data/lib/stack_one/models/operations/hris_list_time_off_types_request.rb +2 -2
  116. data/lib/stack_one/models/operations/iam_get_group_request.rb +1 -1
  117. data/lib/stack_one/models/operations/iam_get_policy_request.rb +1 -1
  118. data/lib/stack_one/models/operations/iam_get_role_request.rb +1 -1
  119. data/lib/stack_one/models/operations/iam_get_user_request.rb +1 -1
  120. data/lib/stack_one/models/operations/iam_list_groups_request.rb +2 -2
  121. data/lib/stack_one/models/operations/iam_list_policies_request.rb +2 -2
  122. data/lib/stack_one/models/operations/iam_list_roles_request.rb +2 -2
  123. data/lib/stack_one/models/operations/iam_list_users_request.rb +2 -2
  124. data/lib/stack_one/models/operations/lms_get_assignment_request.rb +1 -1
  125. data/lib/stack_one/models/operations/lms_get_category_request.rb +1 -1
  126. data/lib/stack_one/models/operations/lms_get_completion_request.rb +1 -1
  127. data/lib/stack_one/models/operations/lms_get_content_request.rb +1 -1
  128. data/lib/stack_one/models/operations/lms_get_course_request.rb +1 -1
  129. data/lib/stack_one/models/operations/lms_get_skill_request.rb +1 -1
  130. data/lib/stack_one/models/operations/lms_get_user_assignment_request.rb +1 -1
  131. data/lib/stack_one/models/operations/lms_get_user_completion_request.rb +1 -1
  132. data/lib/stack_one/models/operations/lms_get_user_request.rb +1 -1
  133. data/lib/stack_one/models/operations/lms_list_assignments_request.rb +2 -2
  134. data/lib/stack_one/models/operations/lms_list_categories_request.rb +2 -2
  135. data/lib/stack_one/models/operations/lms_list_completions_request.rb +2 -2
  136. data/lib/stack_one/models/operations/lms_list_content_request.rb +2 -2
  137. data/lib/stack_one/models/operations/lms_list_courses_request.rb +2 -2
  138. data/lib/stack_one/models/operations/lms_list_skills_request.rb +2 -2
  139. data/lib/stack_one/models/operations/lms_list_user_assignments_request.rb +2 -2
  140. data/lib/stack_one/models/operations/lms_list_user_completions_request.rb +2 -2
  141. data/lib/stack_one/models/operations/lms_list_users_request.rb +2 -2
  142. data/lib/stack_one/models/operations/marketing_get_campaign_request.rb +1 -1
  143. data/lib/stack_one/models/operations/marketing_get_content_block_request.rb +1 -1
  144. data/lib/stack_one/models/operations/marketing_get_email_template_request.rb +1 -1
  145. data/lib/stack_one/models/operations/marketing_get_in_app_template_request.rb +1 -1
  146. data/lib/stack_one/models/operations/marketing_get_omni_channel_template_request.rb +1 -1
  147. data/lib/stack_one/models/operations/marketing_get_push_template_request.rb +1 -1
  148. data/lib/stack_one/models/operations/marketing_get_sms_template_request.rb +1 -1
  149. data/lib/stack_one/models/operations/marketing_list_campaigns_request.rb +2 -2
  150. data/lib/stack_one/models/operations/marketing_list_content_blocks_request.rb +2 -2
  151. data/lib/stack_one/models/operations/marketing_list_email_templates_request.rb +2 -2
  152. data/lib/stack_one/models/operations/marketing_list_in_app_templates_request.rb +2 -2
  153. data/lib/stack_one/models/operations/marketing_list_omni_channel_templates_request.rb +2 -2
  154. data/lib/stack_one/models/operations/marketing_list_push_templates_request.rb +2 -2
  155. data/lib/stack_one/models/operations/marketing_list_sms_templates_request.rb +2 -2
  156. data/lib/stack_one/models/shared/categories.rb +2 -0
  157. data/lib/stack_one/models/shared/company.rb +5 -2
  158. data/lib/stack_one/models/shared/connectorsmeta_category.rb +2 -0
  159. data/lib/stack_one/models/shared/connectsessioncreate_categories.rb +2 -0
  160. data/lib/stack_one/models/shared/connectsessiontokenauthlink_categories.rb +2 -0
  161. data/lib/stack_one/models/shared/createemploymentapimodel.rb +4 -5
  162. data/lib/stack_one/models/shared/employee_company.rb +5 -2
  163. data/lib/stack_one/models/shared/hriscreateemployeerequestdto.rb +10 -8
  164. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_employment.rb +56 -0
  165. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_pay_frequency.rb +27 -0
  166. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_pay_period.rb +27 -0
  167. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_contract_type.rb +27 -0
  168. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_employment_contract_type_value.rb +20 -0
  169. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_employment_type_value.rb +33 -0
  170. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_pay_period_value.rb +29 -0
  171. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_type.rb +27 -0
  172. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_value.rb +31 -0
  173. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_state.rb +3 -3
  174. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto.rb +4 -5
  175. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto.rb +8 -8
  176. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_employment.rb +56 -0
  177. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_pay_frequency.rb +27 -0
  178. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_pay_period.rb +27 -0
  179. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_contract_type.rb +27 -0
  180. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_employment_contract_type_value.rb +20 -0
  181. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_employment_type_value.rb +33 -0
  182. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_pay_period_value.rb +29 -0
  183. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_type.rb +27 -0
  184. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_value.rb +31 -0
  185. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_state.rb +3 -3
  186. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_state.rb +3 -3
  187. data/lib/stack_one/models/shared/linkedaccountmeta_category.rb +2 -0
  188. data/lib/stack_one/models/shared/state.rb +3 -3
  189. data/lib/stack_one/models/shared/updateemployeeapimodel.rb +8 -8
  190. data/lib/stack_one/models/shared/updateemployeeapimodel_employment.rb +56 -0
  191. data/lib/stack_one/models/shared/updateemployeeapimodel_pay_frequency.rb +27 -0
  192. data/lib/stack_one/models/shared/updateemployeeapimodel_pay_period.rb +27 -0
  193. data/lib/stack_one/models/shared/updateemployeeapimodel_schemas_employment_contract_type.rb +27 -0
  194. data/lib/stack_one/models/shared/updateemployeeapimodel_schemas_employment_employment_contract_type_value.rb +20 -0
  195. data/lib/stack_one/models/shared/updateemployeeapimodel_schemas_employment_employment_type_value.rb +33 -0
  196. data/lib/stack_one/models/shared/updateemployeeapimodel_schemas_employment_pay_period_value.rb +29 -0
  197. data/lib/stack_one/models/shared/updateemployeeapimodel_schemas_employment_type.rb +27 -0
  198. data/lib/stack_one/models/shared/updateemployeeapimodel_schemas_employment_value.rb +31 -0
  199. data/lib/stack_one/models/shared/updateemployeeapimodel_schemas_state.rb +3 -3
  200. data/lib/stack_one/models/shared/updateemployeeapimodel_state.rb +3 -3
  201. data/lib/stack_one/models/shared/updatepackage.rb +5 -2
  202. data/lib/stack_one/models/shared.rb +27 -6
  203. data/lib/stack_one/proxy.rb +21 -3
  204. data/lib/stack_one/sdkconfiguration.rb +18 -7
  205. data/lib/stack_one/stackone.rb +8 -3
  206. data/lib/stack_one/utils/retries.rb +95 -0
  207. metadata +60 -10
  208. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_home_location_state_value.rb +0 -3840
  209. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_work_location_state_value.rb +0 -3840
  210. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_home_location_state_value.rb +0 -3840
  211. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_work_location_state_value.rb +0 -3840
  212. data/lib/stack_one/models/shared/updateemployeeapimodel_schemas_home_location_state_value.rb +0 -3840
  213. data/lib/stack_one/models/shared/updateemployeeapimodel_schemas_work_location_state_value.rb +0 -3840
@@ -5,7 +5,9 @@
5
5
 
6
6
  require 'faraday'
7
7
  require 'faraday/multipart'
8
+ require 'faraday/retry'
8
9
  require 'sorbet-runtime'
10
+ require_relative 'utils/retries'
9
11
 
10
12
  module StackOne
11
13
  extend T::Sig
@@ -19,8 +21,8 @@ module StackOne
19
21
  end
20
22
 
21
23
 
22
- sig { params(marketing_create_content_blocks_request_dto: ::StackOne::Shared::MarketingCreateContentBlocksRequestDto, x_account_id: ::String).returns(::StackOne::Operations::MarketingCreateContentBlockResponse) }
23
- def create_content_block(marketing_create_content_blocks_request_dto, x_account_id)
24
+ sig { params(marketing_create_content_blocks_request_dto: ::StackOne::Shared::MarketingCreateContentBlocksRequestDto, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingCreateContentBlockResponse) }
25
+ def create_content_block(marketing_create_content_blocks_request_dto, x_account_id, retries = nil)
24
26
  # create_content_block - Create Content Block
25
27
  request = ::StackOne::Operations::MarketingCreateContentBlockRequest.new(
26
28
 
@@ -36,8 +38,24 @@ module StackOne
36
38
  raise StandardError, 'request body is required' if data.nil? && form.nil?
37
39
  headers['Accept'] = 'application/json'
38
40
  headers['user-agent'] = @sdk_configuration.user_agent
41
+ retries ||= @sdk_configuration.retry_config
42
+ retries ||= Utils::RetryConfig.new(
43
+ backoff: Utils::BackoffStrategy.new(
44
+ exponent: 1.5,
45
+ initial_interval: 500,
46
+ max_elapsed_time: 3_600_000,
47
+ max_interval: 60_000
48
+ ),
49
+ retry_connection_errors: true,
50
+ strategy: 'backoff'
51
+ )
52
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
53
+ retry_options[:retry_statuses] = [429, 408]
54
+
55
+ connection = @sdk_configuration.client.dup
56
+ connection.request :retry, retry_options
39
57
 
40
- r = @sdk_configuration.client.post(url) do |req|
58
+ r = connection.post(url) do |req|
41
59
  req.headers = headers
42
60
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
43
61
  Utils.configure_request_security(req, security) if !security.nil?
@@ -70,8 +88,8 @@ module StackOne
70
88
  end
71
89
 
72
90
 
73
- sig { params(marketing_create_email_template_request_dto: ::StackOne::Shared::MarketingCreateEmailTemplateRequestDto, x_account_id: ::String).returns(::StackOne::Operations::MarketingCreateEmailTemplateResponse) }
74
- def create_email_template(marketing_create_email_template_request_dto, x_account_id)
91
+ sig { params(marketing_create_email_template_request_dto: ::StackOne::Shared::MarketingCreateEmailTemplateRequestDto, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingCreateEmailTemplateResponse) }
92
+ def create_email_template(marketing_create_email_template_request_dto, x_account_id, retries = nil)
75
93
  # create_email_template - Create Email Templates
76
94
  request = ::StackOne::Operations::MarketingCreateEmailTemplateRequest.new(
77
95
 
@@ -87,8 +105,24 @@ module StackOne
87
105
  raise StandardError, 'request body is required' if data.nil? && form.nil?
88
106
  headers['Accept'] = 'application/json'
89
107
  headers['user-agent'] = @sdk_configuration.user_agent
108
+ retries ||= @sdk_configuration.retry_config
109
+ retries ||= Utils::RetryConfig.new(
110
+ backoff: Utils::BackoffStrategy.new(
111
+ exponent: 1.5,
112
+ initial_interval: 500,
113
+ max_elapsed_time: 3_600_000,
114
+ max_interval: 60_000
115
+ ),
116
+ retry_connection_errors: true,
117
+ strategy: 'backoff'
118
+ )
119
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
120
+ retry_options[:retry_statuses] = [429, 408]
121
+
122
+ connection = @sdk_configuration.client.dup
123
+ connection.request :retry, retry_options
90
124
 
91
- r = @sdk_configuration.client.post(url) do |req|
125
+ r = connection.post(url) do |req|
92
126
  req.headers = headers
93
127
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
94
128
  Utils.configure_request_security(req, security) if !security.nil?
@@ -121,8 +155,8 @@ module StackOne
121
155
  end
122
156
 
123
157
 
124
- sig { params(marketing_create_in_app_template_request_dto: ::StackOne::Shared::MarketingCreateInAppTemplateRequestDto, x_account_id: ::String).returns(::StackOne::Operations::MarketingCreateInAppTemplateResponse) }
125
- def create_in_app_template(marketing_create_in_app_template_request_dto, x_account_id)
158
+ sig { params(marketing_create_in_app_template_request_dto: ::StackOne::Shared::MarketingCreateInAppTemplateRequestDto, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingCreateInAppTemplateResponse) }
159
+ def create_in_app_template(marketing_create_in_app_template_request_dto, x_account_id, retries = nil)
126
160
  # create_in_app_template - Create In-App Template
127
161
  request = ::StackOne::Operations::MarketingCreateInAppTemplateRequest.new(
128
162
 
@@ -138,8 +172,24 @@ module StackOne
138
172
  raise StandardError, 'request body is required' if data.nil? && form.nil?
139
173
  headers['Accept'] = 'application/json'
140
174
  headers['user-agent'] = @sdk_configuration.user_agent
175
+ retries ||= @sdk_configuration.retry_config
176
+ retries ||= Utils::RetryConfig.new(
177
+ backoff: Utils::BackoffStrategy.new(
178
+ exponent: 1.5,
179
+ initial_interval: 500,
180
+ max_elapsed_time: 3_600_000,
181
+ max_interval: 60_000
182
+ ),
183
+ retry_connection_errors: true,
184
+ strategy: 'backoff'
185
+ )
186
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
187
+ retry_options[:retry_statuses] = [429, 408]
188
+
189
+ connection = @sdk_configuration.client.dup
190
+ connection.request :retry, retry_options
141
191
 
142
- r = @sdk_configuration.client.post(url) do |req|
192
+ r = connection.post(url) do |req|
143
193
  req.headers = headers
144
194
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
145
195
  Utils.configure_request_security(req, security) if !security.nil?
@@ -172,8 +222,8 @@ module StackOne
172
222
  end
173
223
 
174
224
 
175
- sig { params(marketing_create_template_request_dto: ::StackOne::Shared::MarketingCreateTemplateRequestDto, x_account_id: ::String).returns(::StackOne::Operations::MarketingCreateOmniChannelTemplateResponse) }
176
- def create_omni_channel_template(marketing_create_template_request_dto, x_account_id)
225
+ sig { params(marketing_create_template_request_dto: ::StackOne::Shared::MarketingCreateTemplateRequestDto, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingCreateOmniChannelTemplateResponse) }
226
+ def create_omni_channel_template(marketing_create_template_request_dto, x_account_id, retries = nil)
177
227
  # create_omni_channel_template - Create Omni-Channel Template
178
228
  #
179
229
  # @deprecated method: This will be removed in a future release, please migrate away from it as soon as possible.
@@ -191,8 +241,24 @@ module StackOne
191
241
  raise StandardError, 'request body is required' if data.nil? && form.nil?
192
242
  headers['Accept'] = 'application/json'
193
243
  headers['user-agent'] = @sdk_configuration.user_agent
244
+ retries ||= @sdk_configuration.retry_config
245
+ retries ||= Utils::RetryConfig.new(
246
+ backoff: Utils::BackoffStrategy.new(
247
+ exponent: 1.5,
248
+ initial_interval: 500,
249
+ max_elapsed_time: 3_600_000,
250
+ max_interval: 60_000
251
+ ),
252
+ retry_connection_errors: true,
253
+ strategy: 'backoff'
254
+ )
255
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
256
+ retry_options[:retry_statuses] = [429, 408]
194
257
 
195
- r = @sdk_configuration.client.post(url) do |req|
258
+ connection = @sdk_configuration.client.dup
259
+ connection.request :retry, retry_options
260
+
261
+ r = connection.post(url) do |req|
196
262
  req.headers = headers
197
263
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
198
264
  Utils.configure_request_security(req, security) if !security.nil?
@@ -225,8 +291,8 @@ module StackOne
225
291
  end
226
292
 
227
293
 
228
- sig { params(marketing_create_push_template_request_dto: ::StackOne::Shared::MarketingCreatePushTemplateRequestDto, x_account_id: ::String).returns(::StackOne::Operations::MarketingCreatePushTemplateResponse) }
229
- def create_push_template(marketing_create_push_template_request_dto, x_account_id)
294
+ sig { params(marketing_create_push_template_request_dto: ::StackOne::Shared::MarketingCreatePushTemplateRequestDto, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingCreatePushTemplateResponse) }
295
+ def create_push_template(marketing_create_push_template_request_dto, x_account_id, retries = nil)
230
296
  # create_push_template - Create Push Template
231
297
  request = ::StackOne::Operations::MarketingCreatePushTemplateRequest.new(
232
298
 
@@ -242,8 +308,24 @@ module StackOne
242
308
  raise StandardError, 'request body is required' if data.nil? && form.nil?
243
309
  headers['Accept'] = 'application/json'
244
310
  headers['user-agent'] = @sdk_configuration.user_agent
311
+ retries ||= @sdk_configuration.retry_config
312
+ retries ||= Utils::RetryConfig.new(
313
+ backoff: Utils::BackoffStrategy.new(
314
+ exponent: 1.5,
315
+ initial_interval: 500,
316
+ max_elapsed_time: 3_600_000,
317
+ max_interval: 60_000
318
+ ),
319
+ retry_connection_errors: true,
320
+ strategy: 'backoff'
321
+ )
322
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
323
+ retry_options[:retry_statuses] = [429, 408]
324
+
325
+ connection = @sdk_configuration.client.dup
326
+ connection.request :retry, retry_options
245
327
 
246
- r = @sdk_configuration.client.post(url) do |req|
328
+ r = connection.post(url) do |req|
247
329
  req.headers = headers
248
330
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
249
331
  Utils.configure_request_security(req, security) if !security.nil?
@@ -276,8 +358,8 @@ module StackOne
276
358
  end
277
359
 
278
360
 
279
- sig { params(marketing_create_sms_template_request_dto: ::StackOne::Shared::MarketingCreateSmsTemplateRequestDto, x_account_id: ::String).returns(::StackOne::Operations::MarketingCreateSmsTemplateResponse) }
280
- def create_sms_template(marketing_create_sms_template_request_dto, x_account_id)
361
+ sig { params(marketing_create_sms_template_request_dto: ::StackOne::Shared::MarketingCreateSmsTemplateRequestDto, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingCreateSmsTemplateResponse) }
362
+ def create_sms_template(marketing_create_sms_template_request_dto, x_account_id, retries = nil)
281
363
  # create_sms_template - Create SMS Template
282
364
  request = ::StackOne::Operations::MarketingCreateSmsTemplateRequest.new(
283
365
 
@@ -293,8 +375,24 @@ module StackOne
293
375
  raise StandardError, 'request body is required' if data.nil? && form.nil?
294
376
  headers['Accept'] = 'application/json'
295
377
  headers['user-agent'] = @sdk_configuration.user_agent
378
+ retries ||= @sdk_configuration.retry_config
379
+ retries ||= Utils::RetryConfig.new(
380
+ backoff: Utils::BackoffStrategy.new(
381
+ exponent: 1.5,
382
+ initial_interval: 500,
383
+ max_elapsed_time: 3_600_000,
384
+ max_interval: 60_000
385
+ ),
386
+ retry_connection_errors: true,
387
+ strategy: 'backoff'
388
+ )
389
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
390
+ retry_options[:retry_statuses] = [429, 408]
391
+
392
+ connection = @sdk_configuration.client.dup
393
+ connection.request :retry, retry_options
296
394
 
297
- r = @sdk_configuration.client.post(url) do |req|
395
+ r = connection.post(url) do |req|
298
396
  req.headers = headers
299
397
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
300
398
  Utils.configure_request_security(req, security) if !security.nil?
@@ -327,8 +425,8 @@ module StackOne
327
425
  end
328
426
 
329
427
 
330
- sig { params(request: T.nilable(::StackOne::Operations::MarketingGetCampaignRequest)).returns(::StackOne::Operations::MarketingGetCampaignResponse) }
331
- def get_campaign(request)
428
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingGetCampaignRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingGetCampaignResponse) }
429
+ def get_campaign(request, retries = nil)
332
430
  # get_campaign - Get campaign
333
431
  url, params = @sdk_configuration.get_server_details
334
432
  base_url = Utils.template_url(url, params)
@@ -342,8 +440,24 @@ module StackOne
342
440
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingGetCampaignRequest, request)
343
441
  headers['Accept'] = 'application/json'
344
442
  headers['user-agent'] = @sdk_configuration.user_agent
443
+ retries ||= @sdk_configuration.retry_config
444
+ retries ||= Utils::RetryConfig.new(
445
+ backoff: Utils::BackoffStrategy.new(
446
+ exponent: 1.5,
447
+ initial_interval: 500,
448
+ max_elapsed_time: 3_600_000,
449
+ max_interval: 60_000
450
+ ),
451
+ retry_connection_errors: true,
452
+ strategy: 'backoff'
453
+ )
454
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
455
+ retry_options[:retry_statuses] = [429, 408]
345
456
 
346
- r = @sdk_configuration.client.get(url) do |req|
457
+ connection = @sdk_configuration.client.dup
458
+ connection.request :retry, retry_options
459
+
460
+ r = connection.get(url) do |req|
347
461
  req.headers = headers
348
462
  req.params = query_params
349
463
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -370,8 +484,8 @@ module StackOne
370
484
  end
371
485
 
372
486
 
373
- sig { params(request: T.nilable(::StackOne::Operations::MarketingGetContentBlockRequest)).returns(::StackOne::Operations::MarketingGetContentBlockResponse) }
374
- def get_content_block(request)
487
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingGetContentBlockRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingGetContentBlockResponse) }
488
+ def get_content_block(request, retries = nil)
375
489
  # get_content_block - Get Content Blocks
376
490
  url, params = @sdk_configuration.get_server_details
377
491
  base_url = Utils.template_url(url, params)
@@ -385,8 +499,24 @@ module StackOne
385
499
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingGetContentBlockRequest, request)
386
500
  headers['Accept'] = 'application/json'
387
501
  headers['user-agent'] = @sdk_configuration.user_agent
502
+ retries ||= @sdk_configuration.retry_config
503
+ retries ||= Utils::RetryConfig.new(
504
+ backoff: Utils::BackoffStrategy.new(
505
+ exponent: 1.5,
506
+ initial_interval: 500,
507
+ max_elapsed_time: 3_600_000,
508
+ max_interval: 60_000
509
+ ),
510
+ retry_connection_errors: true,
511
+ strategy: 'backoff'
512
+ )
513
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
514
+ retry_options[:retry_statuses] = [429, 408]
388
515
 
389
- r = @sdk_configuration.client.get(url) do |req|
516
+ connection = @sdk_configuration.client.dup
517
+ connection.request :retry, retry_options
518
+
519
+ r = connection.get(url) do |req|
390
520
  req.headers = headers
391
521
  req.params = query_params
392
522
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -413,8 +543,8 @@ module StackOne
413
543
  end
414
544
 
415
545
 
416
- sig { params(request: T.nilable(::StackOne::Operations::MarketingGetEmailTemplateRequest)).returns(::StackOne::Operations::MarketingGetEmailTemplateResponse) }
417
- def get_email_template(request)
546
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingGetEmailTemplateRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingGetEmailTemplateResponse) }
547
+ def get_email_template(request, retries = nil)
418
548
  # get_email_template - Get Email Templates
419
549
  url, params = @sdk_configuration.get_server_details
420
550
  base_url = Utils.template_url(url, params)
@@ -428,8 +558,24 @@ module StackOne
428
558
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingGetEmailTemplateRequest, request)
429
559
  headers['Accept'] = 'application/json'
430
560
  headers['user-agent'] = @sdk_configuration.user_agent
561
+ retries ||= @sdk_configuration.retry_config
562
+ retries ||= Utils::RetryConfig.new(
563
+ backoff: Utils::BackoffStrategy.new(
564
+ exponent: 1.5,
565
+ initial_interval: 500,
566
+ max_elapsed_time: 3_600_000,
567
+ max_interval: 60_000
568
+ ),
569
+ retry_connection_errors: true,
570
+ strategy: 'backoff'
571
+ )
572
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
573
+ retry_options[:retry_statuses] = [429, 408]
431
574
 
432
- r = @sdk_configuration.client.get(url) do |req|
575
+ connection = @sdk_configuration.client.dup
576
+ connection.request :retry, retry_options
577
+
578
+ r = connection.get(url) do |req|
433
579
  req.headers = headers
434
580
  req.params = query_params
435
581
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -456,8 +602,8 @@ module StackOne
456
602
  end
457
603
 
458
604
 
459
- sig { params(request: T.nilable(::StackOne::Operations::MarketingGetInAppTemplateRequest)).returns(::StackOne::Operations::MarketingGetInAppTemplateResponse) }
460
- def get_in_app_template(request)
605
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingGetInAppTemplateRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingGetInAppTemplateResponse) }
606
+ def get_in_app_template(request, retries = nil)
461
607
  # get_in_app_template - Get In-App Template
462
608
  url, params = @sdk_configuration.get_server_details
463
609
  base_url = Utils.template_url(url, params)
@@ -471,8 +617,24 @@ module StackOne
471
617
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingGetInAppTemplateRequest, request)
472
618
  headers['Accept'] = 'application/json'
473
619
  headers['user-agent'] = @sdk_configuration.user_agent
620
+ retries ||= @sdk_configuration.retry_config
621
+ retries ||= Utils::RetryConfig.new(
622
+ backoff: Utils::BackoffStrategy.new(
623
+ exponent: 1.5,
624
+ initial_interval: 500,
625
+ max_elapsed_time: 3_600_000,
626
+ max_interval: 60_000
627
+ ),
628
+ retry_connection_errors: true,
629
+ strategy: 'backoff'
630
+ )
631
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
632
+ retry_options[:retry_statuses] = [429, 408]
633
+
634
+ connection = @sdk_configuration.client.dup
635
+ connection.request :retry, retry_options
474
636
 
475
- r = @sdk_configuration.client.get(url) do |req|
637
+ r = connection.get(url) do |req|
476
638
  req.headers = headers
477
639
  req.params = query_params
478
640
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -499,8 +661,8 @@ module StackOne
499
661
  end
500
662
 
501
663
 
502
- sig { params(request: T.nilable(::StackOne::Operations::MarketingGetOmniChannelTemplateRequest)).returns(::StackOne::Operations::MarketingGetOmniChannelTemplateResponse) }
503
- def get_omni_channel_template(request)
664
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingGetOmniChannelTemplateRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingGetOmniChannelTemplateResponse) }
665
+ def get_omni_channel_template(request, retries = nil)
504
666
  # get_omni_channel_template - Get Omni-Channel Template
505
667
  #
506
668
  # @deprecated method: This will be removed in a future release, please migrate away from it as soon as possible.
@@ -516,8 +678,24 @@ module StackOne
516
678
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingGetOmniChannelTemplateRequest, request)
517
679
  headers['Accept'] = 'application/json'
518
680
  headers['user-agent'] = @sdk_configuration.user_agent
681
+ retries ||= @sdk_configuration.retry_config
682
+ retries ||= Utils::RetryConfig.new(
683
+ backoff: Utils::BackoffStrategy.new(
684
+ exponent: 1.5,
685
+ initial_interval: 500,
686
+ max_elapsed_time: 3_600_000,
687
+ max_interval: 60_000
688
+ ),
689
+ retry_connection_errors: true,
690
+ strategy: 'backoff'
691
+ )
692
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
693
+ retry_options[:retry_statuses] = [429, 408]
694
+
695
+ connection = @sdk_configuration.client.dup
696
+ connection.request :retry, retry_options
519
697
 
520
- r = @sdk_configuration.client.get(url) do |req|
698
+ r = connection.get(url) do |req|
521
699
  req.headers = headers
522
700
  req.params = query_params
523
701
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -544,8 +722,8 @@ module StackOne
544
722
  end
545
723
 
546
724
 
547
- sig { params(request: T.nilable(::StackOne::Operations::MarketingGetPushTemplateRequest)).returns(::StackOne::Operations::MarketingGetPushTemplateResponse) }
548
- def get_push_template(request)
725
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingGetPushTemplateRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingGetPushTemplateResponse) }
726
+ def get_push_template(request, retries = nil)
549
727
  # get_push_template - Get Push Template
550
728
  url, params = @sdk_configuration.get_server_details
551
729
  base_url = Utils.template_url(url, params)
@@ -559,8 +737,24 @@ module StackOne
559
737
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingGetPushTemplateRequest, request)
560
738
  headers['Accept'] = 'application/json'
561
739
  headers['user-agent'] = @sdk_configuration.user_agent
740
+ retries ||= @sdk_configuration.retry_config
741
+ retries ||= Utils::RetryConfig.new(
742
+ backoff: Utils::BackoffStrategy.new(
743
+ exponent: 1.5,
744
+ initial_interval: 500,
745
+ max_elapsed_time: 3_600_000,
746
+ max_interval: 60_000
747
+ ),
748
+ retry_connection_errors: true,
749
+ strategy: 'backoff'
750
+ )
751
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
752
+ retry_options[:retry_statuses] = [429, 408]
562
753
 
563
- r = @sdk_configuration.client.get(url) do |req|
754
+ connection = @sdk_configuration.client.dup
755
+ connection.request :retry, retry_options
756
+
757
+ r = connection.get(url) do |req|
564
758
  req.headers = headers
565
759
  req.params = query_params
566
760
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -587,8 +781,8 @@ module StackOne
587
781
  end
588
782
 
589
783
 
590
- sig { params(request: T.nilable(::StackOne::Operations::MarketingGetSmsTemplateRequest)).returns(::StackOne::Operations::MarketingGetSmsTemplateResponse) }
591
- def get_sms_template(request)
784
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingGetSmsTemplateRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingGetSmsTemplateResponse) }
785
+ def get_sms_template(request, retries = nil)
592
786
  # get_sms_template - Get SMS Template
593
787
  url, params = @sdk_configuration.get_server_details
594
788
  base_url = Utils.template_url(url, params)
@@ -602,8 +796,24 @@ module StackOne
602
796
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingGetSmsTemplateRequest, request)
603
797
  headers['Accept'] = 'application/json'
604
798
  headers['user-agent'] = @sdk_configuration.user_agent
799
+ retries ||= @sdk_configuration.retry_config
800
+ retries ||= Utils::RetryConfig.new(
801
+ backoff: Utils::BackoffStrategy.new(
802
+ exponent: 1.5,
803
+ initial_interval: 500,
804
+ max_elapsed_time: 3_600_000,
805
+ max_interval: 60_000
806
+ ),
807
+ retry_connection_errors: true,
808
+ strategy: 'backoff'
809
+ )
810
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
811
+ retry_options[:retry_statuses] = [429, 408]
812
+
813
+ connection = @sdk_configuration.client.dup
814
+ connection.request :retry, retry_options
605
815
 
606
- r = @sdk_configuration.client.get(url) do |req|
816
+ r = connection.get(url) do |req|
607
817
  req.headers = headers
608
818
  req.params = query_params
609
819
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -630,8 +840,8 @@ module StackOne
630
840
  end
631
841
 
632
842
 
633
- sig { params(request: T.nilable(::StackOne::Operations::MarketingListCampaignsRequest)).returns(::StackOne::Operations::MarketingListCampaignsResponse) }
634
- def list_campaigns(request)
843
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingListCampaignsRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingListCampaignsResponse) }
844
+ def list_campaigns(request, retries = nil)
635
845
  # list_campaigns - List campaigns
636
846
  url, params = @sdk_configuration.get_server_details
637
847
  base_url = Utils.template_url(url, params)
@@ -640,8 +850,24 @@ module StackOne
640
850
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingListCampaignsRequest, request)
641
851
  headers['Accept'] = 'application/json'
642
852
  headers['user-agent'] = @sdk_configuration.user_agent
853
+ retries ||= @sdk_configuration.retry_config
854
+ retries ||= Utils::RetryConfig.new(
855
+ backoff: Utils::BackoffStrategy.new(
856
+ exponent: 1.5,
857
+ initial_interval: 500,
858
+ max_elapsed_time: 3_600_000,
859
+ max_interval: 60_000
860
+ ),
861
+ retry_connection_errors: true,
862
+ strategy: 'backoff'
863
+ )
864
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
865
+ retry_options[:retry_statuses] = [429, 408]
866
+
867
+ connection = @sdk_configuration.client.dup
868
+ connection.request :retry, retry_options
643
869
 
644
- r = @sdk_configuration.client.get(url) do |req|
870
+ r = connection.get(url) do |req|
645
871
  req.headers = headers
646
872
  req.params = query_params
647
873
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -668,8 +894,8 @@ module StackOne
668
894
  end
669
895
 
670
896
 
671
- sig { params(request: T.nilable(::StackOne::Operations::MarketingListContentBlocksRequest)).returns(::StackOne::Operations::MarketingListContentBlocksResponse) }
672
- def list_content_blocks(request)
897
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingListContentBlocksRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingListContentBlocksResponse) }
898
+ def list_content_blocks(request, retries = nil)
673
899
  # list_content_blocks - List Content Blocks
674
900
  url, params = @sdk_configuration.get_server_details
675
901
  base_url = Utils.template_url(url, params)
@@ -678,8 +904,24 @@ module StackOne
678
904
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingListContentBlocksRequest, request)
679
905
  headers['Accept'] = 'application/json'
680
906
  headers['user-agent'] = @sdk_configuration.user_agent
907
+ retries ||= @sdk_configuration.retry_config
908
+ retries ||= Utils::RetryConfig.new(
909
+ backoff: Utils::BackoffStrategy.new(
910
+ exponent: 1.5,
911
+ initial_interval: 500,
912
+ max_elapsed_time: 3_600_000,
913
+ max_interval: 60_000
914
+ ),
915
+ retry_connection_errors: true,
916
+ strategy: 'backoff'
917
+ )
918
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
919
+ retry_options[:retry_statuses] = [429, 408]
920
+
921
+ connection = @sdk_configuration.client.dup
922
+ connection.request :retry, retry_options
681
923
 
682
- r = @sdk_configuration.client.get(url) do |req|
924
+ r = connection.get(url) do |req|
683
925
  req.headers = headers
684
926
  req.params = query_params
685
927
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -706,8 +948,8 @@ module StackOne
706
948
  end
707
949
 
708
950
 
709
- sig { params(request: T.nilable(::StackOne::Operations::MarketingListEmailTemplatesRequest)).returns(::StackOne::Operations::MarketingListEmailTemplatesResponse) }
710
- def list_email_templates(request)
951
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingListEmailTemplatesRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingListEmailTemplatesResponse) }
952
+ def list_email_templates(request, retries = nil)
711
953
  # list_email_templates - List Email Templates
712
954
  url, params = @sdk_configuration.get_server_details
713
955
  base_url = Utils.template_url(url, params)
@@ -716,8 +958,24 @@ module StackOne
716
958
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingListEmailTemplatesRequest, request)
717
959
  headers['Accept'] = 'application/json'
718
960
  headers['user-agent'] = @sdk_configuration.user_agent
961
+ retries ||= @sdk_configuration.retry_config
962
+ retries ||= Utils::RetryConfig.new(
963
+ backoff: Utils::BackoffStrategy.new(
964
+ exponent: 1.5,
965
+ initial_interval: 500,
966
+ max_elapsed_time: 3_600_000,
967
+ max_interval: 60_000
968
+ ),
969
+ retry_connection_errors: true,
970
+ strategy: 'backoff'
971
+ )
972
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
973
+ retry_options[:retry_statuses] = [429, 408]
974
+
975
+ connection = @sdk_configuration.client.dup
976
+ connection.request :retry, retry_options
719
977
 
720
- r = @sdk_configuration.client.get(url) do |req|
978
+ r = connection.get(url) do |req|
721
979
  req.headers = headers
722
980
  req.params = query_params
723
981
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -744,8 +1002,8 @@ module StackOne
744
1002
  end
745
1003
 
746
1004
 
747
- sig { params(request: T.nilable(::StackOne::Operations::MarketingListInAppTemplatesRequest)).returns(::StackOne::Operations::MarketingListInAppTemplatesResponse) }
748
- def list_in_app_templates(request)
1005
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingListInAppTemplatesRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingListInAppTemplatesResponse) }
1006
+ def list_in_app_templates(request, retries = nil)
749
1007
  # list_in_app_templates - List In-App Templates
750
1008
  url, params = @sdk_configuration.get_server_details
751
1009
  base_url = Utils.template_url(url, params)
@@ -754,8 +1012,24 @@ module StackOne
754
1012
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingListInAppTemplatesRequest, request)
755
1013
  headers['Accept'] = 'application/json'
756
1014
  headers['user-agent'] = @sdk_configuration.user_agent
1015
+ retries ||= @sdk_configuration.retry_config
1016
+ retries ||= Utils::RetryConfig.new(
1017
+ backoff: Utils::BackoffStrategy.new(
1018
+ exponent: 1.5,
1019
+ initial_interval: 500,
1020
+ max_elapsed_time: 3_600_000,
1021
+ max_interval: 60_000
1022
+ ),
1023
+ retry_connection_errors: true,
1024
+ strategy: 'backoff'
1025
+ )
1026
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1027
+ retry_options[:retry_statuses] = [429, 408]
757
1028
 
758
- r = @sdk_configuration.client.get(url) do |req|
1029
+ connection = @sdk_configuration.client.dup
1030
+ connection.request :retry, retry_options
1031
+
1032
+ r = connection.get(url) do |req|
759
1033
  req.headers = headers
760
1034
  req.params = query_params
761
1035
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -782,8 +1056,8 @@ module StackOne
782
1056
  end
783
1057
 
784
1058
 
785
- sig { params(request: T.nilable(::StackOne::Operations::MarketingListOmniChannelTemplatesRequest)).returns(::StackOne::Operations::MarketingListOmniChannelTemplatesResponse) }
786
- def list_omni_channel_templates(request)
1059
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingListOmniChannelTemplatesRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingListOmniChannelTemplatesResponse) }
1060
+ def list_omni_channel_templates(request, retries = nil)
787
1061
  # list_omni_channel_templates - List Omni-Channel Templates
788
1062
  #
789
1063
  # @deprecated method: This will be removed in a future release, please migrate away from it as soon as possible.
@@ -794,8 +1068,24 @@ module StackOne
794
1068
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingListOmniChannelTemplatesRequest, request)
795
1069
  headers['Accept'] = 'application/json'
796
1070
  headers['user-agent'] = @sdk_configuration.user_agent
1071
+ retries ||= @sdk_configuration.retry_config
1072
+ retries ||= Utils::RetryConfig.new(
1073
+ backoff: Utils::BackoffStrategy.new(
1074
+ exponent: 1.5,
1075
+ initial_interval: 500,
1076
+ max_elapsed_time: 3_600_000,
1077
+ max_interval: 60_000
1078
+ ),
1079
+ retry_connection_errors: true,
1080
+ strategy: 'backoff'
1081
+ )
1082
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1083
+ retry_options[:retry_statuses] = [429, 408]
1084
+
1085
+ connection = @sdk_configuration.client.dup
1086
+ connection.request :retry, retry_options
797
1087
 
798
- r = @sdk_configuration.client.get(url) do |req|
1088
+ r = connection.get(url) do |req|
799
1089
  req.headers = headers
800
1090
  req.params = query_params
801
1091
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -822,8 +1112,8 @@ module StackOne
822
1112
  end
823
1113
 
824
1114
 
825
- sig { params(request: T.nilable(::StackOne::Operations::MarketingListPushTemplatesRequest)).returns(::StackOne::Operations::MarketingListPushTemplatesResponse) }
826
- def list_push_templates(request)
1115
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingListPushTemplatesRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingListPushTemplatesResponse) }
1116
+ def list_push_templates(request, retries = nil)
827
1117
  # list_push_templates - List Push Templates
828
1118
  url, params = @sdk_configuration.get_server_details
829
1119
  base_url = Utils.template_url(url, params)
@@ -832,8 +1122,24 @@ module StackOne
832
1122
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingListPushTemplatesRequest, request)
833
1123
  headers['Accept'] = 'application/json'
834
1124
  headers['user-agent'] = @sdk_configuration.user_agent
1125
+ retries ||= @sdk_configuration.retry_config
1126
+ retries ||= Utils::RetryConfig.new(
1127
+ backoff: Utils::BackoffStrategy.new(
1128
+ exponent: 1.5,
1129
+ initial_interval: 500,
1130
+ max_elapsed_time: 3_600_000,
1131
+ max_interval: 60_000
1132
+ ),
1133
+ retry_connection_errors: true,
1134
+ strategy: 'backoff'
1135
+ )
1136
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1137
+ retry_options[:retry_statuses] = [429, 408]
1138
+
1139
+ connection = @sdk_configuration.client.dup
1140
+ connection.request :retry, retry_options
835
1141
 
836
- r = @sdk_configuration.client.get(url) do |req|
1142
+ r = connection.get(url) do |req|
837
1143
  req.headers = headers
838
1144
  req.params = query_params
839
1145
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -860,8 +1166,8 @@ module StackOne
860
1166
  end
861
1167
 
862
1168
 
863
- sig { params(request: T.nilable(::StackOne::Operations::MarketingListSmsTemplatesRequest)).returns(::StackOne::Operations::MarketingListSmsTemplatesResponse) }
864
- def list_sms_templates(request)
1169
+ sig { params(request: T.nilable(::StackOne::Operations::MarketingListSmsTemplatesRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingListSmsTemplatesResponse) }
1170
+ def list_sms_templates(request, retries = nil)
865
1171
  # list_sms_templates - List SMS Templates
866
1172
  url, params = @sdk_configuration.get_server_details
867
1173
  base_url = Utils.template_url(url, params)
@@ -870,8 +1176,24 @@ module StackOne
870
1176
  query_params = Utils.get_query_params(::StackOne::Operations::MarketingListSmsTemplatesRequest, request)
871
1177
  headers['Accept'] = 'application/json'
872
1178
  headers['user-agent'] = @sdk_configuration.user_agent
1179
+ retries ||= @sdk_configuration.retry_config
1180
+ retries ||= Utils::RetryConfig.new(
1181
+ backoff: Utils::BackoffStrategy.new(
1182
+ exponent: 1.5,
1183
+ initial_interval: 500,
1184
+ max_elapsed_time: 3_600_000,
1185
+ max_interval: 60_000
1186
+ ),
1187
+ retry_connection_errors: true,
1188
+ strategy: 'backoff'
1189
+ )
1190
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1191
+ retry_options[:retry_statuses] = [429, 408]
873
1192
 
874
- r = @sdk_configuration.client.get(url) do |req|
1193
+ connection = @sdk_configuration.client.dup
1194
+ connection.request :retry, retry_options
1195
+
1196
+ r = connection.get(url) do |req|
875
1197
  req.headers = headers
876
1198
  req.params = query_params
877
1199
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -898,8 +1220,8 @@ module StackOne
898
1220
  end
899
1221
 
900
1222
 
901
- sig { params(marketing_create_content_blocks_request_dto: ::StackOne::Shared::MarketingCreateContentBlocksRequestDto, id: ::String, x_account_id: ::String).returns(::StackOne::Operations::MarketingUpdateContentBlockResponse) }
902
- def update_content_block(marketing_create_content_blocks_request_dto, id, x_account_id)
1223
+ sig { params(marketing_create_content_blocks_request_dto: ::StackOne::Shared::MarketingCreateContentBlocksRequestDto, id: ::String, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingUpdateContentBlockResponse) }
1224
+ def update_content_block(marketing_create_content_blocks_request_dto, id, x_account_id, retries = nil)
903
1225
  # update_content_block - Update Content Block
904
1226
  request = ::StackOne::Operations::MarketingUpdateContentBlockRequest.new(
905
1227
 
@@ -921,8 +1243,24 @@ module StackOne
921
1243
  raise StandardError, 'request body is required' if data.nil? && form.nil?
922
1244
  headers['Accept'] = 'application/json'
923
1245
  headers['user-agent'] = @sdk_configuration.user_agent
1246
+ retries ||= @sdk_configuration.retry_config
1247
+ retries ||= Utils::RetryConfig.new(
1248
+ backoff: Utils::BackoffStrategy.new(
1249
+ exponent: 1.5,
1250
+ initial_interval: 500,
1251
+ max_elapsed_time: 3_600_000,
1252
+ max_interval: 60_000
1253
+ ),
1254
+ retry_connection_errors: true,
1255
+ strategy: 'backoff'
1256
+ )
1257
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1258
+ retry_options[:retry_statuses] = [429, 408]
924
1259
 
925
- r = @sdk_configuration.client.patch(url) do |req|
1260
+ connection = @sdk_configuration.client.dup
1261
+ connection.request :retry, retry_options
1262
+
1263
+ r = connection.patch(url) do |req|
926
1264
  req.headers = headers
927
1265
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
928
1266
  Utils.configure_request_security(req, security) if !security.nil?
@@ -955,8 +1293,8 @@ module StackOne
955
1293
  end
956
1294
 
957
1295
 
958
- sig { params(marketing_create_email_template_request_dto: ::StackOne::Shared::MarketingCreateEmailTemplateRequestDto, id: ::String, x_account_id: ::String).returns(::StackOne::Operations::MarketingUpdateEmailTemplateResponse) }
959
- def update_email_template(marketing_create_email_template_request_dto, id, x_account_id)
1296
+ sig { params(marketing_create_email_template_request_dto: ::StackOne::Shared::MarketingCreateEmailTemplateRequestDto, id: ::String, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingUpdateEmailTemplateResponse) }
1297
+ def update_email_template(marketing_create_email_template_request_dto, id, x_account_id, retries = nil)
960
1298
  # update_email_template - Update Email Templates
961
1299
  request = ::StackOne::Operations::MarketingUpdateEmailTemplateRequest.new(
962
1300
 
@@ -978,8 +1316,24 @@ module StackOne
978
1316
  raise StandardError, 'request body is required' if data.nil? && form.nil?
979
1317
  headers['Accept'] = 'application/json'
980
1318
  headers['user-agent'] = @sdk_configuration.user_agent
1319
+ retries ||= @sdk_configuration.retry_config
1320
+ retries ||= Utils::RetryConfig.new(
1321
+ backoff: Utils::BackoffStrategy.new(
1322
+ exponent: 1.5,
1323
+ initial_interval: 500,
1324
+ max_elapsed_time: 3_600_000,
1325
+ max_interval: 60_000
1326
+ ),
1327
+ retry_connection_errors: true,
1328
+ strategy: 'backoff'
1329
+ )
1330
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1331
+ retry_options[:retry_statuses] = [429, 408]
981
1332
 
982
- r = @sdk_configuration.client.patch(url) do |req|
1333
+ connection = @sdk_configuration.client.dup
1334
+ connection.request :retry, retry_options
1335
+
1336
+ r = connection.patch(url) do |req|
983
1337
  req.headers = headers
984
1338
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
985
1339
  Utils.configure_request_security(req, security) if !security.nil?
@@ -1012,8 +1366,8 @@ module StackOne
1012
1366
  end
1013
1367
 
1014
1368
 
1015
- sig { params(marketing_create_in_app_template_request_dto: ::StackOne::Shared::MarketingCreateInAppTemplateRequestDto, id: ::String, x_account_id: ::String).returns(::StackOne::Operations::MarketingUpdateInAppTemplateResponse) }
1016
- def update_in_app_template(marketing_create_in_app_template_request_dto, id, x_account_id)
1369
+ sig { params(marketing_create_in_app_template_request_dto: ::StackOne::Shared::MarketingCreateInAppTemplateRequestDto, id: ::String, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingUpdateInAppTemplateResponse) }
1370
+ def update_in_app_template(marketing_create_in_app_template_request_dto, id, x_account_id, retries = nil)
1017
1371
  # update_in_app_template - Update In-App Template
1018
1372
  request = ::StackOne::Operations::MarketingUpdateInAppTemplateRequest.new(
1019
1373
 
@@ -1035,8 +1389,24 @@ module StackOne
1035
1389
  raise StandardError, 'request body is required' if data.nil? && form.nil?
1036
1390
  headers['Accept'] = 'application/json'
1037
1391
  headers['user-agent'] = @sdk_configuration.user_agent
1392
+ retries ||= @sdk_configuration.retry_config
1393
+ retries ||= Utils::RetryConfig.new(
1394
+ backoff: Utils::BackoffStrategy.new(
1395
+ exponent: 1.5,
1396
+ initial_interval: 500,
1397
+ max_elapsed_time: 3_600_000,
1398
+ max_interval: 60_000
1399
+ ),
1400
+ retry_connection_errors: true,
1401
+ strategy: 'backoff'
1402
+ )
1403
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1404
+ retry_options[:retry_statuses] = [429, 408]
1405
+
1406
+ connection = @sdk_configuration.client.dup
1407
+ connection.request :retry, retry_options
1038
1408
 
1039
- r = @sdk_configuration.client.patch(url) do |req|
1409
+ r = connection.patch(url) do |req|
1040
1410
  req.headers = headers
1041
1411
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
1042
1412
  Utils.configure_request_security(req, security) if !security.nil?
@@ -1069,8 +1439,8 @@ module StackOne
1069
1439
  end
1070
1440
 
1071
1441
 
1072
- sig { params(marketing_create_template_request_dto: ::StackOne::Shared::MarketingCreateTemplateRequestDto, id: ::String, x_account_id: ::String).returns(::StackOne::Operations::MarketingUpdateOmniChannelTemplateResponse) }
1073
- def update_omni_channel_template(marketing_create_template_request_dto, id, x_account_id)
1442
+ sig { params(marketing_create_template_request_dto: ::StackOne::Shared::MarketingCreateTemplateRequestDto, id: ::String, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingUpdateOmniChannelTemplateResponse) }
1443
+ def update_omni_channel_template(marketing_create_template_request_dto, id, x_account_id, retries = nil)
1074
1444
  # update_omni_channel_template - Update Omni-Channel Template
1075
1445
  #
1076
1446
  # @deprecated method: This will be removed in a future release, please migrate away from it as soon as possible.
@@ -1094,8 +1464,24 @@ module StackOne
1094
1464
  raise StandardError, 'request body is required' if data.nil? && form.nil?
1095
1465
  headers['Accept'] = 'application/json'
1096
1466
  headers['user-agent'] = @sdk_configuration.user_agent
1467
+ retries ||= @sdk_configuration.retry_config
1468
+ retries ||= Utils::RetryConfig.new(
1469
+ backoff: Utils::BackoffStrategy.new(
1470
+ exponent: 1.5,
1471
+ initial_interval: 500,
1472
+ max_elapsed_time: 3_600_000,
1473
+ max_interval: 60_000
1474
+ ),
1475
+ retry_connection_errors: true,
1476
+ strategy: 'backoff'
1477
+ )
1478
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1479
+ retry_options[:retry_statuses] = [429, 408]
1480
+
1481
+ connection = @sdk_configuration.client.dup
1482
+ connection.request :retry, retry_options
1097
1483
 
1098
- r = @sdk_configuration.client.patch(url) do |req|
1484
+ r = connection.patch(url) do |req|
1099
1485
  req.headers = headers
1100
1486
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
1101
1487
  Utils.configure_request_security(req, security) if !security.nil?
@@ -1128,8 +1514,8 @@ module StackOne
1128
1514
  end
1129
1515
 
1130
1516
 
1131
- sig { params(marketing_create_push_template_request_dto: ::StackOne::Shared::MarketingCreatePushTemplateRequestDto, id: ::String, x_account_id: ::String).returns(::StackOne::Operations::MarketingUpdatePushTemplateResponse) }
1132
- def update_push_template(marketing_create_push_template_request_dto, id, x_account_id)
1517
+ sig { params(marketing_create_push_template_request_dto: ::StackOne::Shared::MarketingCreatePushTemplateRequestDto, id: ::String, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingUpdatePushTemplateResponse) }
1518
+ def update_push_template(marketing_create_push_template_request_dto, id, x_account_id, retries = nil)
1133
1519
  # update_push_template - Update Push Template
1134
1520
  request = ::StackOne::Operations::MarketingUpdatePushTemplateRequest.new(
1135
1521
 
@@ -1151,8 +1537,24 @@ module StackOne
1151
1537
  raise StandardError, 'request body is required' if data.nil? && form.nil?
1152
1538
  headers['Accept'] = 'application/json'
1153
1539
  headers['user-agent'] = @sdk_configuration.user_agent
1540
+ retries ||= @sdk_configuration.retry_config
1541
+ retries ||= Utils::RetryConfig.new(
1542
+ backoff: Utils::BackoffStrategy.new(
1543
+ exponent: 1.5,
1544
+ initial_interval: 500,
1545
+ max_elapsed_time: 3_600_000,
1546
+ max_interval: 60_000
1547
+ ),
1548
+ retry_connection_errors: true,
1549
+ strategy: 'backoff'
1550
+ )
1551
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1552
+ retry_options[:retry_statuses] = [429, 408]
1154
1553
 
1155
- r = @sdk_configuration.client.patch(url) do |req|
1554
+ connection = @sdk_configuration.client.dup
1555
+ connection.request :retry, retry_options
1556
+
1557
+ r = connection.patch(url) do |req|
1156
1558
  req.headers = headers
1157
1559
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
1158
1560
  Utils.configure_request_security(req, security) if !security.nil?
@@ -1185,8 +1587,8 @@ module StackOne
1185
1587
  end
1186
1588
 
1187
1589
 
1188
- sig { params(marketing_create_sms_template_request_dto: ::StackOne::Shared::MarketingCreateSmsTemplateRequestDto, id: ::String, x_account_id: ::String).returns(::StackOne::Operations::MarketingUpdateSmsTemplateResponse) }
1189
- def update_sms_template(marketing_create_sms_template_request_dto, id, x_account_id)
1590
+ sig { params(marketing_create_sms_template_request_dto: ::StackOne::Shared::MarketingCreateSmsTemplateRequestDto, id: ::String, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::MarketingUpdateSmsTemplateResponse) }
1591
+ def update_sms_template(marketing_create_sms_template_request_dto, id, x_account_id, retries = nil)
1190
1592
  # update_sms_template - Update SMS Template
1191
1593
  request = ::StackOne::Operations::MarketingUpdateSmsTemplateRequest.new(
1192
1594
 
@@ -1208,8 +1610,24 @@ module StackOne
1208
1610
  raise StandardError, 'request body is required' if data.nil? && form.nil?
1209
1611
  headers['Accept'] = 'application/json'
1210
1612
  headers['user-agent'] = @sdk_configuration.user_agent
1613
+ retries ||= @sdk_configuration.retry_config
1614
+ retries ||= Utils::RetryConfig.new(
1615
+ backoff: Utils::BackoffStrategy.new(
1616
+ exponent: 1.5,
1617
+ initial_interval: 500,
1618
+ max_elapsed_time: 3_600_000,
1619
+ max_interval: 60_000
1620
+ ),
1621
+ retry_connection_errors: true,
1622
+ strategy: 'backoff'
1623
+ )
1624
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1625
+ retry_options[:retry_statuses] = [429, 408]
1626
+
1627
+ connection = @sdk_configuration.client.dup
1628
+ connection.request :retry, retry_options
1211
1629
 
1212
- r = @sdk_configuration.client.patch(url) do |req|
1630
+ r = connection.patch(url) do |req|
1213
1631
  req.headers = headers
1214
1632
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
1215
1633
  Utils.configure_request_security(req, security) if !security.nil?