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
data/lib/stack_one/lms.rb CHANGED
@@ -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(lms_batch_upsert_content_request_dto: ::StackOne::Shared::LmsBatchUpsertContentRequestDto, x_account_id: ::String).returns(::StackOne::Operations::LmsBatchUpsertContentResponse) }
23
- def batch_upsert_content(lms_batch_upsert_content_request_dto, x_account_id)
24
+ sig { params(lms_batch_upsert_content_request_dto: ::StackOne::Shared::LmsBatchUpsertContentRequestDto, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsBatchUpsertContentResponse) }
25
+ def batch_upsert_content(lms_batch_upsert_content_request_dto, x_account_id, retries = nil)
24
26
  # batch_upsert_content - Batch Upsert Content
25
27
  request = ::StackOne::Operations::LmsBatchUpsertContentRequest.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(lms_batch_upsert_course_request_dto: ::StackOne::Shared::LmsBatchUpsertCourseRequestDto, x_account_id: ::String).returns(::StackOne::Operations::LmsBatchUpsertCourseResponse) }
74
- def batch_upsert_course(lms_batch_upsert_course_request_dto, x_account_id)
91
+ sig { params(lms_batch_upsert_course_request_dto: ::StackOne::Shared::LmsBatchUpsertCourseRequestDto, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsBatchUpsertCourseResponse) }
92
+ def batch_upsert_course(lms_batch_upsert_course_request_dto, x_account_id, retries = nil)
75
93
  # batch_upsert_course - Batch Upsert Course
76
94
  request = ::StackOne::Operations::LmsBatchUpsertCourseRequest.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(lms_create_collection_request_dto: ::StackOne::Shared::LmsCreateCollectionRequestDto, x_account_id: ::String).returns(::StackOne::Operations::LmsCreateCollectionResponse) }
125
- def create_collection(lms_create_collection_request_dto, x_account_id)
158
+ sig { params(lms_create_collection_request_dto: ::StackOne::Shared::LmsCreateCollectionRequestDto, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsCreateCollectionResponse) }
159
+ def create_collection(lms_create_collection_request_dto, x_account_id, retries = nil)
126
160
  # create_collection - Create Collection
127
161
  request = ::StackOne::Operations::LmsCreateCollectionRequest.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(lms_create_assignment_request_dto: ::StackOne::Shared::LmsCreateAssignmentRequestDto, id: ::String, x_account_id: ::String).returns(::StackOne::Operations::LmsCreateUserAssignmentResponse) }
176
- def create_user_assignment(lms_create_assignment_request_dto, id, x_account_id)
225
+ sig { params(lms_create_assignment_request_dto: ::StackOne::Shared::LmsCreateAssignmentRequestDto, id: ::String, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsCreateUserAssignmentResponse) }
226
+ def create_user_assignment(lms_create_assignment_request_dto, id, x_account_id, retries = nil)
177
227
  # create_user_assignment - Create User Assignment
