stackone_client 0.40.1 → 0.41.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 (461) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stack_one/accounting.rb +40 -40
  3. data/lib/stack_one/accounts.rb +22 -22
  4. data/lib/stack_one/actions.rb +36 -30
  5. data/lib/stack_one/ats.rb +304 -304
  6. data/lib/stack_one/auth_configs.rb +7 -5
  7. data/lib/stack_one/connect_sessions.rb +293 -8
  8. data/lib/stack_one/connector_profiles.rb +1477 -0
  9. data/lib/stack_one/connectors.rb +8 -8
  10. data/lib/stack_one/crm.rb +40 -40
  11. data/lib/stack_one/documents.rb +32 -32
  12. data/lib/stack_one/hris.rb +296 -296
  13. data/lib/stack_one/iam.rb +1714 -181
  14. data/lib/stack_one/lms.rb +92 -92
  15. data/lib/stack_one/logs.rb +5123 -0
  16. data/lib/stack_one/marketing.rb +104 -104
  17. data/lib/stack_one/mcp.rb +52 -27
  18. data/lib/stack_one/messaging.rb +44 -44
  19. data/lib/stack_one/models/operations/error.rb +40 -0
  20. data/lib/stack_one/models/operations/error.rbi +17 -0
  21. data/lib/stack_one/models/operations/iam_get_me_request.rb +48 -0
  22. data/lib/stack_one/models/operations/iam_get_me_request.rbi +21 -0
  23. data/lib/stack_one/models/operations/iam_get_me_response.rb +48 -0
  24. data/lib/stack_one/models/operations/iam_get_me_response.rbi +21 -0
  25. data/lib/stack_one/models/operations/iam_get_organization_request.rb +52 -0
  26. data/lib/stack_one/models/operations/iam_get_organization_request.rbi +23 -0
  27. data/lib/stack_one/models/operations/iam_get_organization_response.rb +48 -0
  28. data/lib/stack_one/models/operations/iam_get_organization_response.rbi +21 -0
  29. data/lib/stack_one/models/operations/iam_list_organizations_queryparam_filter.rb +32 -0
  30. data/lib/stack_one/models/operations/iam_list_organizations_queryparam_filter.rbi +13 -0
  31. data/lib/stack_one/models/operations/iam_list_organizations_request.rb +72 -0
  32. data/lib/stack_one/models/operations/iam_list_organizations_request.rbi +31 -0
  33. data/lib/stack_one/models/operations/iam_list_organizations_response.rb +60 -0
  34. data/lib/stack_one/models/operations/iam_list_organizations_response.rbi +21 -0
  35. data/lib/stack_one/models/operations/iam_list_resource_types_request.rb +48 -0
  36. data/lib/stack_one/models/operations/iam_list_resource_types_request.rbi +21 -0
  37. data/lib/stack_one/models/operations/iam_list_resource_types_response.rb +48 -0
  38. data/lib/stack_one/models/operations/iam_list_resource_types_response.rbi +21 -0
  39. data/lib/stack_one/models/operations/iam_list_resource_users_queryparam_filter.rb +32 -0
  40. data/lib/stack_one/models/operations/iam_list_resource_users_queryparam_filter.rbi +13 -0
  41. data/lib/stack_one/models/operations/iam_list_resource_users_request.rb +84 -0
  42. data/lib/stack_one/models/operations/iam_list_resource_users_request.rbi +37 -0
  43. data/lib/stack_one/models/operations/iam_list_resource_users_response.rb +60 -0
  44. data/lib/stack_one/models/operations/iam_list_resource_users_response.rbi +21 -0
  45. data/lib/stack_one/models/operations/iam_list_users_queryparam_filter.rb +19 -3
  46. data/lib/stack_one/models/operations/iam_list_users_queryparam_filter.rbi +8 -0
  47. data/lib/stack_one/models/operations/iam_list_users_request.rb +1 -1
  48. data/lib/stack_one/models/operations/{stackone_rpc_action_responsebody.rb → id.rb} +2 -2
  49. data/lib/stack_one/models/{shared/iamresource_4.rbi → operations/id.rbi} +2 -2
  50. data/lib/stack_one/models/operations/include.rb +1 -0
  51. data/lib/stack_one/models/operations/instructions.rb +19 -0
  52. data/lib/stack_one/models/{shared/iamresource_value.rbi → operations/instructions.rbi} +2 -2
  53. data/lib/stack_one/models/operations/stackone_delete_connector_profile_pinned_version_request.rb +32 -0
  54. data/lib/stack_one/models/operations/stackone_delete_connector_profile_pinned_version_request.rbi +13 -0
  55. data/lib/stack_one/models/operations/stackone_delete_connector_profile_pinned_version_response.rb +44 -0
  56. data/lib/stack_one/models/operations/stackone_delete_connector_profile_pinned_version_response.rbi +19 -0
  57. data/lib/stack_one/models/operations/stackone_get_action_advanced_log_request.rb +32 -0
  58. data/lib/stack_one/models/operations/stackone_get_action_advanced_log_request.rbi +13 -0
  59. data/lib/stack_one/models/operations/stackone_get_action_advanced_log_response.rb +44 -0
  60. data/lib/stack_one/models/operations/stackone_get_action_advanced_log_response.rbi +19 -0
  61. data/lib/stack_one/models/operations/stackone_get_action_defender_log_request.rb +32 -0
  62. data/lib/stack_one/models/operations/stackone_get_action_defender_log_request.rbi +13 -0
  63. data/lib/stack_one/models/operations/stackone_get_action_defender_log_response.rb +44 -0
  64. data/lib/stack_one/models/operations/stackone_get_action_defender_log_response.rbi +19 -0
  65. data/lib/stack_one/models/operations/stackone_get_action_log_request.rb +32 -0
  66. data/lib/stack_one/models/operations/stackone_get_action_log_request.rbi +13 -0
  67. data/lib/stack_one/models/operations/stackone_get_action_log_response.rb +48 -0
  68. data/lib/stack_one/models/operations/stackone_get_action_log_response.rbi +21 -0
  69. data/lib/stack_one/models/operations/stackone_get_connect_session_request.rb +32 -0
  70. data/lib/stack_one/models/operations/stackone_get_connect_session_request.rbi +13 -0
  71. data/lib/stack_one/models/operations/stackone_get_connect_session_response.rb +48 -0
  72. data/lib/stack_one/models/operations/stackone_get_connect_session_response.rbi +21 -0
  73. data/lib/stack_one/models/operations/stackone_get_connector_profile_pinned_version_request.rb +32 -0
  74. data/lib/stack_one/models/operations/stackone_get_connector_profile_pinned_version_request.rbi +13 -0
  75. data/lib/stack_one/models/operations/stackone_get_connector_profile_pinned_version_response.rb +48 -0
  76. data/lib/stack_one/models/operations/stackone_get_connector_profile_pinned_version_response.rbi +21 -0
  77. data/lib/stack_one/models/operations/stackone_get_log_response.rb +5 -5
  78. data/lib/stack_one/models/operations/stackone_get_log_response.rbi +2 -2
  79. data/lib/stack_one/models/operations/stackone_get_logs_stats_aggregate_response.rb +44 -0
  80. data/lib/stack_one/models/operations/stackone_get_logs_stats_aggregate_response.rbi +19 -0
  81. data/lib/stack_one/models/operations/stackone_get_logs_stats_dimensions_response.rb +44 -0
  82. data/lib/stack_one/models/operations/stackone_get_logs_stats_dimensions_response.rbi +19 -0
  83. data/lib/stack_one/models/operations/stackone_get_provider_advanced_log_request.rb +36 -0
  84. data/lib/stack_one/models/operations/stackone_get_provider_advanced_log_request.rbi +15 -0
  85. data/lib/stack_one/models/operations/stackone_get_provider_advanced_log_response.rb +44 -0
  86. data/lib/stack_one/models/operations/stackone_get_provider_advanced_log_response.rbi +19 -0
  87. data/lib/stack_one/models/operations/stackone_get_provider_log_request.rb +36 -0
  88. data/lib/stack_one/models/operations/stackone_get_provider_log_request.rbi +15 -0
  89. data/lib/stack_one/models/operations/stackone_get_provider_log_response.rb +44 -0
  90. data/lib/stack_one/models/operations/stackone_get_provider_log_response.rbi +19 -0
  91. data/lib/stack_one/models/operations/stackone_get_step_advanced_log_request.rb +36 -0
  92. data/lib/stack_one/models/operations/stackone_get_step_advanced_log_request.rbi +15 -0
  93. data/lib/stack_one/models/operations/stackone_get_step_advanced_log_response.rb +44 -0
  94. data/lib/stack_one/models/operations/stackone_get_step_advanced_log_response.rbi +19 -0
  95. data/lib/stack_one/models/operations/stackone_get_step_log_request.rb +36 -0
  96. data/lib/stack_one/models/operations/stackone_get_step_log_request.rbi +15 -0
  97. data/lib/stack_one/models/operations/stackone_get_step_log_response.rb +44 -0
  98. data/lib/stack_one/models/operations/stackone_get_step_log_response.rbi +19 -0
  99. data/lib/stack_one/models/operations/stackone_get_unified_advanced_log_request.rb +32 -0
  100. data/lib/stack_one/models/operations/stackone_get_unified_advanced_log_request.rbi +13 -0
  101. data/lib/stack_one/models/operations/stackone_get_unified_advanced_log_response.rb +44 -0
  102. data/lib/stack_one/models/operations/stackone_get_unified_advanced_log_response.rbi +19 -0
  103. data/lib/stack_one/models/operations/stackone_get_unified_log_request.rb +32 -0
  104. data/lib/stack_one/models/operations/stackone_get_unified_log_request.rbi +13 -0
  105. data/lib/stack_one/models/operations/stackone_get_unified_log_response.rb +48 -0
  106. data/lib/stack_one/models/operations/stackone_get_unified_log_response.rbi +21 -0
  107. data/lib/stack_one/models/operations/stackone_list_action_logs_response.rb +48 -0
  108. data/lib/stack_one/models/operations/stackone_list_action_logs_response.rbi +21 -0
  109. data/lib/stack_one/models/operations/stackone_list_action_step_logs_request.rb +40 -0
  110. data/lib/stack_one/models/operations/stackone_list_action_step_logs_request.rbi +17 -0
  111. data/lib/stack_one/models/operations/stackone_list_action_step_logs_response.rb +44 -0
  112. data/lib/stack_one/models/operations/stackone_list_action_step_logs_response.rbi +19 -0
  113. data/lib/stack_one/models/operations/stackone_list_connector_profile_versions_request.rb +32 -0
  114. data/lib/stack_one/models/operations/stackone_list_connector_profile_versions_request.rbi +13 -0
  115. data/lib/stack_one/models/operations/stackone_list_connector_profile_versions_response.rb +48 -0
  116. data/lib/stack_one/models/operations/stackone_list_connector_profile_versions_response.rbi +21 -0
  117. data/lib/stack_one/models/operations/stackone_list_connector_profiles_request.rb +44 -0
  118. data/lib/stack_one/models/operations/stackone_list_connector_profiles_request.rbi +19 -0
  119. data/lib/stack_one/models/operations/stackone_list_connector_profiles_response.rb +48 -0
  120. data/lib/stack_one/models/operations/stackone_list_connector_profiles_response.rbi +21 -0
  121. data/lib/stack_one/models/operations/stackone_list_linked_accounts_response.rb +5 -5
  122. data/lib/stack_one/models/operations/stackone_list_linked_accounts_response.rbi +2 -2
  123. data/lib/stack_one/models/operations/stackone_list_linked_accounts_responsebody.rb +27 -0
  124. data/lib/stack_one/models/operations/stackone_list_linked_accounts_responsebody.rbi +11 -0
  125. data/lib/stack_one/models/operations/{stackone_list_logs_queryparam_include.rb → stackone_list_logs_legacy_queryparam_include.rb} +2 -2
  126. data/lib/stack_one/models/operations/stackone_list_logs_legacy_queryparam_include.rbi +11 -0
  127. data/lib/stack_one/models/operations/{stackone_list_logs_request.rb → stackone_list_logs_legacy_request.rb} +3 -3
  128. data/lib/stack_one/models/operations/{stackone_list_logs_request.rbi → stackone_list_logs_legacy_request.rbi} +2 -2
  129. data/lib/stack_one/models/operations/stackone_list_logs_legacy_response.rb +48 -0
  130. data/lib/stack_one/models/operations/stackone_list_logs_legacy_response.rbi +21 -0
  131. data/lib/stack_one/models/operations/stackone_list_logs_response.rb +5 -5
  132. data/lib/stack_one/models/operations/stackone_list_logs_response.rbi +2 -2
  133. data/lib/stack_one/models/operations/stackone_list_platform_logs_response.rb +5 -5
  134. data/lib/stack_one/models/operations/stackone_list_platform_logs_response.rbi +2 -2
  135. data/lib/stack_one/models/operations/stackone_list_provider_logs_response.rb +44 -0
  136. data/lib/stack_one/models/operations/stackone_list_provider_logs_response.rbi +19 -0
  137. data/lib/stack_one/models/operations/{stackone_list_step_logs_queryparam_filter.rb → stackone_list_step_logs_legacy_queryparam_filter.rb} +1 -1
  138. data/lib/stack_one/models/operations/{stackone_list_step_logs_queryparam_filter.rbi → stackone_list_step_logs_legacy_queryparam_filter.rbi} +2 -2
  139. data/lib/stack_one/models/operations/{stackone_list_step_logs_queryparam_order_by.rb → stackone_list_step_logs_legacy_queryparam_order_by.rb} +2 -2
  140. data/lib/stack_one/models/operations/stackone_list_step_logs_legacy_queryparam_order_by.rbi +11 -0
  141. data/lib/stack_one/models/operations/{stackone_list_step_logs_queryparam_order_direction.rb → stackone_list_step_logs_legacy_queryparam_order_direction.rb} +2 -2
  142. data/lib/stack_one/models/operations/stackone_list_step_logs_legacy_queryparam_order_direction.rbi +11 -0
  143. data/lib/stack_one/models/operations/{stackone_list_step_logs_request.rb → stackone_list_step_logs_legacy_request.rb} +5 -5
  144. data/lib/stack_one/models/operations/{stackone_list_step_logs_request.rbi → stackone_list_step_logs_legacy_request.rbi} +2 -2
  145. data/lib/stack_one/models/operations/stackone_list_step_logs_legacy_response.rb +48 -0
  146. data/lib/stack_one/models/operations/stackone_list_step_logs_legacy_response.rbi +21 -0
  147. data/lib/stack_one/models/operations/stackone_list_unified_logs_response.rb +48 -0
  148. data/lib/stack_one/models/operations/stackone_list_unified_logs_response.rbi +21 -0
  149. data/lib/stack_one/models/operations/stackone_list_unified_provider_logs_request.rb +40 -0
  150. data/lib/stack_one/models/operations/stackone_list_unified_provider_logs_request.rbi +17 -0
  151. data/lib/stack_one/models/operations/stackone_list_unified_provider_logs_response.rb +44 -0
  152. data/lib/stack_one/models/operations/stackone_list_unified_provider_logs_response.rbi +19 -0
  153. data/lib/stack_one/models/operations/stackone_mcp_post_request.rb +7 -3
  154. data/lib/stack_one/models/operations/stackone_mcp_post_request.rbi +2 -0
  155. data/lib/stack_one/models/operations/stackone_mcp_post_response.rb +10 -2
  156. data/lib/stack_one/models/operations/stackone_mcp_post_response.rbi +4 -0
  157. data/lib/stack_one/models/operations/stackone_mcp_post_responsebody.rb +44 -0
  158. data/lib/stack_one/models/operations/stackone_mcp_post_responsebody.rbi +19 -0
  159. data/lib/stack_one/models/operations/stackone_rpc_action_request.rb +6 -10
  160. data/lib/stack_one/models/operations/stackone_rpc_action_request.rbi +2 -4
  161. data/lib/stack_one/models/operations/stackone_rpc_action_response.rb +6 -6
  162. data/lib/stack_one/models/operations/stackone_rpc_action_response.rbi +2 -2
  163. data/lib/stack_one/models/operations/stackone_upsert_connector_profile_pinned_version_request.rb +36 -0
  164. data/lib/stack_one/models/operations/stackone_upsert_connector_profile_pinned_version_request.rbi +15 -0
  165. data/lib/stack_one/models/operations/stackone_upsert_connector_profile_pinned_version_response.rb +48 -0
  166. data/lib/stack_one/models/operations/stackone_upsert_connector_profile_pinned_version_response.rbi +21 -0
  167. data/lib/stack_one/models/operations/tool_mode.rb +1 -1
  168. data/lib/stack_one/models/operations.rb +64 -7
  169. data/lib/stack_one/models/shared/accountaddress_schemas_source_value.rb +1 -1
  170. data/lib/stack_one/models/shared/accountaddress_schemas_value.rb +3 -249
  171. data/lib/stack_one/models/shared/accountaddress_source_value.rb +1 -1
  172. data/lib/stack_one/models/shared/accountaddress_value.rb +249 -3
  173. data/lib/stack_one/models/shared/actionlog.rb +176 -0
  174. data/lib/stack_one/models/shared/actionlog.rbi +85 -0
  175. data/lib/stack_one/models/shared/actionlogspaginated.rb +40 -0
  176. data/lib/stack_one/models/shared/actionlogspaginated.rbi +17 -0
  177. data/lib/stack_one/models/shared/actionlogspostdto.rb +40 -0
  178. data/lib/stack_one/models/shared/actionlogspostdto.rbi +17 -0
  179. data/lib/stack_one/models/shared/actionmetaitem.rb +10 -2
  180. data/lib/stack_one/models/shared/actionmetaitem.rbi +4 -0
  181. data/lib/stack_one/models/shared/actionsmeta.rb +13 -3
  182. data/lib/stack_one/models/shared/actionsmeta.rbi +4 -0
  183. data/lib/stack_one/models/shared/actionsrpcrequestdto.rb +2 -2
  184. data/lib/stack_one/models/shared/actionsrpcrequestdto_query.rb +36 -0
  185. data/lib/stack_one/models/shared/actionsrpcrequestdto_query.rbi +15 -0
  186. data/lib/stack_one/models/shared/actionsrpcsyncedrequestdto.rb +14 -6
  187. data/lib/stack_one/models/shared/actionsrpcsyncedrequestdto.rbi +6 -2
  188. data/lib/stack_one/models/shared/actionssynceddatasync.rb +14 -10
  189. data/lib/stack_one/models/shared/actionssynceddatasync.rbi +6 -4
  190. data/lib/stack_one/models/shared/additionaldata_value.rb +27 -0
  191. data/lib/stack_one/models/shared/{iamuser_schemas_value.rbi → additionaldata_value.rbi} +2 -2
  192. data/lib/stack_one/models/shared/aggregationpostdto.rb +44 -0
  193. data/lib/stack_one/models/shared/aggregationpostdto.rbi +19 -0
  194. data/lib/stack_one/models/shared/aggregationpostdto_filters.rb +192 -0
  195. data/lib/stack_one/models/shared/aggregationpostdto_filters.rbi +93 -0
  196. data/lib/stack_one/models/shared/aggregationpostdto_http_method.rb +22 -0
  197. data/lib/stack_one/models/shared/aggregationpostdto_http_method.rbi +11 -0
  198. data/lib/stack_one/models/shared/aggregationpostdto_log_type.rb +19 -0
  199. data/lib/stack_one/models/shared/aggregationpostdto_log_type.rbi +11 -0
  200. data/lib/stack_one/models/shared/aggregationpostdto_order_by.rb +23 -0
  201. data/lib/stack_one/models/shared/aggregationpostdto_order_by.rbi +11 -0
  202. data/lib/stack_one/models/shared/aggregationpostdto_order_direction.rb +21 -0
  203. data/lib/stack_one/models/shared/aggregationpostdto_order_direction.rbi +11 -0
  204. data/lib/stack_one/models/shared/atsdocumentapimodel.rb +2 -2
  205. data/lib/stack_one/models/shared/atsdocumentapimodel_file_format.rb +36 -0
  206. data/lib/stack_one/models/shared/atsdocumentapimodel_file_format.rbi +15 -0
  207. data/lib/stack_one/models/shared/{iamuser_file_format.rb → auth_type.rb} +6 -6
  208. data/lib/stack_one/models/shared/{iamuser_category.rbi → auth_type.rbi} +2 -2
  209. data/lib/stack_one/models/shared/channelsenum.rb +2 -2
  210. data/lib/stack_one/models/shared/{iamuser_schemas_4.rb → channelsenum_4.rb} +1 -1
  211. data/lib/stack_one/models/shared/{iamuser_schemas_4.rbi → channelsenum_4.rbi} +2 -2
  212. data/lib/stack_one/models/shared/channelsenum_source_value.rb +27 -0
  213. data/lib/stack_one/models/shared/channelsenum_source_value.rbi +11 -0
  214. data/lib/stack_one/models/shared/connectorprofile.rb +96 -0
  215. data/lib/stack_one/models/shared/connectorprofile.rbi +45 -0
  216. data/lib/stack_one/models/shared/connectorprofilepinnedversion.rb +48 -0
  217. data/lib/stack_one/models/shared/connectorprofilepinnedversion.rbi +21 -0
  218. data/lib/stack_one/models/shared/connectorprofilespaginated.rb +44 -0
  219. data/lib/stack_one/models/shared/connectorprofilespaginated.rbi +19 -0
  220. data/lib/stack_one/models/shared/connectorprofileversion.rb +44 -0
  221. data/lib/stack_one/models/shared/connectorprofileversion.rbi +19 -0
  222. data/lib/stack_one/models/shared/connectsession.rb +13 -3
  223. data/lib/stack_one/models/shared/connectsession.rbi +4 -0
  224. data/lib/stack_one/models/shared/connectsession_status.rb +23 -0
  225. data/lib/stack_one/models/shared/connectsession_status.rbi +11 -0
  226. data/lib/stack_one/models/shared/connectsessioncreate.rb +15 -7
  227. data/lib/stack_one/models/shared/connectsessioncreate.rbi +2 -0
  228. data/lib/stack_one/models/shared/connectsessiontokenauthlink.rb +13 -3
  229. data/lib/stack_one/models/shared/connectsessiontokenauthlink.rbi +4 -0
  230. data/lib/stack_one/models/shared/connectsessiontokenauthlink_latest_connection_attempt.rb +56 -0
  231. data/lib/stack_one/models/shared/connectsessiontokenauthlink_latest_connection_attempt.rbi +25 -0
  232. data/lib/stack_one/models/shared/connectsessiontokenauthlink_status.rb +23 -0
  233. data/lib/stack_one/models/shared/connectsessiontokenauthlink_status.rbi +11 -0
  234. data/lib/stack_one/models/shared/country.rb +3 -3
  235. data/lib/stack_one/models/shared/dimensions.rb +31 -0
  236. data/lib/stack_one/models/shared/dimensions.rbi +11 -0
  237. data/lib/stack_one/models/shared/dimensionspostdto.rb +40 -0
  238. data/lib/stack_one/models/shared/dimensionspostdto.rbi +17 -0
  239. data/lib/stack_one/models/shared/dimensionspostdto_dimensions.rb +31 -0
  240. data/lib/stack_one/models/shared/dimensionspostdto_dimensions.rbi +11 -0
  241. data/lib/stack_one/models/shared/dimensionspostdto_filters.rb +192 -0
  242. data/lib/stack_one/models/shared/dimensionspostdto_filters.rbi +93 -0
  243. data/lib/stack_one/models/shared/dimensionspostdto_http_method.rb +22 -0
  244. data/lib/stack_one/models/shared/dimensionspostdto_http_method.rbi +11 -0
  245. data/lib/stack_one/models/shared/dimensionspostdto_log_type.rb +19 -0
  246. data/lib/stack_one/models/shared/dimensionspostdto_log_type.rbi +11 -0
  247. data/lib/stack_one/models/shared/dimensionspostdto_order_by.rb +23 -0
  248. data/lib/stack_one/models/shared/dimensionspostdto_order_by.rbi +11 -0
  249. data/lib/stack_one/models/shared/dimensionspostdto_order_direction.rb +21 -0
  250. data/lib/stack_one/models/shared/dimensionspostdto_order_direction.rbi +11 -0
  251. data/lib/stack_one/models/shared/eventmetaitem.rb +56 -0
  252. data/lib/stack_one/models/shared/eventmetaitem.rbi +25 -0
  253. data/lib/stack_one/models/shared/file_format.rb +3 -3
  254. data/lib/stack_one/models/shared/file_schemas.rb +70 -0
  255. data/lib/stack_one/models/shared/file_schemas.rbi +31 -0
  256. data/lib/stack_one/models/shared/filters.rb +104 -0
  257. data/lib/stack_one/models/shared/filters.rbi +49 -0
  258. data/lib/stack_one/models/shared/http_method.rb +22 -0
  259. data/lib/stack_one/models/shared/http_method.rbi +11 -0
  260. data/lib/stack_one/models/shared/iamcredentials.rb +52 -0
  261. data/lib/stack_one/models/shared/iamcredentials.rbi +23 -0
  262. data/lib/stack_one/models/shared/iamcredentials_2.rb +19 -0
  263. data/lib/stack_one/models/shared/iamcredentials_2.rbi +11 -0
  264. data/lib/stack_one/models/shared/{iamuser_schemas_avatar_4.rb → iamcredentials_4.rb} +1 -1
  265. data/lib/stack_one/models/shared/iamcredentials_4.rbi +11 -0
  266. data/lib/stack_one/models/shared/iamcredentials_avatar.rb +27 -0
  267. data/lib/stack_one/models/shared/iamcredentials_avatar.rbi +11 -0
  268. data/lib/stack_one/models/shared/iamcredentials_is_bot_user.rb +27 -0
  269. data/lib/stack_one/models/shared/iamcredentials_is_bot_user.rbi +11 -0
  270. data/lib/stack_one/models/shared/{iamresource_source_value.rb → iamcredentials_schemas_4.rb} +1 -1
  271. data/lib/stack_one/models/shared/iamcredentials_schemas_4.rbi +11 -0
  272. data/lib/stack_one/models/shared/iamcredentials_schemas_source_value.rb +27 -0
  273. data/lib/stack_one/models/shared/iamcredentials_schemas_source_value.rbi +11 -0
  274. data/lib/stack_one/models/shared/iamcredentials_schemas_value.rb +23 -0
  275. data/lib/stack_one/models/shared/iamcredentials_schemas_value.rbi +11 -0
  276. data/lib/stack_one/models/shared/iamcredentials_source_value.rb +27 -0
  277. data/lib/stack_one/models/shared/iamcredentials_source_value.rbi +11 -0
  278. data/lib/stack_one/models/shared/iamcredentials_status.rb +36 -0
  279. data/lib/stack_one/models/shared/iamcredentials_status.rbi +15 -0
  280. data/lib/stack_one/models/shared/iamcredentials_user.rb +104 -0
  281. data/lib/stack_one/models/shared/iamcredentials_user.rbi +49 -0
  282. data/lib/stack_one/models/shared/{iamresource_value.rb → iamcredentials_value.rb} +5 -8
  283. data/lib/stack_one/models/shared/iamcredentials_value.rbi +11 -0
  284. data/lib/stack_one/models/shared/iamcredentialsresult.rb +36 -0
  285. data/lib/stack_one/models/shared/iamcredentialsresult.rbi +15 -0
  286. data/lib/stack_one/models/shared/iamgroup.rb +14 -2
  287. data/lib/stack_one/models/shared/iamgroup.rbi +6 -0
  288. data/lib/stack_one/models/shared/iamgroup_input.rb +80 -0
  289. data/lib/stack_one/models/shared/iamgroup_input.rbi +37 -0
  290. data/lib/stack_one/models/shared/iamgroupresult.rb +2 -2
  291. data/lib/stack_one/models/shared/iamorganization.rb +48 -0
  292. data/lib/stack_one/models/shared/iamorganization.rbi +21 -0
  293. data/lib/stack_one/models/shared/iamorganizationresult.rb +36 -0
  294. data/lib/stack_one/models/shared/iamorganizationresult.rbi +15 -0
  295. data/lib/stack_one/models/shared/iamorganizationspaginated.rb +44 -0
  296. data/lib/stack_one/models/shared/iamorganizationspaginated.rbi +19 -0
  297. data/lib/stack_one/models/shared/iampermission.rb +8 -2
  298. data/lib/stack_one/models/shared/iampermission.rbi +2 -0
  299. data/lib/stack_one/models/shared/iampermission_value.rb +6 -2
  300. data/lib/stack_one/models/shared/iampermissionscope.rb +36 -0
  301. data/lib/stack_one/models/shared/iampermissionscope.rbi +15 -0
  302. data/lib/stack_one/models/shared/iamresource.rb +3 -3
  303. data/lib/stack_one/models/shared/iamresource_type.rb +3 -12
  304. data/lib/stack_one/models/shared/iamresource_type.rbi +0 -4
  305. data/lib/stack_one/models/shared/iamresourcetypeenum_schemas.rb +36 -0
  306. data/lib/stack_one/models/shared/iamresourcetypeenum_schemas.rbi +15 -0
  307. data/lib/stack_one/models/shared/iamresourcetypesresult.rb +36 -0
  308. data/lib/stack_one/models/shared/iamresourcetypesresult.rbi +15 -0
  309. data/lib/stack_one/models/shared/iamrole.rb +12 -2
  310. data/lib/stack_one/models/shared/iamrole.rbi +4 -0
  311. data/lib/stack_one/models/shared/iamuser.rb +8 -4
  312. data/lib/stack_one/models/shared/iamuser.rbi +2 -0
  313. data/lib/stack_one/models/shared/iamuser_avatar.rb +3 -46
  314. data/lib/stack_one/models/shared/iamuser_avatar.rbi +0 -20
  315. data/lib/stack_one/models/shared/iamuser_input.rb +104 -0
  316. data/lib/stack_one/models/shared/iamuser_input.rbi +49 -0
  317. data/lib/stack_one/models/shared/iamuserresult.rb +2 -2
  318. data/lib/stack_one/models/shared/iamuserspaginated.rb +2 -2
  319. data/lib/stack_one/models/shared/id.rb +1 -1
  320. data/lib/stack_one/models/shared/interval_type.rb +24 -0
  321. data/lib/stack_one/models/shared/interval_type.rbi +11 -0
  322. data/lib/stack_one/models/shared/jsonrpcmessagedto.rb +5 -5
  323. data/lib/stack_one/models/shared/latest_connection_attempt.rb +56 -0
  324. data/lib/stack_one/models/shared/latest_connection_attempt.rbi +25 -0
  325. data/lib/stack_one/models/shared/linkedaccount.rb +6 -2
  326. data/lib/stack_one/models/shared/linkedaccount.rbi +2 -0
  327. data/lib/stack_one/models/shared/linkedaccountspaginated.rb +44 -0
  328. data/lib/stack_one/models/shared/linkedaccountspaginated.rbi +19 -0
  329. data/lib/stack_one/models/shared/location_type.rb +3 -3
  330. data/lib/stack_one/models/shared/log_type.rb +20 -0
  331. data/lib/stack_one/models/shared/log_type.rbi +11 -0
  332. data/lib/stack_one/models/shared/logspaginated.rb +40 -0
  333. data/lib/stack_one/models/shared/logspaginated.rbi +17 -0
  334. data/lib/stack_one/models/shared/logspaginated_data.rb +27 -0
  335. data/lib/stack_one/models/shared/logspaginated_data.rbi +11 -0
  336. data/lib/stack_one/models/shared/logspaginated_query.rb +27 -0
  337. data/lib/stack_one/models/shared/logspaginated_query.rbi +11 -0
  338. data/lib/stack_one/models/shared/logspostdto.rb +40 -0
  339. data/lib/stack_one/models/shared/logspostdto.rbi +17 -0
  340. data/lib/stack_one/models/shared/logspostdto_filters.rb +192 -0
  341. data/lib/stack_one/models/shared/logspostdto_filters.rbi +93 -0
  342. data/lib/stack_one/models/shared/logspostdto_http_method.rb +22 -0
  343. data/lib/stack_one/models/shared/{iamuser_schemas_avatar_4.rbi → logspostdto_http_method.rbi} +2 -2
  344. data/lib/stack_one/models/shared/logspostdto_log_type.rb +19 -0
  345. data/lib/stack_one/models/shared/logspostdto_log_type.rbi +11 -0
  346. data/lib/stack_one/models/shared/logspostdto_order_by.rb +23 -0
  347. data/lib/stack_one/models/shared/logspostdto_order_by.rbi +11 -0
  348. data/lib/stack_one/models/shared/logspostdto_order_direction.rb +21 -0
  349. data/lib/stack_one/models/shared/logspostdto_order_direction.rbi +11 -0
  350. data/lib/stack_one/models/shared/order_by.rb +23 -0
  351. data/lib/stack_one/models/shared/order_by.rbi +11 -0
  352. data/lib/stack_one/models/shared/order_direction.rb +21 -0
  353. data/lib/stack_one/models/shared/order_direction.rbi +11 -0
  354. data/lib/stack_one/models/shared/params.rb +1 -1
  355. data/lib/stack_one/models/shared/patchaccountexternaldto.rb +9 -3
  356. data/lib/stack_one/models/shared/patchaccountexternaldto.rbi +2 -0
  357. data/lib/stack_one/models/shared/{platformlog.rb → platformloglegacy.rb} +1 -1
  358. data/lib/stack_one/models/shared/{platformlog.rbi → platformloglegacy.rbi} +2 -2
  359. data/lib/stack_one/models/shared/{platformlogspaginated.rb → platformlogspaginatedlegacy.rb} +3 -3
  360. data/lib/stack_one/models/shared/platformlogspaginatedlegacy.rbi +15 -0
  361. data/lib/stack_one/models/shared/providerlogspostdto.rb +40 -0
  362. data/lib/stack_one/models/shared/providerlogspostdto.rbi +17 -0
  363. data/lib/stack_one/models/shared/providerlogspostdto_filters.rb +60 -0
  364. data/lib/stack_one/models/shared/providerlogspostdto_filters.rbi +27 -0
  365. data/lib/stack_one/models/shared/providerlogspostdto_order_by.rb +23 -0
  366. data/lib/stack_one/models/shared/providerlogspostdto_order_by.rbi +11 -0
  367. data/lib/stack_one/models/shared/providerlogspostdto_order_direction.rb +21 -0
  368. data/lib/stack_one/models/shared/providerlogspostdto_order_direction.rbi +11 -0
  369. data/lib/stack_one/models/shared/query.rb +3 -12
  370. data/lib/stack_one/models/shared/query.rbi +0 -4
  371. data/lib/stack_one/models/shared/{iamresource_4.rb → schemas_4.rb} +1 -1
  372. data/lib/stack_one/models/shared/schemas_4.rbi +11 -0
  373. data/lib/stack_one/models/shared/{iamuser_category.rb → schemas_category.rb} +3 -3
  374. data/lib/stack_one/models/shared/{iamuser_file_format.rbi → schemas_category.rbi} +2 -2
  375. data/lib/stack_one/models/shared/schemas_file_4.rb +27 -0
  376. data/lib/stack_one/models/shared/schemas_file_4.rbi +11 -0
  377. data/lib/stack_one/models/shared/schemas_file_source_value.rb +27 -0
  378. data/lib/stack_one/models/shared/schemas_file_source_value.rbi +11 -0
  379. data/lib/stack_one/models/shared/schemas_source_value.rb +27 -0
  380. data/lib/stack_one/models/shared/schemas_source_value.rbi +11 -0
  381. data/lib/stack_one/models/shared/{iamuser_schemas_value.rb → schemas_value.rb} +2 -2
  382. data/lib/stack_one/models/shared/schemas_value.rbi +11 -0
  383. data/lib/stack_one/models/shared/scope.rb +36 -0
  384. data/lib/stack_one/models/shared/scope.rbi +15 -0
  385. data/lib/stack_one/models/shared/source_value.rb +1 -1
  386. data/lib/stack_one/models/shared/steplog.rb +53 -73
  387. data/lib/stack_one/models/shared/steplog.rbi +24 -34
  388. data/lib/stack_one/models/shared/steplog_log_type.rb +20 -0
  389. data/lib/stack_one/models/shared/steplog_log_type.rbi +11 -0
  390. data/lib/stack_one/models/shared/{steplogpartial.rb → steplogpartiallegacy.rb} +1 -1
  391. data/lib/stack_one/models/shared/{steplogpartial.rbi → steplogpartiallegacy.rbi} +2 -2
  392. data/lib/stack_one/models/shared/steplogspaginated.rb +13 -9
  393. data/lib/stack_one/models/shared/steplogspaginated.rbi +4 -2
  394. data/lib/stack_one/models/shared/steplogspaginated_query.rb +27 -0
  395. data/lib/stack_one/models/shared/steplogspaginated_query.rbi +11 -0
  396. data/lib/stack_one/models/shared/steplogspaginatedlegacy.rb +36 -0
  397. data/lib/stack_one/models/shared/{platformlogspaginated.rbi → steplogspaginatedlegacy.rbi} +2 -2
  398. data/lib/stack_one/models/shared/stepslogspostdto.rb +40 -0
  399. data/lib/stack_one/models/shared/stepslogspostdto.rbi +17 -0
  400. data/lib/stack_one/models/shared/stepslogspostdto_filters.rb +64 -0
  401. data/lib/stack_one/models/shared/stepslogspostdto_filters.rbi +29 -0
  402. data/lib/stack_one/models/shared/stepslogspostdto_order_by.rb +23 -0
  403. data/lib/stack_one/models/shared/stepslogspostdto_order_by.rbi +11 -0
  404. data/lib/stack_one/models/shared/stepslogspostdto_order_direction.rb +21 -0
  405. data/lib/stack_one/models/shared/stepslogspostdto_order_direction.rbi +11 -0
  406. data/lib/stack_one/models/shared/unifiedlog.rb +192 -0
  407. data/lib/stack_one/models/shared/unifiedlog.rbi +93 -0
  408. data/lib/stack_one/models/shared/unifiedlog_log_type.rb +20 -0
  409. data/lib/stack_one/models/shared/unifiedlog_log_type.rbi +11 -0
  410. data/lib/stack_one/models/shared/{unifiedlogresult.rb → unifiedlogresultlegacy.rb} +3 -3
  411. data/lib/stack_one/models/shared/{unifiedlogresult.rbi → unifiedlogresultlegacy.rbi} +2 -2
  412. data/lib/stack_one/models/shared/{unifiedlogs.rb → unifiedlogslegacy.rb} +4 -4
  413. data/lib/stack_one/models/shared/{unifiedlogs.rbi → unifiedlogslegacy.rbi} +2 -2
  414. data/lib/stack_one/models/shared/{unifiedlogs_response.rb → unifiedlogslegacy_response.rb} +1 -1
  415. data/lib/stack_one/models/shared/{steplog_response.rbi → unifiedlogslegacy_response.rbi} +2 -2
  416. data/lib/stack_one/models/shared/unifiedlogspaginated.rb +13 -9
  417. data/lib/stack_one/models/shared/unifiedlogspaginated.rbi +4 -2
  418. data/lib/stack_one/models/shared/unifiedlogspaginated_query.rb +27 -0
  419. data/lib/stack_one/models/shared/unifiedlogspaginated_query.rbi +11 -0
  420. data/lib/stack_one/models/shared/unifiedlogspaginatedlegacy.rb +36 -0
  421. data/lib/stack_one/models/shared/unifiedlogspaginatedlegacy.rbi +15 -0
  422. data/lib/stack_one/models/shared/{unifiedlogspartial.rb → unifiedlogspartiallegacy.rb} +3 -3
  423. data/lib/stack_one/models/shared/{unifiedlogspartial.rbi → unifiedlogspartiallegacy.rbi} +2 -2
  424. data/lib/stack_one/models/shared/unifiedlogspostdto.rb +40 -0
  425. data/lib/stack_one/models/shared/unifiedlogspostdto.rbi +17 -0
  426. data/lib/stack_one/models/shared/unifiedlogspostdto_filters.rb +96 -0
  427. data/lib/stack_one/models/shared/unifiedlogspostdto_filters.rbi +45 -0
  428. data/lib/stack_one/models/shared/unifiedlogspostdto_http_method.rb +22 -0
  429. data/lib/stack_one/models/shared/unifiedlogspostdto_http_method.rbi +11 -0
  430. data/lib/stack_one/models/shared/unifiedlogspostdto_order_by.rb +23 -0
  431. data/lib/stack_one/models/shared/unifiedlogspostdto_order_by.rbi +11 -0
  432. data/lib/stack_one/models/shared/unifiedlogspostdto_order_direction.rb +21 -0
  433. data/lib/stack_one/models/shared/unifiedlogspostdto_order_direction.rbi +11 -0
  434. data/lib/stack_one/models/shared/upsertconnectorprofilepinnedversion.rb +36 -0
  435. data/lib/stack_one/models/shared/upsertconnectorprofilepinnedversion.rbi +15 -0
  436. data/lib/stack_one/models/shared/value.rb +11 -12
  437. data/lib/stack_one/models/shared.rb +105 -20
  438. data/lib/stack_one/proxy.rb +4 -4
  439. data/lib/stack_one/request_logs.rb +44 -36
  440. data/lib/stack_one/screening.rb +16 -16
  441. data/lib/stack_one/sdkconfiguration.rb +3 -3
  442. data/lib/stack_one/stackone.rb +3 -1
  443. data/lib/stack_one/ticketing.rb +76 -76
  444. data/lib/stack_one/utils/retries.rb +4 -1
  445. data/lib/stackone_client.rb +2 -0
  446. metadata +344 -58
  447. data/lib/stack_one/models/operations/stackone_list_logs_queryparam_include.rbi +0 -11
  448. data/lib/stack_one/models/operations/stackone_list_step_logs_queryparam_order_by.rbi +0 -11
  449. data/lib/stack_one/models/operations/stackone_list_step_logs_queryparam_order_direction.rbi +0 -11
  450. data/lib/stack_one/models/operations/stackone_rpc_action_responsebody.rbi +0 -11
  451. data/lib/stack_one/models/shared/iamresource_source_value.rbi +0 -11
  452. data/lib/stack_one/models/shared/iamuser_schemas_avatar_source_value.rb +0 -27
  453. data/lib/stack_one/models/shared/iamuser_schemas_avatar_source_value.rbi +0 -11
  454. data/lib/stack_one/models/shared/iamuser_schemas_source_value.rb +0 -27
  455. data/lib/stack_one/models/shared/iamuser_schemas_source_value.rbi +0 -11
  456. data/lib/stack_one/models/shared/steplog_response.rb +0 -48
  457. data/lib/stack_one/models/shared/unifiedlogs_request.rb +0 -48
  458. data/lib/stack_one/models/shared/unifiedlogs_request.rbi +0 -21
  459. data/lib/stack_one/models/shared/unifiedlogs_response.rbi +0 -21
  460. data/lib/stack_one/models/shared/unifiedlogs_url.rb +0 -44
  461. data/lib/stack_one/models/shared/unifiedlogs_url.rbi +0 -19