178
228
  request = ::StackOne::Operations::LmsCreateUserAssignmentRequest.new(
179
229
 
@@ -195,8 +245,24 @@ module StackOne
195
245
  raise StandardError, 'request body is required' if data.nil? && form.nil?
196
246
  headers['Accept'] = 'application/json'
197
247
  headers['user-agent'] = @sdk_configuration.user_agent
248
+ retries ||= @sdk_configuration.retry_config
249
+ retries ||= Utils::RetryConfig.new(
250
+ backoff: Utils::BackoffStrategy.new(
251
+ exponent: 1.5,
252
+ initial_interval: 500,
253
+ max_elapsed_time: 3_600_000,
254
+ max_interval: 60_000
255
+ ),
256
+ retry_connection_errors: true,
257
+ strategy: 'backoff'
258
+ )
259
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
260
+ retry_options[:retry_statuses] = [429, 408]
198
261
 
199
- r = @sdk_configuration.client.post(url) do |req|
262
+ connection = @sdk_configuration.client.dup
263
+ connection.request :retry, retry_options
264
+
265
+ r = connection.post(url) do |req|
200
266
  req.headers = headers
201
267
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
202
268
  Utils.configure_request_security(req, security) if !security.nil?
@@ -229,8 +295,8 @@ module StackOne
229
295
  end
230
296
 
231
297
 
232
- sig { params(lms_create_completion_request_dto: ::StackOne::Shared::LmsCreateCompletionRequestDto, id: ::String, x_account_id: ::String).returns(::StackOne::Operations::LmsCreateUserCompletionResponse) }
233
- def create_user_completion(lms_create_completion_request_dto, id, x_account_id)
298
+ sig { params(lms_create_completion_request_dto: ::StackOne::Shared::LmsCreateCompletionRequestDto, id: ::String, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsCreateUserCompletionResponse) }
299
+ def create_user_completion(lms_create_completion_request_dto, id, x_account_id, retries = nil)
234
300
  # create_user_completion - Create User Completion
235
301
  request = ::StackOne::Operations::LmsCreateUserCompletionRequest.new(
236
302
 
@@ -252,8 +318,24 @@ module StackOne
252
318
  raise StandardError, 'request body is required' if data.nil? && form.nil?
253
319
  headers['Accept'] = 'application/json'
254
320
  headers['user-agent'] = @sdk_configuration.user_agent
321
+ retries ||= @sdk_configuration.retry_config
322
+ retries ||= Utils::RetryConfig.new(
323
+ backoff: Utils::BackoffStrategy.new(
324
+ exponent: 1.5,
325
+ initial_interval: 500,
326
+ max_elapsed_time: 3_600_000,
327
+ max_interval: 60_000
328
+ ),
329
+ retry_connection_errors: true,
330
+ strategy: 'backoff'
331
+ )
332
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
333
+ retry_options[:retry_statuses] = [429, 408]
255
334
 
256
- r = @sdk_configuration.client.post(url) do |req|
335
+ connection = @sdk_configuration.client.dup
336
+ connection.request :retry, retry_options
337
+
338
+ r = connection.post(url) do |req|
257
339
  req.headers = headers
258
340
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
259
341
  Utils.configure_request_security(req, security) if !security.nil?
@@ -286,8 +368,8 @@ module StackOne
286
368
  end
287
369
 
288
370
 
289
- sig { params(id: ::String, sub_resource_id: ::String, x_account_id: ::String).returns(::StackOne::Operations::LmsDeleteUserCompletionResponse) }
290
- def delete_user_completion(id, sub_resource_id, x_account_id)
371
+ sig { params(id: ::String, sub_resource_id: ::String, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsDeleteUserCompletionResponse) }
372
+ def delete_user_completion(id, sub_resource_id, x_account_id, retries = nil)
291
373
  # delete_user_completion - Delete User Completion
292
374
  request = ::StackOne::Operations::LmsDeleteUserCompletionRequest.new(
293
375
 
@@ -306,8 +388,24 @@ module StackOne
306
388
  headers = Utils.get_headers(request)
307
389
  headers['Accept'] = 'application/json'
308
390
  headers['user-agent'] = @sdk_configuration.user_agent
391
+ retries ||= @sdk_configuration.retry_config
392
+ retries ||= Utils::RetryConfig.new(
393
+ backoff: Utils::BackoffStrategy.new(
394
+ exponent: 1.5,
395
+ initial_interval: 500,
396
+ max_elapsed_time: 3_600_000,
397
+ max_interval: 60_000
398
+ ),
399
+ retry_connection_errors: true,
400
+ strategy: 'backoff'
401
+ )
402
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
403
+ retry_options[:retry_statuses] = [429, 408]
309
404
 
310
- r = @sdk_configuration.client.delete(url) do |req|
405
+ connection = @sdk_configuration.client.dup
406
+ connection.request :retry, retry_options
407
+
408
+ r = connection.delete(url) do |req|
311
409
  req.headers = headers
312
410
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
313
411
  Utils.configure_request_security(req, security) if !security.nil?
@@ -334,8 +432,8 @@ module StackOne
334
432
  end
335
433
 
336
434
 
337
- sig { params(request: T.nilable(::StackOne::Operations::LmsGetAssignmentRequest)).returns(::StackOne::Operations::LmsGetAssignmentResponse) }
338
- def get_assignment(request)
435
+ sig { params(request: T.nilable(::StackOne::Operations::LmsGetAssignmentRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsGetAssignmentResponse) }
436
+ def get_assignment(request, retries = nil)
339
437
  # get_assignment - Get Assignment
340
438
  url, params = @sdk_configuration.get_server_details
341
439
  base_url = Utils.template_url(url, params)
@@ -349,8 +447,24 @@ module StackOne
349
447
  query_params = Utils.get_query_params(::StackOne::Operations::LmsGetAssignmentRequest, request)
350
448
  headers['Accept'] = 'application/json'
351
449
  headers['user-agent'] = @sdk_configuration.user_agent
450
+ retries ||= @sdk_configuration.retry_config
451
+ retries ||= Utils::RetryConfig.new(
452
+ backoff: Utils::BackoffStrategy.new(
453
+ exponent: 1.5,
454
+ initial_interval: 500,
455
+ max_elapsed_time: 3_600_000,
456
+ max_interval: 60_000
457
+ ),
458
+ retry_connection_errors: true,
459
+ strategy: 'backoff'
460
+ )
461
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
462
+ retry_options[:retry_statuses] = [429, 408]
463
+
464
+ connection = @sdk_configuration.client.dup
465
+ connection.request :retry, retry_options
352
466
 
353
- r = @sdk_configuration.client.get(url) do |req|
467
+ r = connection.get(url) do |req|
354
468
  req.headers = headers
355
469
  req.params = query_params
356
470
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -377,8 +491,8 @@ module StackOne
377
491
  end
378
492
 
379
493
 
380
- sig { params(request: T.nilable(::StackOne::Operations::LmsGetCategoryRequest)).returns(::StackOne::Operations::LmsGetCategoryResponse) }
381
- def get_category(request)
494
+ sig { params(request: T.nilable(::StackOne::Operations::LmsGetCategoryRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsGetCategoryResponse) }
495
+ def get_category(request, retries = nil)
382
496
  # get_category - Get Category
383
497
  url, params = @sdk_configuration.get_server_details
384
498
  base_url = Utils.template_url(url, params)
@@ -392,8 +506,24 @@ module StackOne
392
506
  query_params = Utils.get_query_params(::StackOne::Operations::LmsGetCategoryRequest, request)
393
507
  headers['Accept'] = 'application/json'
394
508
  headers['user-agent'] = @sdk_configuration.user_agent
509
+ retries ||= @sdk_configuration.retry_config
510
+ retries ||= Utils::RetryConfig.new(
511
+ backoff: Utils::BackoffStrategy.new(
512
+ exponent: 1.5,
513
+ initial_interval: 500,
514
+ max_elapsed_time: 3_600_000,
515
+ max_interval: 60_000
516
+ ),
517
+ retry_connection_errors: true,
518
+ strategy: 'backoff'
519
+ )
520
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
521
+ retry_options[:retry_statuses] = [429, 408]
522
+
523
+ connection = @sdk_configuration.client.dup
524
+ connection.request :retry, retry_options
395
525
 
396
- r = @sdk_configuration.client.get(url) do |req|
526
+ r = connection.get(url) do |req|
397
527
  req.headers = headers
398
528
  req.params = query_params
399
529
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -420,8 +550,8 @@ module StackOne
420
550
  end
421
551
 
422
552
 
423
- sig { params(request: T.nilable(::StackOne::Operations::LmsGetCompletionRequest)).returns(::StackOne::Operations::LmsGetCompletionResponse) }
424
- def get_completion(request)
553
+ sig { params(request: T.nilable(::StackOne::Operations::LmsGetCompletionRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsGetCompletionResponse) }
554
+ def get_completion(request, retries = nil)
425
555
  # get_completion - Get Completion
426
556
  url, params = @sdk_configuration.get_server_details
427
557
  base_url = Utils.template_url(url, params)
@@ -435,8 +565,24 @@ module StackOne
435
565
  query_params = Utils.get_query_params(::StackOne::Operations::LmsGetCompletionRequest, request)
436
566
  headers['Accept'] = 'application/json'
437
567
  headers['user-agent'] = @sdk_configuration.user_agent
568
+ retries ||= @sdk_configuration.retry_config
569
+ retries ||= Utils::RetryConfig.new(
570
+ backoff: Utils::BackoffStrategy.new(
571
+ exponent: 1.5,
572
+ initial_interval: 500,
573
+ max_elapsed_time: 3_600_000,
574
+ max_interval: 60_000
575
+ ),
576
+ retry_connection_errors: true,
577
+ strategy: 'backoff'
578
+ )
579
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
580
+ retry_options[:retry_statuses] = [429, 408]
581
+
582
+ connection = @sdk_configuration.client.dup
583
+ connection.request :retry, retry_options
438
584
 
439
- r = @sdk_configuration.client.get(url) do |req|
585
+ r = connection.get(url) do |req|
440
586
  req.headers = headers
441
587
  req.params = query_params
442
588
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -463,8 +609,8 @@ module StackOne
463
609
  end
464
610
 
465
611
 
466
- sig { params(request: T.nilable(::StackOne::Operations::LmsGetContentRequest)).returns(::StackOne::Operations::LmsGetContentResponse) }
467
- def get_content(request)
612
+ sig { params(request: T.nilable(::StackOne::Operations::LmsGetContentRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsGetContentResponse) }
613
+ def get_content(request, retries = nil)
468
614
  # get_content - Get Content
469
615
  url, params = @sdk_configuration.get_server_details
470
616
  base_url = Utils.template_url(url, params)
@@ -478,8 +624,24 @@ module StackOne
478
624
  query_params = Utils.get_query_params(::StackOne::Operations::LmsGetContentRequest, request)
479
625
  headers['Accept'] = 'application/json'
480
626
  headers['user-agent'] = @sdk_configuration.user_agent
627
+ retries ||= @sdk_configuration.retry_config
628
+ retries ||= Utils::RetryConfig.new(
629
+ backoff: Utils::BackoffStrategy.new(
630
+ exponent: 1.5,
631
+ initial_interval: 500,
632
+ max_elapsed_time: 3_600_000,
633
+ max_interval: 60_000
634
+ ),
635
+ retry_connection_errors: true,
636
+ strategy: 'backoff'
637
+ )
638
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
639
+ retry_options[:retry_statuses] = [429, 408]
640
+
641
+ connection = @sdk_configuration.client.dup
642
+ connection.request :retry, retry_options
481
643
 
482
- r = @sdk_configuration.client.get(url) do |req|
644
+ r = connection.get(url) do |req|
483
645
  req.headers = headers
484
646
  req.params = query_params
485
647
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -506,8 +668,8 @@ module StackOne
506
668
  end
507
669
 
508
670
 
509
- sig { params(request: T.nilable(::StackOne::Operations::LmsGetCourseRequest)).returns(::StackOne::Operations::LmsGetCourseResponse) }
510
- def get_course(request)
671
+ sig { params(request: T.nilable(::StackOne::Operations::LmsGetCourseRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsGetCourseResponse) }
672
+ def get_course(request, retries = nil)
511
673
  # get_course - Get Course
512
674
  url, params = @sdk_configuration.get_server_details
513
675
  base_url = Utils.template_url(url, params)
@@ -521,8 +683,24 @@ module StackOne
521
683
  query_params = Utils.get_query_params(::StackOne::Operations::LmsGetCourseRequest, request)
522
684
  headers['Accept'] = 'application/json'
523
685
  headers['user-agent'] = @sdk_configuration.user_agent
686
+ retries ||= @sdk_configuration.retry_config
687
+ retries ||= Utils::RetryConfig.new(
688
+ backoff: Utils::BackoffStrategy.new(
689
+ exponent: 1.5,
690
+ initial_interval: 500,
691
+ max_elapsed_time: 3_600_000,
692
+ max_interval: 60_000
693
+ ),
694
+ retry_connection_errors: true,
695
+ strategy: 'backoff'
696
+ )
697
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
698
+ retry_options[:retry_statuses] = [429, 408]
524
699
 
525
- r = @sdk_configuration.client.get(url) do |req|
700
+ connection = @sdk_configuration.client.dup
701
+ connection.request :retry, retry_options
702
+
703
+ r = connection.get(url) do |req|
526
704
  req.headers = headers
527
705
  req.params = query_params
528
706
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -549,8 +727,8 @@ module StackOne
549
727
  end
550
728
 
551
729
 
552
- sig { params(request: T.nilable(::StackOne::Operations::LmsGetSkillRequest)).returns(::StackOne::Operations::LmsGetSkillResponse) }
553
- def get_skill(request)
730
+ sig { params(request: T.nilable(::StackOne::Operations::LmsGetSkillRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsGetSkillResponse) }
731
+ def get_skill(request, retries = nil)
554
732
  # get_skill - Get Skill
555
733
  url, params = @sdk_configuration.get_server_details
556
734
  base_url = Utils.template_url(url, params)
@@ -564,8 +742,24 @@ module StackOne
564
742
  query_params = Utils.get_query_params(::StackOne::Operations::LmsGetSkillRequest, request)
565
743
  headers['Accept'] = 'application/json'
566
744
  headers['user-agent'] = @sdk_configuration.user_agent
745
+ retries ||= @sdk_configuration.retry_config
746
+ retries ||= Utils::RetryConfig.new(
747
+ backoff: Utils::BackoffStrategy.new(
748
+ exponent: 1.5,
749
+ initial_interval: 500,
750
+ max_elapsed_time: 3_600_000,
751
+ max_interval: 60_000
752
+ ),
753
+ retry_connection_errors: true,
754
+ strategy: 'backoff'
755
+ )
756
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
757
+ retry_options[:retry_statuses] = [429, 408]
758
+
759
+ connection = @sdk_configuration.client.dup
760
+ connection.request :retry, retry_options
567
761
 
568
- r = @sdk_configuration.client.get(url) do |req|
762
+ r = connection.get(url) do |req|
569
763
  req.headers = headers
570
764
  req.params = query_params
571
765
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -592,8 +786,8 @@ module StackOne
592
786
  end
593
787
 
594
788
 
595
- sig { params(request: T.nilable(::StackOne::Operations::LmsGetUserRequest)).returns(::StackOne::Operations::LmsGetUserResponse) }
596
- def get_user(request)
789
+ sig { params(request: T.nilable(::StackOne::Operations::LmsGetUserRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsGetUserResponse) }
790
+ def get_user(request, retries = nil)
597
791
  # get_user - Get User
598
792
  url, params = @sdk_configuration.get_server_details
599
793
  base_url = Utils.template_url(url, params)
@@ -607,8 +801,24 @@ module StackOne
607
801
  query_params = Utils.get_query_params(::StackOne::Operations::LmsGetUserRequest, request)
608
802
  headers['Accept'] = 'application/json'
609
803
  headers['user-agent'] = @sdk_configuration.user_agent
804
+ retries ||= @sdk_configuration.retry_config
805
+ retries ||= Utils::RetryConfig.new(
806
+ backoff: Utils::BackoffStrategy.new(
807
+ exponent: 1.5,
808
+ initial_interval: 500,
809
+ max_elapsed_time: 3_600_000,
810
+ max_interval: 60_000
811
+ ),
812
+ retry_connection_errors: true,
813
+ strategy: 'backoff'
814
+ )
815
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
816
+ retry_options[:retry_statuses] = [429, 408]
817
+
818
+ connection = @sdk_configuration.client.dup
819
+ connection.request :retry, retry_options
610
820
 
611
- r = @sdk_configuration.client.get(url) do |req|
821
+ r = connection.get(url) do |req|
612
822
  req.headers = headers
613
823
  req.params = query_params
614
824
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -635,8 +845,8 @@ module StackOne
635
845
  end
636
846
 
637
847
 
638
- sig { params(request: T.nilable(::StackOne::Operations::LmsGetUserAssignmentRequest)).returns(::StackOne::Operations::LmsGetUserAssignmentResponse) }
639
- def get_user_assignment(request)
848
+ sig { params(request: T.nilable(::StackOne::Operations::LmsGetUserAssignmentRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsGetUserAssignmentResponse) }
849
+ def get_user_assignment(request, retries = nil)
640
850
  # get_user_assignment - Get User Assignment
641
851
  url, params = @sdk_configuration.get_server_details
642
852
  base_url = Utils.template_url(url, params)
@@ -650,8 +860,24 @@ module StackOne
650
860
  query_params = Utils.get_query_params(::StackOne::Operations::LmsGetUserAssignmentRequest, request)
651
861
  headers['Accept'] = 'application/json'
652
862
  headers['user-agent'] = @sdk_configuration.user_agent
863
+ retries ||= @sdk_configuration.retry_config
864
+ retries ||= Utils::RetryConfig.new(
865
+ backoff: Utils::BackoffStrategy.new(
866
+ exponent: 1.5,
867
+ initial_interval: 500,
868
+ max_elapsed_time: 3_600_000,
869
+ max_interval: 60_000
870
+ ),
871
+ retry_connection_errors: true,
872
+ strategy: 'backoff'
873
+ )
874
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
875
+ retry_options[:retry_statuses] = [429, 408]
653
876
 
654
- r = @sdk_configuration.client.get(url) do |req|
877
+ connection = @sdk_configuration.client.dup
878
+ connection.request :retry, retry_options
879
+
880
+ r = connection.get(url) do |req|
655
881
  req.headers = headers
656
882
  req.params = query_params
657
883
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -678,8 +904,8 @@ module StackOne
678
904
  end
679
905
 
680
906
 
681
- sig { params(request: T.nilable(::StackOne::Operations::LmsGetUserCompletionRequest)).returns(::StackOne::Operations::LmsGetUserCompletionResponse) }
682
- def get_user_completion(request)
907
+ sig { params(request: T.nilable(::StackOne::Operations::LmsGetUserCompletionRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsGetUserCompletionResponse) }
908
+ def get_user_completion(request, retries = nil)
683
909
  # get_user_completion - Get User Completion
684
910
  url, params = @sdk_configuration.get_server_details
685
911
  base_url = Utils.template_url(url, params)
@@ -693,8 +919,24 @@ module StackOne
693
919
  query_params = Utils.get_query_params(::StackOne::Operations::LmsGetUserCompletionRequest, request)
694
920
  headers['Accept'] = 'application/json'
695
921
  headers['user-agent'] = @sdk_configuration.user_agent
922
+ retries ||= @sdk_configuration.retry_config
923
+ retries ||= Utils::RetryConfig.new(
924
+ backoff: Utils::BackoffStrategy.new(
925
+ exponent: 1.5,
926
+ initial_interval: 500,
927
+ max_elapsed_time: 3_600_000,
928
+ max_interval: 60_000
929
+ ),
930
+ retry_connection_errors: true,
931
+ strategy: 'backoff'
932
+ )
933
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
934
+ retry_options[:retry_statuses] = [429, 408]
696
935
 
697
- r = @sdk_configuration.client.get(url) do |req|
936
+ connection = @sdk_configuration.client.dup
937
+ connection.request :retry, retry_options
938
+
939
+ r = connection.get(url) do |req|
698
940
  req.headers = headers
699
941
  req.params = query_params
700
942
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -721,8 +963,8 @@ module StackOne
721
963
  end
722
964
 
723
965
 
724
- sig { params(request: T.nilable(::StackOne::Operations::LmsListAssignmentsRequest)).returns(::StackOne::Operations::LmsListAssignmentsResponse) }
725
- def list_assignments(request)
966
+ sig { params(request: T.nilable(::StackOne::Operations::LmsListAssignmentsRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsListAssignmentsResponse) }
967
+ def list_assignments(request, retries = nil)
726
968
  # list_assignments - List Assignments
727
969
  url, params = @sdk_configuration.get_server_details
728
970
  base_url = Utils.template_url(url, params)
@@ -731,8 +973,24 @@ module StackOne
731
973
  query_params = Utils.get_query_params(::StackOne::Operations::LmsListAssignmentsRequest, request)
732
974
  headers['Accept'] = 'application/json'
733
975
  headers['user-agent'] = @sdk_configuration.user_agent
976
+ retries ||= @sdk_configuration.retry_config
977
+ retries ||= Utils::RetryConfig.new(
978
+ backoff: Utils::BackoffStrategy.new(
979
+ exponent: 1.5,
980
+ initial_interval: 500,
981
+ max_elapsed_time: 3_600_000,
982
+ max_interval: 60_000
983
+ ),
984
+ retry_connection_errors: true,
985
+ strategy: 'backoff'
986
+ )
987
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
988
+ retry_options[:retry_statuses] = [429, 408]
734
989
 
735
- r = @sdk_configuration.client.get(url) do |req|
990
+ connection = @sdk_configuration.client.dup
991
+ connection.request :retry, retry_options
992
+
993
+ r = connection.get(url) do |req|
736
994
  req.headers = headers
737
995
  req.params = query_params
738
996
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -759,8 +1017,8 @@ module StackOne
759
1017
  end
760
1018
 
761
1019
 
762
- sig { params(request: T.nilable(::StackOne::Operations::LmsListCategoriesRequest)).returns(::StackOne::Operations::LmsListCategoriesResponse) }
763
- def list_categories(request)
1020
+ sig { params(request: T.nilable(::StackOne::Operations::LmsListCategoriesRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsListCategoriesResponse) }
1021
+ def list_categories(request, retries = nil)
764
1022
  # list_categories - List Categories
765
1023
  url, params = @sdk_configuration.get_server_details
766
1024
  base_url = Utils.template_url(url, params)
@@ -769,8 +1027,24 @@ module StackOne
769
1027
  query_params = Utils.get_query_params(::StackOne::Operations::LmsListCategoriesRequest, request)
770
1028
  headers['Accept'] = 'application/json'
771
1029
  headers['user-agent'] = @sdk_configuration.user_agent
1030
+ retries ||= @sdk_configuration.retry_config
1031
+ retries ||= Utils::RetryConfig.new(
1032
+ backoff: Utils::BackoffStrategy.new(
1033
+ exponent: 1.5,
1034
+ initial_interval: 500,
1035
+ max_elapsed_time: 3_600_000,
1036
+ max_interval: 60_000
1037
+ ),
1038
+ retry_connection_errors: true,
1039
+ strategy: 'backoff'
1040
+ )
1041
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1042
+ retry_options[:retry_statuses] = [429, 408]
1043
+
1044
+ connection = @sdk_configuration.client.dup
1045
+ connection.request :retry, retry_options
772
1046
 
773
- r = @sdk_configuration.client.get(url) do |req|
1047
+ r = connection.get(url) do |req|
774
1048
  req.headers = headers
775
1049
  req.params = query_params
776
1050
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -797,8 +1071,8 @@ module StackOne
797
1071
  end
798
1072
 
799
1073
 
800
- sig { params(request: T.nilable(::StackOne::Operations::LmsListCompletionsRequest)).returns(::StackOne::Operations::LmsListCompletionsResponse) }
801
- def list_completions(request)
1074
+ sig { params(request: T.nilable(::StackOne::Operations::LmsListCompletionsRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsListCompletionsResponse) }
1075
+ def list_completions(request, retries = nil)
802
1076
  # list_completions - List Completions
803
1077
  url, params = @sdk_configuration.get_server_details
804
1078
  base_url = Utils.template_url(url, params)
@@ -807,8 +1081,24 @@ module StackOne
807
1081
  query_params = Utils.get_query_params(::StackOne::Operations::LmsListCompletionsRequest, request)
808
1082
  headers['Accept'] = 'application/json'
809
1083
  headers['user-agent'] = @sdk_configuration.user_agent
1084
+ retries ||= @sdk_configuration.retry_config
1085
+ retries ||= Utils::RetryConfig.new(
1086
+ backoff: Utils::BackoffStrategy.new(
1087
+ exponent: 1.5,
1088
+ initial_interval: 500,
1089
+ max_elapsed_time: 3_600_000,
1090
+ max_interval: 60_000
1091
+ ),
1092
+ retry_connection_errors: true,
1093
+ strategy: 'backoff'
1094
+ )
1095
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1096
+ retry_options[:retry_statuses] = [429, 408]
1097
+
1098
+ connection = @sdk_configuration.client.dup
1099
+ connection.request :retry, retry_options
810
1100
 
811
- r = @sdk_configuration.client.get(url) do |req|
1101
+ r = connection.get(url) do |req|
812
1102
  req.headers = headers
813
1103
  req.params = query_params
814
1104
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -835,8 +1125,8 @@ module StackOne
835
1125
  end
836
1126
 
837
1127
 
838
- sig { params(request: T.nilable(::StackOne::Operations::LmsListContentRequest)).returns(::StackOne::Operations::LmsListContentResponse) }
839
- def list_content(request)
1128
+ sig { params(request: T.nilable(::StackOne::Operations::LmsListContentRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsListContentResponse) }
1129
+ def list_content(request, retries = nil)
840
1130
  # list_content - List Content
841
1131
  url, params = @sdk_configuration.get_server_details
842
1132
  base_url = Utils.template_url(url, params)
@@ -845,8 +1135,24 @@ module StackOne
845
1135
  query_params = Utils.get_query_params(::StackOne::Operations::LmsListContentRequest, request)
846
1136
  headers['Accept'] = 'application/json'
847
1137
  headers['user-agent'] = @sdk_configuration.user_agent
1138
+ retries ||= @sdk_configuration.retry_config
1139
+ retries ||= Utils::RetryConfig.new(
1140
+ backoff: Utils::BackoffStrategy.new(
1141
+ exponent: 1.5,
1142
+ initial_interval: 500,
1143
+ max_elapsed_time: 3_600_000,
1144
+ max_interval: 60_000
1145
+ ),
1146
+ retry_connection_errors: true,
1147
+ strategy: 'backoff'
1148
+ )
1149
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1150
+ retry_options[:retry_statuses] = [429, 408]
1151
+
1152
+ connection = @sdk_configuration.client.dup
1153
+ connection.request :retry, retry_options
848
1154
 
849
- r = @sdk_configuration.client.get(url) do |req|
1155
+ r = connection.get(url) do |req|
850
1156
  req.headers = headers
851
1157
  req.params = query_params
852
1158
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -873,8 +1179,8 @@ module StackOne
873
1179
  end
874
1180
 
875
1181
 
876
- sig { params(request: T.nilable(::StackOne::Operations::LmsListCoursesRequest)).returns(::StackOne::Operations::LmsListCoursesResponse) }
877
- def list_courses(request)
1182
+ sig { params(request: T.nilable(::StackOne::Operations::LmsListCoursesRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsListCoursesResponse) }
1183
+ def list_courses(request, retries = nil)
878
1184
  # list_courses - List Courses
879
1185
  url, params = @sdk_configuration.get_server_details
880
1186
  base_url = Utils.template_url(url, params)
@@ -883,8 +1189,24 @@ module StackOne
883
1189
  query_params = Utils.get_query_params(::StackOne::Operations::LmsListCoursesRequest, request)
884
1190
  headers['Accept'] = 'application/json'
885
1191
  headers['user-agent'] = @sdk_configuration.user_agent
1192
+ retries ||= @sdk_configuration.retry_config
1193
+ retries ||= Utils::RetryConfig.new(
1194
+ backoff: Utils::BackoffStrategy.new(
1195
+ exponent: 1.5,
1196
+ initial_interval: 500,
1197
+ max_elapsed_time: 3_600_000,
1198
+ max_interval: 60_000
1199
+ ),
1200
+ retry_connection_errors: true,
1201
+ strategy: 'backoff'
1202
+ )
1203
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1204
+ retry_options[:retry_statuses] = [429, 408]
1205
+
1206
+ connection = @sdk_configuration.client.dup
1207
+ connection.request :retry, retry_options
886
1208
 
887
- r = @sdk_configuration.client.get(url) do |req|
1209
+ r = connection.get(url) do |req|
888
1210
  req.headers = headers
889
1211
  req.params = query_params
890
1212
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -911,8 +1233,8 @@ module StackOne
911
1233
  end
912
1234
 
913
1235
 
914
- sig { params(request: T.nilable(::StackOne::Operations::LmsListSkillsRequest)).returns(::StackOne::Operations::LmsListSkillsResponse) }
915
- def list_skills(request)
1236
+ sig { params(request: T.nilable(::StackOne::Operations::LmsListSkillsRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsListSkillsResponse) }
1237
+ def list_skills(request, retries = nil)
916
1238
  # list_skills - List Skills
917
1239
  url, params = @sdk_configuration.get_server_details
918
1240
  base_url = Utils.template_url(url, params)
@@ -921,8 +1243,24 @@ module StackOne
921
1243
  query_params = Utils.get_query_params(::StackOne::Operations::LmsListSkillsRequest, request)
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.get(url) do |req|
1260
+ connection = @sdk_configuration.client.dup
1261
+ connection.request :retry, retry_options
1262
+
1263
+ r = connection.get(url) do |req|
926
1264
  req.headers = headers
927
1265
  req.params = query_params
928
1266
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -949,8 +1287,8 @@ module StackOne
949
1287
  end
950
1288
 
951
1289
 
952
- sig { params(request: T.nilable(::StackOne::Operations::LmsListUserAssignmentsRequest)).returns(::StackOne::Operations::LmsListUserAssignmentsResponse) }
953
- def list_user_assignments(request)
1290
+ sig { params(request: T.nilable(::StackOne::Operations::LmsListUserAssignmentsRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsListUserAssignmentsResponse) }
1291
+ def list_user_assignments(request, retries = nil)
954
1292
  # list_user_assignments - List User Assignments
955
1293
  url, params = @sdk_configuration.get_server_details
956
1294
  base_url = Utils.template_url(url, params)
@@ -964,8 +1302,24 @@ module StackOne
964
1302
  query_params = Utils.get_query_params(::StackOne::Operations::LmsListUserAssignmentsRequest, request)
965
1303
  headers['Accept'] = 'application/json'
966
1304
  headers['user-agent'] = @sdk_configuration.user_agent
1305
+ retries ||= @sdk_configuration.retry_config
1306
+ retries ||= Utils::RetryConfig.new(
1307
+ backoff: Utils::BackoffStrategy.new(
1308
+ exponent: 1.5,
1309
+ initial_interval: 500,
1310
+ max_elapsed_time: 3_600_000,
1311
+ max_interval: 60_000
1312
+ ),
1313
+ retry_connection_errors: true,
1314
+ strategy: 'backoff'
1315
+ )
1316
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1317
+ retry_options[:retry_statuses] = [429, 408]
967
1318
 
968
- r = @sdk_configuration.client.get(url) do |req|
1319
+ connection = @sdk_configuration.client.dup
1320
+ connection.request :retry, retry_options
1321
+
1322
+ r = connection.get(url) do |req|
969
1323
  req.headers = headers
970
1324
  req.params = query_params
971
1325
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -992,8 +1346,8 @@ module StackOne
992
1346
  end
993
1347
 
994
1348
 
995
- sig { params(request: T.nilable(::StackOne::Operations::LmsListUserCompletionsRequest)).returns(::StackOne::Operations::LmsListUserCompletionsResponse) }
996
- def list_user_completions(request)
1349
+ sig { params(request: T.nilable(::StackOne::Operations::LmsListUserCompletionsRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsListUserCompletionsResponse) }
1350
+ def list_user_completions(request, retries = nil)
997
1351
  # list_user_completions - List User Completions
998
1352
  url, params = @sdk_configuration.get_server_details
999
1353
  base_url = Utils.template_url(url, params)
@@ -1007,8 +1361,24 @@ module StackOne
1007
1361
  query_params = Utils.get_query_params(::StackOne::Operations::LmsListUserCompletionsRequest, request)
1008
1362
  headers['Accept'] = 'application/json'
1009
1363
  headers['user-agent'] = @sdk_configuration.user_agent
1364
+ retries ||= @sdk_configuration.retry_config
1365
+ retries ||= Utils::RetryConfig.new(
1366
+ backoff: Utils::BackoffStrategy.new(
1367
+ exponent: 1.5,
1368
+ initial_interval: 500,
1369
+ max_elapsed_time: 3_600_000,
1370
+ max_interval: 60_000
1371
+ ),
1372
+ retry_connection_errors: true,
1373
+ strategy: 'backoff'
1374
+ )
1375
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1376
+ retry_options[:retry_statuses] = [429, 408]
1010
1377
 
1011
- r = @sdk_configuration.client.get(url) do |req|
1378
+ connection = @sdk_configuration.client.dup
1379
+ connection.request :retry, retry_options
1380
+
1381
+ r = connection.get(url) do |req|
1012
1382
  req.headers = headers
1013
1383
  req.params = query_params
1014
1384
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -1035,8 +1405,8 @@ module StackOne
1035
1405
  end
1036
1406
 
1037
1407
 
1038
- sig { params(request: T.nilable(::StackOne::Operations::LmsListUsersRequest)).returns(::StackOne::Operations::LmsListUsersResponse) }
1039
- def list_users(request)
1408
+ sig { params(request: T.nilable(::StackOne::Operations::LmsListUsersRequest), retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsListUsersResponse) }
1409
+ def list_users(request, retries = nil)
1040
1410
  # list_users - List Users
1041
1411
  url, params = @sdk_configuration.get_server_details
1042
1412
  base_url = Utils.template_url(url, params)
@@ -1045,8 +1415,24 @@ module StackOne
1045
1415
  query_params = Utils.get_query_params(::StackOne::Operations::LmsListUsersRequest, request)
1046
1416
  headers['Accept'] = 'application/json'
1047
1417
  headers['user-agent'] = @sdk_configuration.user_agent
1418
+ retries ||= @sdk_configuration.retry_config
1419
+ retries ||= Utils::RetryConfig.new(
1420
+ backoff: Utils::BackoffStrategy.new(
1421
+ exponent: 1.5,
1422
+ initial_interval: 500,
1423
+ max_elapsed_time: 3_600_000,
1424
+ max_interval: 60_000
1425
+ ),
1426
+ retry_connection_errors: true,
1427
+ strategy: 'backoff'
1428
+ )
1429
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1430
+ retry_options[:retry_statuses] = [429, 408]
1431
+
1432
+ connection = @sdk_configuration.client.dup
1433
+ connection.request :retry, retry_options
1048
1434
 
1049
- r = @sdk_configuration.client.get(url) do |req|
1435
+ r = connection.get(url) do |req|
1050
1436
  req.headers = headers
1051
1437
  req.params = query_params
1052
1438
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
@@ -1073,8 +1459,8 @@ module StackOne
1073
1459
  end
1074
1460
 
1075
1461
 
1076
- sig { params(lms_create_collection_request_dto: ::StackOne::Shared::LmsCreateCollectionRequestDto, id: ::String, x_account_id: ::String).returns(::StackOne::Operations::LmsUpdateCollectionResponse) }
1077
- def update_collection(lms_create_collection_request_dto, id, x_account_id)
1462
+ sig { params(lms_create_collection_request_dto: ::StackOne::Shared::LmsCreateCollectionRequestDto, id: ::String, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsUpdateCollectionResponse) }
1463
+ def update_collection(lms_create_collection_request_dto, id, x_account_id, retries = nil)
1078
1464
  # update_collection - Update Collection
1079
1465
  request = ::StackOne::Operations::LmsUpdateCollectionRequest.new(
1080
1466
 
@@ -1096,8 +1482,24 @@ module StackOne
1096
1482
  raise StandardError, 'request body is required' if data.nil? && form.nil?
1097
1483
  headers['Accept'] = 'application/json'
1098
1484
  headers['user-agent'] = @sdk_configuration.user_agent
1485
+ retries ||= @sdk_configuration.retry_config
1486
+ retries ||= Utils::RetryConfig.new(
1487
+ backoff: Utils::BackoffStrategy.new(
1488
+ exponent: 1.5,
1489
+ initial_interval: 500,
1490
+ max_elapsed_time: 3_600_000,
1491
+ max_interval: 60_000
1492
+ ),
1493
+ retry_connection_errors: true,
1494
+ strategy: 'backoff'
1495
+ )
1496
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1497
+ retry_options[:retry_statuses] = [429, 408]
1498
+
1499
+ connection = @sdk_configuration.client.dup
1500
+ connection.request :retry, retry_options
1099
1501
 
1100
- r = @sdk_configuration.client.patch(url) do |req|
1502
+ r = connection.patch(url) do |req|
1101
1503
  req.headers = headers
1102
1504
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
1103
1505
  Utils.configure_request_security(req, security) if !security.nil?
@@ -1130,8 +1532,8 @@ module StackOne
1130
1532
  end
1131
1533
 
1132
1534
 
1133
- sig { params(lms_upsert_content_request_dto: ::StackOne::Shared::LmsUpsertContentRequestDto, x_account_id: ::String).returns(::StackOne::Operations::LmsUpsertContentResponse) }
1134
- def upsert_content(lms_upsert_content_request_dto, x_account_id)
1535
+ sig { params(lms_upsert_content_request_dto: ::StackOne::Shared::LmsUpsertContentRequestDto, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsUpsertContentResponse) }
1536
+ def upsert_content(lms_upsert_content_request_dto, x_account_id, retries = nil)
1135
1537
  # upsert_content - Upsert Content
1136
1538
  request = ::StackOne::Operations::LmsUpsertContentRequest.new(
1137
1539
 
@@ -1147,8 +1549,24 @@ module StackOne
1147
1549
  raise StandardError, 'request body is required' if data.nil? && form.nil?
1148
1550
  headers['Accept'] = 'application/json'
1149
1551
  headers['user-agent'] = @sdk_configuration.user_agent
1552
+ retries ||= @sdk_configuration.retry_config
1553
+ retries ||= Utils::RetryConfig.new(
1554
+ backoff: Utils::BackoffStrategy.new(
1555
+ exponent: 1.5,
1556
+ initial_interval: 500,
1557
+ max_elapsed_time: 3_600_000,
1558
+ max_interval: 60_000
1559
+ ),
1560
+ retry_connection_errors: true,
1561
+ strategy: 'backoff'
1562
+ )
1563
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1564
+ retry_options[:retry_statuses] = [429, 408]
1150
1565
 
1151
- r = @sdk_configuration.client.put(url) do |req|
1566
+ connection = @sdk_configuration.client.dup
1567
+ connection.request :retry, retry_options
1568
+
1569
+ r = connection.put(url) do |req|
1152
1570
  req.headers = headers
1153
1571
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
1154
1572
  Utils.configure_request_security(req, security) if !security.nil?
@@ -1181,8 +1599,8 @@ module StackOne
1181
1599
  end
1182
1600
 
1183
1601
 
1184
- sig { params(lms_upsert_course_request_dto: ::StackOne::Shared::LmsUpsertCourseRequestDto, x_account_id: ::String).returns(::StackOne::Operations::LmsUpsertCourseResponse) }
1185
- def upsert_course(lms_upsert_course_request_dto, x_account_id)
1602
+ sig { params(lms_upsert_course_request_dto: ::StackOne::Shared::LmsUpsertCourseRequestDto, x_account_id: ::String, retries: T.nilable(Utils::RetryConfig)).returns(::StackOne::Operations::LmsUpsertCourseResponse) }
1603
+ def upsert_course(lms_upsert_course_request_dto, x_account_id, retries = nil)
1186
1604
  # upsert_course - Upsert Course
1187
1605
  request = ::StackOne::Operations::LmsUpsertCourseRequest.new(
1188
1606
 
@@ -1198,8 +1616,24 @@ module StackOne
1198
1616
  raise StandardError, 'request body is required' if data.nil? && form.nil?
1199
1617
  headers['Accept'] = 'application/json'
1200
1618
  headers['user-agent'] = @sdk_configuration.user_agent
1619
+ retries ||= @sdk_configuration.retry_config
1620
+ retries ||= Utils::RetryConfig.new(
1621
+ backoff: Utils::BackoffStrategy.new(
1622
+ exponent: 1.5,
1623
+ initial_interval: 500,
1624
+ max_elapsed_time: 3_600_000,
1625
+ max_interval: 60_000
1626
+ ),
1627
+ retry_connection_errors: true,
1628
+ strategy: 'backoff'
1629
+ )
1630
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1631
+ retry_options[:retry_statuses] = [429, 408]
1632
+
1633
+ connection = @sdk_configuration.client.dup
1634
+ connection.request :retry, retry_options
1201
1635
 
1202
- r = @sdk_configuration.client.put(url) do |req|
1636
+ r = connection.put(url) do |req|
1203
1637
  req.headers = headers
1204
1638
  security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
1205
1639
  Utils.configure_request_security(req, security) if !security.nil?