@@ -0,0 +1,1477 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'faraday'
7
+ require 'faraday/multipart'
8
+ require 'faraday/retry'
9
+ require 'sorbet-runtime'
10
+ require_relative 'sdk_hooks/hooks'
11
+ require_relative 'utils/retries'
12
+
13
+ module StackOne
14
+ extend T::Sig
15
+ class ConnectorProfiles
16
+ extend T::Sig
17
+
18
+ # View and manage connector profiles for the project.
19
+
20
+ sig { params(sdk_config: SDKConfiguration).void }
21
+ def initialize(sdk_config)
22
+ @sdk_configuration = sdk_config
23
+
24
+ end
25
+
26
+ sig { params(base_url: String, url_variables: T.nilable(T::Hash[Symbol, T.any(String, T::Enum)])).returns(String) }
27
+ def get_url(base_url:, url_variables: nil)
28
+ sd_base_url, sd_options = @sdk_configuration.get_server_details
29
+
30
+ if base_url.nil?
31
+ base_url = sd_base_url
32
+ end
33
+
34
+ if url_variables.nil?
35
+ url_variables = sd_options
36
+ end
37
+
38
+ return Utils.template_url base_url, url_variables
39
+ end
40
+
41
+
42
+
43
+
44
+ sig { params(connector_profile_id: ::String, retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::StackoneDeleteConnectorProfilePinnedVersionResponse) }
45
+ def delete_connector_profile_pinned_version(connector_profile_id:, retries: nil, timeout_ms: nil, http_headers: nil)
46
+ # delete_connector_profile_pinned_version - Delete Connector Profile Pinned Version
47
+ # Remove the pinned connector version for the given connector profile.
48
+ #
49
+ # If set, this operation will use `password` from the global security.
50
+ request = Models::Operations::StackoneDeleteConnectorProfilePinnedVersionRequest.new(
51
+ connector_profile_id: connector_profile_id
52
+ )
53
+ url, params = @sdk_configuration.get_server_details
54
+ base_url = Utils.template_url(url, params)
55
+ url = Utils.generate_url(
56
+ Models::Operations::StackoneDeleteConnectorProfilePinnedVersionRequest,
57
+ base_url,
58
+ '/connector_profiles/{connectorProfileId}/pinned_version',
59
+ request
60
+ )
61
+ headers = {}
62
+ headers = T.cast(headers, T::Hash[String, String])
63
+ headers['Accept'] = 'application/json'
64
+ headers['user-agent'] = @sdk_configuration.user_agent
65
+ retries ||= @sdk_configuration.retry_config
66
+ retries ||= Utils::RetryConfig.new(
67
+ backoff: Utils::BackoffStrategy.new(
68
+ exponent: 1.5,
69
+ initial_interval: 500,
70
+ max_elapsed_time: 3_600_000,
71
+ max_interval: 60_000
72
+ ),
73
+ retry_connection_errors: true,
74
+ strategy: 'backoff'
75
+ )
76
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
77
+ retry_options[:retry_statuses] = [429, 408]
78
+
79
+ security = @sdk_configuration.security_source&.call
80
+
81
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
82
+ timeout ||= @sdk_configuration.timeout
83
+
84
+
85
+ connection = @sdk_configuration.client.dup
86
+ connection.request :retry, retry_options
87
+
88
+ hook_ctx = SDKHooks::HookContext.new(
89
+ config: @sdk_configuration,
90
+ base_url: base_url,
91
+ oauth2_scopes: nil,
92
+ operation_id: 'stackone_delete_connector_profile_pinned_version',
93
+ security_source: @sdk_configuration.security_source
94
+ )
95
+
96
+ error = T.let(nil, T.nilable(StandardError))
97
+ http_response = T.let(nil, T.nilable(Faraday::Response))
98
+
99
+
100
+ begin
101
+ http_response = T.must(connection).delete(url) do |req|
102
+ req.headers.merge!(headers)
103
+ req.options.timeout = timeout unless timeout.nil?
104
+ Utils.configure_request_security(req, security, %i[password])
105
+ http_headers&.each do |key, value|
106
+ req.headers[key.to_s] = value
107
+ end
108
+
109
+ @sdk_configuration.hooks.before_request(
110
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
111
+ hook_ctx: hook_ctx
112
+ ),
113
+ request: req
114
+ )
115
+ end
116
+ rescue StandardError => e
117
+ error = e
118
+ ensure
119
+ if http_response.nil? || Utils.error_status?(http_response.status)
120
+ http_response = @sdk_configuration.hooks.after_error(
121
+ error: error,
122
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
123
+ hook_ctx: hook_ctx
124
+ ),
125
+ response: http_response
126
+ )
127
+ else
128
+ http_response = @sdk_configuration.hooks.after_success(
129
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
130
+ hook_ctx: hook_ctx
131
+ ),
132
+ response: http_response
133
+ )
134
+ end
135
+
136
+ if http_response.nil?
137
+ raise error if !error.nil?
138
+ raise 'no response'
139
+ end
140
+ end
141
+
142
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
143
+ if Utils.match_status_code(http_response.status, ['204'])
144
+ http_response = @sdk_configuration.hooks.after_success(
145
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
146
+ hook_ctx: hook_ctx
147
+ ),
148
+ response: http_response
149
+ )
150
+ return Models::Operations::StackoneDeleteConnectorProfilePinnedVersionResponse.new(
151
+ status_code: http_response.status,
152
+ content_type: content_type,
153
+ raw_response: http_response,
154
+ headers: {}
155
+ )
156
+ elsif Utils.match_status_code(http_response.status, ['400'])
157
+ if Utils.match_content_type(content_type, 'application/json')
158
+ http_response = @sdk_configuration.hooks.after_success(
159
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
160
+ hook_ctx: hook_ctx
161
+ ),
162
+ response: http_response
163
+ )
164
+ response_data = http_response.env.response_body
165
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::BadRequestResponse)
166
+ raise obj
167
+ else
168
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
169
+ end
170
+ elsif Utils.match_status_code(http_response.status, ['401'])
171
+ if Utils.match_content_type(content_type, 'application/json')
172
+ http_response = @sdk_configuration.hooks.after_success(
173
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
174
+ hook_ctx: hook_ctx
175
+ ),
176
+ response: http_response
177
+ )
178
+ response_data = http_response.env.response_body
179
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedResponse)
180
+ raise obj
181
+ else
182
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
183
+ end
184
+ elsif Utils.match_status_code(http_response.status, ['403'])
185
+ if Utils.match_content_type(content_type, 'application/json')
186
+ http_response = @sdk_configuration.hooks.after_success(
187
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
188
+ hook_ctx: hook_ctx
189
+ ),
190
+ response: http_response
191
+ )
192
+ response_data = http_response.env.response_body
193
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ForbiddenResponse)
194
+ raise obj
195
+ else
196
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
197
+ end
198
+ elsif Utils.match_status_code(http_response.status, ['404'])
199
+ if Utils.match_content_type(content_type, 'application/json')
200
+ http_response = @sdk_configuration.hooks.after_success(
201
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
202
+ hook_ctx: hook_ctx
203
+ ),
204
+ response: http_response
205
+ )
206
+ response_data = http_response.env.response_body
207
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotFoundResponse)
208
+ raise obj
209
+ else
210
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
211
+ end
212
+ elsif Utils.match_status_code(http_response.status, ['408'])
213
+ if Utils.match_content_type(content_type, 'application/json')
214
+ http_response = @sdk_configuration.hooks.after_success(
215
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
216
+ hook_ctx: hook_ctx
217
+ ),
218
+ response: http_response
219
+ )
220
+ response_data = http_response.env.response_body
221
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::RequestTimedOutResponse)
222
+ raise obj
223
+ else
224
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
225
+ end
226
+ elsif Utils.match_status_code(http_response.status, ['409'])
227
+ if Utils.match_content_type(content_type, 'application/json')
228
+ http_response = @sdk_configuration.hooks.after_success(
229
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
230
+ hook_ctx: hook_ctx
231
+ ),
232
+ response: http_response
233
+ )
234
+ response_data = http_response.env.response_body
235
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ConflictResponse)
236
+ raise obj
237
+ else
238
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
239
+ end
240
+ elsif Utils.match_status_code(http_response.status, ['422'])
241
+ if Utils.match_content_type(content_type, 'application/json')
242
+ http_response = @sdk_configuration.hooks.after_success(
243
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
244
+ hook_ctx: hook_ctx
245
+ ),
246
+ response: http_response
247
+ )
248
+ response_data = http_response.env.response_body
249
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnprocessableEntityResponse)
250
+ raise obj
251
+ else
252
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
253
+ end
254
+ elsif Utils.match_status_code(http_response.status, ['429'])
255
+ if Utils.match_content_type(content_type, 'application/json')
256
+ http_response = @sdk_configuration.hooks.after_success(
257
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
258
+ hook_ctx: hook_ctx
259
+ ),
260
+ response: http_response
261
+ )
262
+ response_data = http_response.env.response_body
263
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::TooManyRequestsResponse)
264
+ raise obj
265
+ else
266
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
267
+ end
268
+ elsif Utils.match_status_code(http_response.status, ['500'])
269
+ if Utils.match_content_type(content_type, 'application/json')
270
+ http_response = @sdk_configuration.hooks.after_success(
271
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
272
+ hook_ctx: hook_ctx
273
+ ),
274
+ response: http_response
275
+ )
276
+ response_data = http_response.env.response_body
277
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InternalServerErrorResponse)
278
+ raise obj
279
+ else
280
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
281
+ end
282
+ elsif Utils.match_status_code(http_response.status, ['501'])
283
+ if Utils.match_content_type(content_type, 'application/json')
284
+ http_response = @sdk_configuration.hooks.after_success(
285
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
286
+ hook_ctx: hook_ctx
287
+ ),
288
+ response: http_response
289
+ )
290
+ response_data = http_response.env.response_body
291
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotImplementedResponse)
292
+ raise obj
293
+ else
294
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
295
+ end
296
+ elsif Utils.match_status_code(http_response.status, ['502'])
297
+ if Utils.match_content_type(content_type, 'application/json')
298
+ http_response = @sdk_configuration.hooks.after_success(
299
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
300
+ hook_ctx: hook_ctx
301
+ ),
302
+ response: http_response
303
+ )
304
+ response_data = http_response.env.response_body
305
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::BadGatewayResponse)
306
+ raise obj
307
+ else
308
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
309
+ end
310
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
311
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
312
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
313
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
314
+ else
315
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
316
+
317
+ end
318
+ end
319
+
320
+
321
+ sig { params(connector_profile_id: ::String, retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::StackoneGetConnectorProfilePinnedVersionResponse) }
322
+ def get_connector_profile_pinned_version(connector_profile_id:, retries: nil, timeout_ms: nil, http_headers: nil)
323
+ # get_connector_profile_pinned_version - Get Connector Profile Pinned Version
324
+ # Get the pinned connector version for the given connector profile.
325
+ #
326
+ # If set, this operation will use `password` from the global security.
327
+ request = Models::Operations::StackoneGetConnectorProfilePinnedVersionRequest.new(
328
+ connector_profile_id: connector_profile_id
329
+ )
330
+ url, params = @sdk_configuration.get_server_details
331
+ base_url = Utils.template_url(url, params)
332
+ url = Utils.generate_url(
333
+ Models::Operations::StackoneGetConnectorProfilePinnedVersionRequest,
334
+ base_url,
335
+ '/connector_profiles/{connectorProfileId}/pinned_version',
336
+ request
337
+ )
338
+ headers = {}
339
+ headers = T.cast(headers, T::Hash[String, String])
340
+ headers['Accept'] = 'application/json'
341
+ headers['user-agent'] = @sdk_configuration.user_agent
342
+ retries ||= @sdk_configuration.retry_config
343
+ retries ||= Utils::RetryConfig.new(
344
+ backoff: Utils::BackoffStrategy.new(
345
+ exponent: 1.5,
346
+ initial_interval: 500,
347
+ max_elapsed_time: 3_600_000,
348
+ max_interval: 60_000
349
+ ),
350
+ retry_connection_errors: true,
351
+ strategy: 'backoff'
352
+ )
353
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
354
+ retry_options[:retry_statuses] = [429, 408]
355
+
356
+ security = @sdk_configuration.security_source&.call
357
+
358
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
359
+ timeout ||= @sdk_configuration.timeout
360
+
361
+
362
+ connection = @sdk_configuration.client.dup
363
+ connection.request :retry, retry_options
364
+
365
+ hook_ctx = SDKHooks::HookContext.new(
366
+ config: @sdk_configuration,
367
+ base_url: base_url,
368
+ oauth2_scopes: nil,
369
+ operation_id: 'stackone_get_connector_profile_pinned_version',
370
+ security_source: @sdk_configuration.security_source
371
+ )
372
+
373
+ error = T.let(nil, T.nilable(StandardError))
374
+ http_response = T.let(nil, T.nilable(Faraday::Response))
375
+
376
+
377
+ begin
378
+ http_response = T.must(connection).get(url) do |req|
379
+ req.headers.merge!(headers)
380
+ req.options.timeout = timeout unless timeout.nil?
381
+ Utils.configure_request_security(req, security, %i[password])
382
+ http_headers&.each do |key, value|
383
+ req.headers[key.to_s] = value
384
+ end
385
+
386
+ @sdk_configuration.hooks.before_request(
387
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
388
+ hook_ctx: hook_ctx
389
+ ),
390
+ request: req
391
+ )
392
+ end
393
+ rescue StandardError => e
394
+ error = e
395
+ ensure
396
+ if http_response.nil? || Utils.error_status?(http_response.status)
397
+ http_response = @sdk_configuration.hooks.after_error(
398
+ error: error,
399
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
400
+ hook_ctx: hook_ctx
401
+ ),
402
+ response: http_response
403
+ )
404
+ else
405
+ http_response = @sdk_configuration.hooks.after_success(
406
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
407
+ hook_ctx: hook_ctx
408
+ ),
409
+ response: http_response
410
+ )
411
+ end
412
+
413
+ if http_response.nil?
414
+ raise error if !error.nil?
415
+ raise 'no response'
416
+ end
417
+ end
418
+
419
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
420
+ if Utils.match_status_code(http_response.status, ['200'])
421
+ if Utils.match_content_type(content_type, 'application/json')
422
+ http_response = @sdk_configuration.hooks.after_success(
423
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
424
+ hook_ctx: hook_ctx
425
+ ),
426
+ response: http_response
427
+ )
428
+ response_data = http_response.env.response_body
429
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Shared::ConnectorProfilePinnedVersion)
430
+ response = Models::Operations::StackoneGetConnectorProfilePinnedVersionResponse.new(
431
+ status_code: http_response.status,
432
+ content_type: content_type,
433
+ raw_response: http_response,
434
+ headers: {},
435
+ connector_profile_pinned_version: T.unsafe(obj)
436
+ )
437
+
438
+ return response
439
+ else
440
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
441
+ end
442
+ elsif Utils.match_status_code(http_response.status, ['400'])
443
+ if Utils.match_content_type(content_type, 'application/json')
444
+ http_response = @sdk_configuration.hooks.after_success(
445
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
446
+ hook_ctx: hook_ctx
447
+ ),
448
+ response: http_response
449
+ )
450
+ response_data = http_response.env.response_body
451
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::BadRequestResponse)
452
+ raise obj
453
+ else
454
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
455
+ end
456
+ elsif Utils.match_status_code(http_response.status, ['401'])
457
+ if Utils.match_content_type(content_type, 'application/json')
458
+ http_response = @sdk_configuration.hooks.after_success(
459
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
460
+ hook_ctx: hook_ctx
461
+ ),
462
+ response: http_response
463
+ )
464
+ response_data = http_response.env.response_body
465
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedResponse)
466
+ raise obj
467
+ else
468
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
469
+ end
470
+ elsif Utils.match_status_code(http_response.status, ['403'])
471
+ if Utils.match_content_type(content_type, 'application/json')
472
+ http_response = @sdk_configuration.hooks.after_success(
473
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
474
+ hook_ctx: hook_ctx
475
+ ),
476
+ response: http_response
477
+ )
478
+ response_data = http_response.env.response_body
479
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ForbiddenResponse)
480
+ raise obj
481
+ else
482
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
483
+ end
484
+ elsif Utils.match_status_code(http_response.status, ['404'])
485
+ if Utils.match_content_type(content_type, 'application/json')
486
+ http_response = @sdk_configuration.hooks.after_success(
487
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
488
+ hook_ctx: hook_ctx
489
+ ),
490
+ response: http_response
491
+ )
492
+ response_data = http_response.env.response_body
493
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotFoundResponse)
494
+ raise obj
495
+ else
496
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
497
+ end
498
+ elsif Utils.match_status_code(http_response.status, ['408'])
499
+ if Utils.match_content_type(content_type, 'application/json')
500
+ http_response = @sdk_configuration.hooks.after_success(
501
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
502
+ hook_ctx: hook_ctx
503
+ ),
504
+ response: http_response
505
+ )
506
+ response_data = http_response.env.response_body
507
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::RequestTimedOutResponse)
508
+ raise obj
509
+ else
510
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
511
+ end
512
+ elsif Utils.match_status_code(http_response.status, ['409'])
513
+ if Utils.match_content_type(content_type, 'application/json')
514
+ http_response = @sdk_configuration.hooks.after_success(
515
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
516
+ hook_ctx: hook_ctx
517
+ ),
518
+ response: http_response
519
+ )
520
+ response_data = http_response.env.response_body
521
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ConflictResponse)
522
+ raise obj
523
+ else
524
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
525
+ end
526
+ elsif Utils.match_status_code(http_response.status, ['422'])
527
+ if Utils.match_content_type(content_type, 'application/json')
528
+ http_response = @sdk_configuration.hooks.after_success(
529
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
530
+ hook_ctx: hook_ctx
531
+ ),
532
+ response: http_response
533
+ )
534
+ response_data = http_response.env.response_body
535
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnprocessableEntityResponse)
536
+ raise obj
537
+ else
538
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
539
+ end
540
+ elsif Utils.match_status_code(http_response.status, ['429'])
541
+ if Utils.match_content_type(content_type, 'application/json')
542
+ http_response = @sdk_configuration.hooks.after_success(
543
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
544
+ hook_ctx: hook_ctx
545
+ ),
546
+ response: http_response
547
+ )
548
+ response_data = http_response.env.response_body
549
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::TooManyRequestsResponse)
550
+ raise obj
551
+ else
552
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
553
+ end
554
+ elsif Utils.match_status_code(http_response.status, ['500'])
555
+ if Utils.match_content_type(content_type, 'application/json')
556
+ http_response = @sdk_configuration.hooks.after_success(
557
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
558
+ hook_ctx: hook_ctx
559
+ ),
560
+ response: http_response
561
+ )
562
+ response_data = http_response.env.response_body
563
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InternalServerErrorResponse)
564
+ raise obj
565
+ else
566
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
567
+ end
568
+ elsif Utils.match_status_code(http_response.status, ['501'])
569
+ if Utils.match_content_type(content_type, 'application/json')
570
+ http_response = @sdk_configuration.hooks.after_success(
571
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
572
+ hook_ctx: hook_ctx
573
+ ),
574
+ response: http_response
575
+ )
576
+ response_data = http_response.env.response_body
577
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotImplementedResponse)
578
+ raise obj
579
+ else
580
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
581
+ end
582
+ elsif Utils.match_status_code(http_response.status, ['502'])
583
+ if Utils.match_content_type(content_type, 'application/json')
584
+ http_response = @sdk_configuration.hooks.after_success(
585
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
586
+ hook_ctx: hook_ctx
587
+ ),
588
+ response: http_response
589
+ )
590
+ response_data = http_response.env.response_body
591
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::BadGatewayResponse)
592
+ raise obj
593
+ else
594
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
595
+ end
596
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
597
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
598
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
599
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
600
+ else
601
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
602
+
603
+ end
604
+ end
605
+
606
+
607
+ sig { params(connector_profile_id: ::String, retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::StackoneListConnectorProfileVersionsResponse) }
608
+ def list_connector_profile_versions(connector_profile_id:, retries: nil, timeout_ms: nil, http_headers: nil)
609
+ # list_connector_profile_versions - List Connector Profile Versions
610
+ # List the connector versions available for the given connector profile, indicating which one is currently pinned.
611
+ #
612
+ # If set, this operation will use `password` from the global security.
613
+ request = Models::Operations::StackoneListConnectorProfileVersionsRequest.new(
614
+ connector_profile_id: connector_profile_id
615
+ )
616
+ url, params = @sdk_configuration.get_server_details
617
+ base_url = Utils.template_url(url, params)
618
+ url = Utils.generate_url(
619
+ Models::Operations::StackoneListConnectorProfileVersionsRequest,
620
+ base_url,
621
+ '/connector_profiles/{connectorProfileId}/versions',
622
+ request
623
+ )
624
+ headers = {}
625
+ headers = T.cast(headers, T::Hash[String, String])
626
+ headers['Accept'] = 'application/json'
627
+ headers['user-agent'] = @sdk_configuration.user_agent
628
+ retries ||= @sdk_configuration.retry_config
629
+ retries ||= Utils::RetryConfig.new(
630
+ backoff: Utils::BackoffStrategy.new(
631
+ exponent: 1.5,
632
+ initial_interval: 500,
633
+ max_elapsed_time: 3_600_000,
634
+ max_interval: 60_000
635
+ ),
636
+ retry_connection_errors: true,
637
+ strategy: 'backoff'
638
+ )
639
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
640
+ retry_options[:retry_statuses] = [429, 408]
641
+
642
+ security = @sdk_configuration.security_source&.call
643
+
644
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
645
+ timeout ||= @sdk_configuration.timeout
646
+
647
+
648
+ connection = @sdk_configuration.client.dup
649
+ connection.request :retry, retry_options
650
+
651
+ hook_ctx = SDKHooks::HookContext.new(
652
+ config: @sdk_configuration,
653
+ base_url: base_url,
654
+ oauth2_scopes: nil,
655
+ operation_id: 'stackone_list_connector_profile_versions',
656
+ security_source: @sdk_configuration.security_source
657
+ )
658
+
659
+ error = T.let(nil, T.nilable(StandardError))
660
+ http_response = T.let(nil, T.nilable(Faraday::Response))
661
+
662
+
663
+ begin
664
+ http_response = T.must(connection).get(url) do |req|
665
+ req.headers.merge!(headers)
666
+ req.options.timeout = timeout unless timeout.nil?
667
+ Utils.configure_request_security(req, security, %i[password])
668
+ http_headers&.each do |key, value|
669
+ req.headers[key.to_s] = value
670
+ end
671
+
672
+ @sdk_configuration.hooks.before_request(
673
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
674
+ hook_ctx: hook_ctx
675
+ ),
676
+ request: req
677
+ )
678
+ end
679
+ rescue StandardError => e
680
+ error = e
681
+ ensure
682
+ if http_response.nil? || Utils.error_status?(http_response.status)
683
+ http_response = @sdk_configuration.hooks.after_error(
684
+ error: error,
685
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
686
+ hook_ctx: hook_ctx
687
+ ),
688
+ response: http_response
689
+ )
690
+ else
691
+ http_response = @sdk_configuration.hooks.after_success(
692
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
693
+ hook_ctx: hook_ctx
694
+ ),
695
+ response: http_response
696
+ )
697
+ end
698
+
699
+ if http_response.nil?
700
+ raise error if !error.nil?
701
+ raise 'no response'
702
+ end
703
+ end
704
+
705
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
706
+ if Utils.match_status_code(http_response.status, ['200'])
707
+ if Utils.match_content_type(content_type, 'application/json')
708
+ http_response = @sdk_configuration.hooks.after_success(
709
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
710
+ hook_ctx: hook_ctx
711
+ ),
712
+ response: http_response
713
+ )
714
+ response_data = http_response.env.response_body
715
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Crystalline::Array.new(Models::Shared::ConnectorProfileVersion))
716
+ response = Models::Operations::StackoneListConnectorProfileVersionsResponse.new(
717
+ status_code: http_response.status,
718
+ content_type: content_type,
719
+ raw_response: http_response,
720
+ headers: {},
721
+ connector_profile_versions: T.unsafe(obj)
722
+ )
723
+
724
+ return response
725
+ else
726
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
727
+ end
728
+ elsif Utils.match_status_code(http_response.status, ['400'])
729
+ if Utils.match_content_type(content_type, 'application/json')
730
+ http_response = @sdk_configuration.hooks.after_success(
731
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
732
+ hook_ctx: hook_ctx
733
+ ),
734
+ response: http_response
735
+ )
736
+ response_data = http_response.env.response_body
737
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::BadRequestResponse)
738
+ raise obj
739
+ else
740
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
741
+ end
742
+ elsif Utils.match_status_code(http_response.status, ['401'])
743
+ if Utils.match_content_type(content_type, 'application/json')
744
+ http_response = @sdk_configuration.hooks.after_success(
745
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
746
+ hook_ctx: hook_ctx
747
+ ),
748
+ response: http_response
749
+ )
750
+ response_data = http_response.env.response_body
751
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedResponse)
752
+ raise obj
753
+ else
754
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
755
+ end
756
+ elsif Utils.match_status_code(http_response.status, ['403'])
757
+ if Utils.match_content_type(content_type, 'application/json')
758
+ http_response = @sdk_configuration.hooks.after_success(
759
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
760
+ hook_ctx: hook_ctx
761
+ ),
762
+ response: http_response
763
+ )
764
+ response_data = http_response.env.response_body
765
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ForbiddenResponse)
766
+ raise obj
767
+ else
768
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
769
+ end
770
+ elsif Utils.match_status_code(http_response.status, ['404'])
771
+ if Utils.match_content_type(content_type, 'application/json')
772
+ http_response = @sdk_configuration.hooks.after_success(
773
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
774
+ hook_ctx: hook_ctx
775
+ ),
776
+ response: http_response
777
+ )
778
+ response_data = http_response.env.response_body
779
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotFoundResponse)
780
+ raise obj
781
+ else
782
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
783
+ end
784
+ elsif Utils.match_status_code(http_response.status, ['408'])
785
+ if Utils.match_content_type(content_type, 'application/json')
786
+ http_response = @sdk_configuration.hooks.after_success(
787
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
788
+ hook_ctx: hook_ctx
789
+ ),
790
+ response: http_response
791
+ )
792
+ response_data = http_response.env.response_body
793
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::RequestTimedOutResponse)
794
+ raise obj
795
+ else
796
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
797
+ end
798
+ elsif Utils.match_status_code(http_response.status, ['409'])
799
+ if Utils.match_content_type(content_type, 'application/json')
800
+ http_response = @sdk_configuration.hooks.after_success(
801
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
802
+ hook_ctx: hook_ctx
803
+ ),
804
+ response: http_response
805
+ )
806
+ response_data = http_response.env.response_body
807
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ConflictResponse)
808
+ raise obj
809
+ else
810
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
811
+ end
812
+ elsif Utils.match_status_code(http_response.status, ['422'])
813
+ if Utils.match_content_type(content_type, 'application/json')
814
+ http_response = @sdk_configuration.hooks.after_success(
815
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
816
+ hook_ctx: hook_ctx
817
+ ),
818
+ response: http_response
819
+ )
820
+ response_data = http_response.env.response_body
821
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnprocessableEntityResponse)
822
+ raise obj
823
+ else
824
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
825
+ end
826
+ elsif Utils.match_status_code(http_response.status, ['429'])
827
+ if Utils.match_content_type(content_type, 'application/json')
828
+ http_response = @sdk_configuration.hooks.after_success(
829
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
830
+ hook_ctx: hook_ctx
831
+ ),
832
+ response: http_response
833
+ )
834
+ response_data = http_response.env.response_body
835
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::TooManyRequestsResponse)
836
+ raise obj
837
+ else
838
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
839
+ end
840
+ elsif Utils.match_status_code(http_response.status, ['500'])
841
+ if Utils.match_content_type(content_type, 'application/json')
842
+ http_response = @sdk_configuration.hooks.after_success(
843
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
844
+ hook_ctx: hook_ctx
845
+ ),
846
+ response: http_response
847
+ )
848
+ response_data = http_response.env.response_body
849
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InternalServerErrorResponse)
850
+ raise obj
851
+ else
852
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
853
+ end
854
+ elsif Utils.match_status_code(http_response.status, ['501'])
855
+ if Utils.match_content_type(content_type, 'application/json')
856
+ http_response = @sdk_configuration.hooks.after_success(
857
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
858
+ hook_ctx: hook_ctx
859
+ ),
860
+ response: http_response
861
+ )
862
+ response_data = http_response.env.response_body
863
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotImplementedResponse)
864
+ raise obj
865
+ else
866
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
867
+ end
868
+ elsif Utils.match_status_code(http_response.status, ['502'])
869
+ if Utils.match_content_type(content_type, 'application/json')
870
+ http_response = @sdk_configuration.hooks.after_success(
871
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
872
+ hook_ctx: hook_ctx
873
+ ),
874
+ response: http_response
875
+ )
876
+ response_data = http_response.env.response_body
877
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::BadGatewayResponse)
878
+ raise obj
879
+ else
880
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
881
+ end
882
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
883
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
884
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
885
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
886
+ else
887
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
888
+
889
+ end
890
+ end
891
+
892
+
893
+ sig { params(connector_key: T.nilable(::String), enabled: T.nilable(T::Boolean), page: T.nilable(::Float), page_size: T.nilable(::Float), retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::StackoneListConnectorProfilesResponse) }
894
+ def list_connector_profiles(connector_key: nil, enabled: nil, page: nil, page_size: nil, retries: nil, timeout_ms: nil, http_headers: nil)
895
+ # list_connector_profiles - List Connector Profiles
896
+ # List the connector profiles available to the project.
897
+ #
898
+ # If set, this operation will use `password` from the global security.
899
+ request = Models::Operations::StackoneListConnectorProfilesRequest.new(
900
+ connector_key: connector_key,
901
+ enabled: enabled,
902
+ page: page,
903
+ page_size: page_size
904
+ )
905
+ url, params = @sdk_configuration.get_server_details
906
+ base_url = Utils.template_url(url, params)
907
+ url = "#{base_url}/connector_profiles"
908
+ headers = {}
909
+ headers = T.cast(headers, T::Hash[String, String])
910
+ query_params = Utils.get_query_params(Models::Operations::StackoneListConnectorProfilesRequest, request, nil)
911
+ headers['Accept'] = 'application/json'
912
+ headers['user-agent'] = @sdk_configuration.user_agent
913
+ retries ||= @sdk_configuration.retry_config
914
+ retries ||= Utils::RetryConfig.new(
915
+ backoff: Utils::BackoffStrategy.new(
916
+ exponent: 1.5,
917
+ initial_interval: 500,
918
+ max_elapsed_time: 3_600_000,
919
+ max_interval: 60_000
920
+ ),
921
+ retry_connection_errors: true,
922
+ strategy: 'backoff'
923
+ )
924
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
925
+ retry_options[:retry_statuses] = [429, 408]
926
+
927
+ security = @sdk_configuration.security_source&.call
928
+
929
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
930
+ timeout ||= @sdk_configuration.timeout
931
+
932
+
933
+ connection = @sdk_configuration.client.dup
934
+ connection.request :retry, retry_options
935
+
936
+ hook_ctx = SDKHooks::HookContext.new(
937
+ config: @sdk_configuration,
938
+ base_url: base_url,
939
+ oauth2_scopes: nil,
940
+ operation_id: 'stackone_list_connector_profiles',
941
+ security_source: @sdk_configuration.security_source
942
+ )
943
+
944
+ error = T.let(nil, T.nilable(StandardError))
945
+ http_response = T.let(nil, T.nilable(Faraday::Response))
946
+
947
+
948
+ begin
949
+ http_response = T.must(connection).get(url) do |req|
950
+ req.headers.merge!(headers)
951
+ req.options.timeout = timeout unless timeout.nil?
952
+ req.params = query_params
953
+ Utils.configure_request_security(req, security, %i[password])
954
+ http_headers&.each do |key, value|
955
+ req.headers[key.to_s] = value
956
+ end
957
+
958
+ @sdk_configuration.hooks.before_request(
959
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
960
+ hook_ctx: hook_ctx
961
+ ),
962
+ request: req
963
+ )
964
+ end
965
+ rescue StandardError => e
966
+ error = e
967
+ ensure
968
+ if http_response.nil? || Utils.error_status?(http_response.status)
969
+ http_response = @sdk_configuration.hooks.after_error(
970
+ error: error,
971
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
972
+ hook_ctx: hook_ctx
973
+ ),
974
+ response: http_response
975
+ )
976
+ else
977
+ http_response = @sdk_configuration.hooks.after_success(
978
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
979
+ hook_ctx: hook_ctx
980
+ ),
981
+ response: http_response
982
+ )
983
+ end
984
+
985
+ if http_response.nil?
986
+ raise error if !error.nil?
987
+ raise 'no response'
988
+ end
989
+ end
990
+
991
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
992
+ if Utils.match_status_code(http_response.status, ['200'])
993
+ if Utils.match_content_type(content_type, 'application/json')
994
+ http_response = @sdk_configuration.hooks.after_success(
995
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
996
+ hook_ctx: hook_ctx
997
+ ),
998
+ response: http_response
999
+ )
1000
+ response_data = http_response.env.response_body
1001
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Shared::ConnectorProfilesPaginated)
1002
+ response = Models::Operations::StackoneListConnectorProfilesResponse.new(
1003
+ status_code: http_response.status,
1004
+ content_type: content_type,
1005
+ raw_response: http_response,
1006
+ headers: {},
1007
+ connector_profiles_paginated: T.unsafe(obj)
1008
+ )
1009
+
1010
+ return response
1011
+ else
1012
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1013
+ end
1014
+ elsif Utils.match_status_code(http_response.status, ['400'])
1015
+ if Utils.match_content_type(content_type, 'application/json')
1016
+ http_response = @sdk_configuration.hooks.after_success(
1017
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1018
+ hook_ctx: hook_ctx
1019
+ ),
1020
+ response: http_response
1021
+ )
1022
+ response_data = http_response.env.response_body
1023
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::BadRequestResponse)
1024
+ raise obj
1025
+ else
1026
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1027
+ end
1028
+ elsif Utils.match_status_code(http_response.status, ['401'])
1029
+ if Utils.match_content_type(content_type, 'application/json')
1030
+ http_response = @sdk_configuration.hooks.after_success(
1031
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1032
+ hook_ctx: hook_ctx
1033
+ ),
1034
+ response: http_response
1035
+ )
1036
+ response_data = http_response.env.response_body
1037
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedResponse)
1038
+ raise obj
1039
+ else
1040
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1041
+ end
1042
+ elsif Utils.match_status_code(http_response.status, ['403'])
1043
+ if Utils.match_content_type(content_type, 'application/json')
1044
+ http_response = @sdk_configuration.hooks.after_success(
1045
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1046
+ hook_ctx: hook_ctx
1047
+ ),
1048
+ response: http_response
1049
+ )
1050
+ response_data = http_response.env.response_body
1051
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ForbiddenResponse)
1052
+ raise obj
1053
+ else
1054
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1055
+ end
1056
+ elsif Utils.match_status_code(http_response.status, ['404'])
1057
+ if Utils.match_content_type(content_type, 'application/json')
1058
+ http_response = @sdk_configuration.hooks.after_success(
1059
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1060
+ hook_ctx: hook_ctx
1061
+ ),
1062
+ response: http_response
1063
+ )
1064
+ response_data = http_response.env.response_body
1065
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotFoundResponse)
1066
+ raise obj
1067
+ else
1068
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1069
+ end
1070
+ elsif Utils.match_status_code(http_response.status, ['408'])
1071
+ if Utils.match_content_type(content_type, 'application/json')
1072
+ http_response = @sdk_configuration.hooks.after_success(
1073
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1074
+ hook_ctx: hook_ctx
1075
+ ),
1076
+ response: http_response
1077
+ )
1078
+ response_data = http_response.env.response_body
1079
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::RequestTimedOutResponse)
1080
+ raise obj
1081
+ else
1082
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1083
+ end
1084
+ elsif Utils.match_status_code(http_response.status, ['409'])
1085
+ if Utils.match_content_type(content_type, 'application/json')
1086
+ http_response = @sdk_configuration.hooks.after_success(
1087
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1088
+ hook_ctx: hook_ctx
1089
+ ),
1090
+ response: http_response
1091
+ )
1092
+ response_data = http_response.env.response_body
1093
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ConflictResponse)
1094
+ raise obj
1095
+ else
1096
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1097
+ end
1098
+ elsif Utils.match_status_code(http_response.status, ['422'])
1099
+ if Utils.match_content_type(content_type, 'application/json')
1100
+ http_response = @sdk_configuration.hooks.after_success(
1101
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1102
+ hook_ctx: hook_ctx
1103
+ ),
1104
+ response: http_response
1105
+ )
1106
+ response_data = http_response.env.response_body
1107
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnprocessableEntityResponse)
1108
+ raise obj
1109
+ else
1110
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1111
+ end
1112
+ elsif Utils.match_status_code(http_response.status, ['429'])
1113
+ if Utils.match_content_type(content_type, 'application/json')
1114
+ http_response = @sdk_configuration.hooks.after_success(
1115
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1116
+ hook_ctx: hook_ctx
1117
+ ),
1118
+ response: http_response
1119
+ )
1120
+ response_data = http_response.env.response_body
1121
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::TooManyRequestsResponse)
1122
+ raise obj
1123
+ else
1124
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1125
+ end
1126
+ elsif Utils.match_status_code(http_response.status, ['500'])
1127
+ if Utils.match_content_type(content_type, 'application/json')
1128
+ http_response = @sdk_configuration.hooks.after_success(
1129
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1130
+ hook_ctx: hook_ctx
1131
+ ),
1132
+ response: http_response
1133
+ )
1134
+ response_data = http_response.env.response_body
1135
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InternalServerErrorResponse)
1136
+ raise obj
1137
+ else
1138
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1139
+ end
1140
+ elsif Utils.match_status_code(http_response.status, ['501'])
1141
+ if Utils.match_content_type(content_type, 'application/json')
1142
+ http_response = @sdk_configuration.hooks.after_success(
1143
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1144
+ hook_ctx: hook_ctx
1145
+ ),
1146
+ response: http_response
1147
+ )
1148
+ response_data = http_response.env.response_body
1149
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotImplementedResponse)
1150
+ raise obj
1151
+ else
1152
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1153
+ end
1154
+ elsif Utils.match_status_code(http_response.status, ['502'])
1155
+ if Utils.match_content_type(content_type, 'application/json')
1156
+ http_response = @sdk_configuration.hooks.after_success(
1157
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1158
+ hook_ctx: hook_ctx
1159
+ ),
1160
+ response: http_response
1161
+ )
1162
+ response_data = http_response.env.response_body
1163
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::BadGatewayResponse)
1164
+ raise obj
1165
+ else
1166
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1167
+ end
1168
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
1169
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
1170
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
1171
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
1172
+ else
1173
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
1174
+
1175
+ end
1176
+ end
1177
+
1178
+
1179
+ sig { params(upsert_connector_profile_pinned_version: Models::Shared::UpsertConnectorProfilePinnedVersion, connector_profile_id: ::String, retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::StackoneUpsertConnectorProfilePinnedVersionResponse) }
1180
+ def upsert_connector_profile_pinned_version(upsert_connector_profile_pinned_version:, connector_profile_id:, retries: nil, timeout_ms: nil, http_headers: nil)
1181
+ # upsert_connector_profile_pinned_version - Upsert Connector Profile Pinned Version
1182
+ # Create or update the pinned connector version for the given connector profile.
1183
+ #
1184
+ # If set, this operation will use `password` from the global security.
1185
+ request = Models::Operations::StackoneUpsertConnectorProfilePinnedVersionRequest.new(
1186
+ upsert_connector_profile_pinned_version: upsert_connector_profile_pinned_version,
1187
+ connector_profile_id: connector_profile_id
1188
+ )
1189
+ url, params = @sdk_configuration.get_server_details
1190
+ base_url = Utils.template_url(url, params)
1191
+ url = Utils.generate_url(
1192
+ Models::Operations::StackoneUpsertConnectorProfilePinnedVersionRequest,
1193
+ base_url,
1194
+ '/connector_profiles/{connectorProfileId}/pinned_version',
1195
+ request
1196
+ )
1197
+ headers = {}
1198
+ headers = T.cast(headers, T::Hash[String, String])
1199
+ req_content_type, data, form = Utils.serialize_request_body(request, false, false, :upsert_connector_profile_pinned_version, :json)
1200
+ headers['content-type'] = req_content_type
1201
+ raise StandardError, 'request body is required' if data.nil? && form.nil?
1202
+
1203
+ if form && !form.empty?
1204
+ body = Utils.encode_form(form)
1205
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
1206
+ body = URI.encode_www_form(T.cast(data, T::Hash[Symbol, Object]))
1207
+ else
1208
+ body = data
1209
+ end
1210
+ headers['Accept'] = 'application/json'
1211
+ headers['user-agent'] = @sdk_configuration.user_agent
1212
+ retries ||= @sdk_configuration.retry_config
1213
+ retries ||= Utils::RetryConfig.new(
1214
+ backoff: Utils::BackoffStrategy.new(
1215
+ exponent: 1.5,
1216
+ initial_interval: 500,
1217
+ max_elapsed_time: 3_600_000,
1218
+ max_interval: 60_000
1219
+ ),
1220
+ retry_connection_errors: true,
1221
+ strategy: 'backoff'
1222
+ )
1223
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1224
+ retry_options[:retry_statuses] = [429, 408]
1225
+
1226
+ security = @sdk_configuration.security_source&.call
1227
+
1228
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
1229
+ timeout ||= @sdk_configuration.timeout
1230
+
1231
+
1232
+ connection = @sdk_configuration.client.dup
1233
+ connection.request :retry, retry_options
1234
+
1235
+ hook_ctx = SDKHooks::HookContext.new(
1236
+ config: @sdk_configuration,
1237
+ base_url: base_url,
1238
+ oauth2_scopes: nil,
1239
+ operation_id: 'stackone_upsert_connector_profile_pinned_version',
1240
+ security_source: @sdk_configuration.security_source
1241
+ )
1242
+
1243
+ error = T.let(nil, T.nilable(StandardError))
1244
+ http_response = T.let(nil, T.nilable(Faraday::Response))
1245
+
1246
+
1247
+ begin
1248
+ http_response = T.must(connection).put(url) do |req|
1249
+ req.body = body
1250
+ req.headers.merge!(headers)
1251
+ req.options.timeout = timeout unless timeout.nil?
1252
+ Utils.configure_request_security(req, security, %i[password])
1253
+ http_headers&.each do |key, value|
1254
+ req.headers[key.to_s] = value
1255
+ end
1256
+
1257
+ @sdk_configuration.hooks.before_request(
1258
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
1259
+ hook_ctx: hook_ctx
1260
+ ),
1261
+ request: req
1262
+ )
1263
+ end
1264
+ rescue StandardError => e
1265
+ error = e
1266
+ ensure
1267
+ if http_response.nil? || Utils.error_status?(http_response.status)
1268
+ http_response = @sdk_configuration.hooks.after_error(
1269
+ error: error,
1270
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
1271
+ hook_ctx: hook_ctx
1272
+ ),
1273
+ response: http_response
1274
+ )
1275
+ else
1276
+ http_response = @sdk_configuration.hooks.after_success(
1277
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1278
+ hook_ctx: hook_ctx
1279
+ ),
1280
+ response: http_response
1281
+ )
1282
+ end
1283
+
1284
+ if http_response.nil?
1285
+ raise error if !error.nil?
1286
+ raise 'no response'
1287
+ end
1288
+ end
1289
+
1290
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
1291
+ if Utils.match_status_code(http_response.status, ['200'])
1292
+ if Utils.match_content_type(content_type, 'application/json')
1293
+ http_response = @sdk_configuration.hooks.after_success(
1294
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1295
+ hook_ctx: hook_ctx
1296
+ ),
1297
+ response: http_response
1298
+ )
1299
+ response_data = http_response.env.response_body
1300
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Shared::ConnectorProfilePinnedVersion)
1301
+ response = Models::Operations::StackoneUpsertConnectorProfilePinnedVersionResponse.new(
1302
+ status_code: http_response.status,
1303
+ content_type: content_type,
1304
+ raw_response: http_response,
1305
+ headers: {},
1306
+ connector_profile_pinned_version: T.unsafe(obj)
1307
+ )
1308
+
1309
+ return response
1310
+ else
1311
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1312
+ end
1313
+ elsif Utils.match_status_code(http_response.status, ['400'])
1314
+ if Utils.match_content_type(content_type, 'application/json')
1315
+ http_response = @sdk_configuration.hooks.after_success(
1316
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1317
+ hook_ctx: hook_ctx
1318
+ ),
1319
+ response: http_response
1320
+ )
1321
+ response_data = http_response.env.response_body
1322
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::BadRequestResponse)
1323
+ raise obj
1324
+ else
1325
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1326
+ end
1327
+ elsif Utils.match_status_code(http_response.status, ['401'])
1328
+ if Utils.match_content_type(content_type, 'application/json')
1329
+ http_response = @sdk_configuration.hooks.after_success(
1330
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1331
+ hook_ctx: hook_ctx
1332
+ ),
1333
+ response: http_response
1334
+ )
1335
+ response_data = http_response.env.response_body
1336
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedResponse)
1337
+ raise obj
1338
+ else
1339
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1340
+ end
1341
+ elsif Utils.match_status_code(http_response.status, ['403'])
1342
+ if Utils.match_content_type(content_type, 'application/json')
1343
+ http_response = @sdk_configuration.hooks.after_success(
1344
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1345
+ hook_ctx: hook_ctx
1346
+ ),
1347
+ response: http_response
1348
+ )
1349
+ response_data = http_response.env.response_body
1350
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ForbiddenResponse)
1351
+ raise obj
1352
+ else
1353
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1354
+ end
1355
+ elsif Utils.match_status_code(http_response.status, ['404'])
1356
+ if Utils.match_content_type(content_type, 'application/json')
1357
+ http_response = @sdk_configuration.hooks.after_success(
1358
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1359
+ hook_ctx: hook_ctx
1360
+ ),
1361
+ response: http_response
1362
+ )
1363
+ response_data = http_response.env.response_body
1364
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotFoundResponse)
1365
+ raise obj
1366
+ else
1367
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1368
+ end
1369
+ elsif Utils.match_status_code(http_response.status, ['408'])
1370
+ if Utils.match_content_type(content_type, 'application/json')
1371
+ http_response = @sdk_configuration.hooks.after_success(
1372
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1373
+ hook_ctx: hook_ctx
1374
+ ),
1375
+ response: http_response
1376
+ )
1377
+ response_data = http_response.env.response_body
1378
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::RequestTimedOutResponse)
1379
+ raise obj
1380
+ else
1381
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1382
+ end
1383
+ elsif Utils.match_status_code(http_response.status, ['409'])
1384
+ if Utils.match_content_type(content_type, 'application/json')
1385
+ http_response = @sdk_configuration.hooks.after_success(
1386
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1387
+ hook_ctx: hook_ctx
1388
+ ),
1389
+ response: http_response
1390
+ )
1391
+ response_data = http_response.env.response_body
1392
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ConflictResponse)
1393
+ raise obj
1394
+ else
1395
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1396
+ end
1397
+ elsif Utils.match_status_code(http_response.status, ['422'])
1398
+ if Utils.match_content_type(content_type, 'application/json')
1399
+ http_response = @sdk_configuration.hooks.after_success(
1400
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1401
+ hook_ctx: hook_ctx
1402
+ ),
1403
+ response: http_response
1404
+ )
1405
+ response_data = http_response.env.response_body
1406
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnprocessableEntityResponse)
1407
+ raise obj
1408
+ else
1409
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1410
+ end
1411
+ elsif Utils.match_status_code(http_response.status, ['429'])
1412
+ if Utils.match_content_type(content_type, 'application/json')
1413
+ http_response = @sdk_configuration.hooks.after_success(
1414
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1415
+ hook_ctx: hook_ctx
1416
+ ),
1417
+ response: http_response
1418
+ )
1419
+ response_data = http_response.env.response_body
1420
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::TooManyRequestsResponse)
1421
+ raise obj
1422
+ else
1423
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1424
+ end
1425
+ elsif Utils.match_status_code(http_response.status, ['500'])
1426
+ if Utils.match_content_type(content_type, 'application/json')
1427
+ http_response = @sdk_configuration.hooks.after_success(
1428
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1429
+ hook_ctx: hook_ctx
1430
+ ),
1431
+ response: http_response
1432
+ )
1433
+ response_data = http_response.env.response_body
1434
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InternalServerErrorResponse)
1435
+ raise obj
1436
+ else
1437
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1438
+ end
1439
+ elsif Utils.match_status_code(http_response.status, ['501'])
1440
+ if Utils.match_content_type(content_type, 'application/json')
1441
+ http_response = @sdk_configuration.hooks.after_success(
1442
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1443
+ hook_ctx: hook_ctx
1444
+ ),
1445
+ response: http_response
1446
+ )
1447
+ response_data = http_response.env.response_body
1448
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotImplementedResponse)
1449
+ raise obj
1450
+ else
1451
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1452
+ end
1453
+ elsif Utils.match_status_code(http_response.status, ['502'])
1454
+ if Utils.match_content_type(content_type, 'application/json')
1455
+ http_response = @sdk_configuration.hooks.after_success(
1456
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1457
+ hook_ctx: hook_ctx
1458
+ ),
1459
+ response: http_response
1460
+ )
1461
+ response_data = http_response.env.response_body
1462
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::BadGatewayResponse)
1463
+ raise obj
1464
+ else
1465
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1466
+ end
1467
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
1468
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
1469
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
1470
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
1471
+ else
1472
+ raise ::StackOne::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
1473
+
1474
+ end
1475
+ end
1476
+ end
1477
+ end