cloudinary-account-provisioning 0.1.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 (319) hide show
  1. checksums.yaml +7 -0
  2. data/lib/cld_provisioning/accesskeys.rb +927 -0
  3. data/lib/cld_provisioning/billingusage.rb +231 -0
  4. data/lib/cld_provisioning/cldprovisioning.rb +173 -0
  5. data/lib/cld_provisioning/custompolicies.rb +958 -0
  6. data/lib/cld_provisioning/effectivepolicies.rb +233 -0
  7. data/lib/cld_provisioning/models/callbacks.rb +13 -0
  8. data/lib/cld_provisioning/models/errors/apierror.rb +40 -0
  9. data/lib/cld_provisioning/models/errors/apierror.rbi +27 -0
  10. data/lib/cld_provisioning/models/errors/errorresponse.rb +35 -0
  11. data/lib/cld_provisioning/models/errors/errorresponse.rbi +14 -0
  12. data/lib/cld_provisioning/models/errors/permissionserrorresponse.rb +35 -0
  13. data/lib/cld_provisioning/models/errors/permissionserrorresponse.rbi +14 -0
  14. data/lib/cld_provisioning/models/errors.rb +15 -0
  15. data/lib/cld_provisioning/models/operations/addusertousergroup_request.rb +44 -0
  16. data/lib/cld_provisioning/models/operations/addusertousergroup_request.rbi +26 -0
  17. data/lib/cld_provisioning/models/operations/createcustompolicy_request.rb +40 -0
  18. data/lib/cld_provisioning/models/operations/createcustompolicy_request.rbi +20 -0
  19. data/lib/cld_provisioning/models/operations/createproductenvironment_request.rb +50 -0
  20. data/lib/cld_provisioning/models/operations/createproductenvironment_request.rbi +20 -0
  21. data/lib/cld_provisioning/models/operations/createrole_request.rb +40 -0
  22. data/lib/cld_provisioning/models/operations/createrole_request.rbi +20 -0
  23. data/lib/cld_provisioning/models/operations/createuser_request.rb +40 -0
  24. data/lib/cld_provisioning/models/operations/createuser_request.rbi +20 -0
  25. data/lib/cld_provisioning/models/operations/createuser_requestbody.rb +85 -0
  26. data/lib/cld_provisioning/models/operations/createuser_requestbody.rbi +38 -0
  27. data/lib/cld_provisioning/models/operations/createusergroup_request.rb +40 -0
  28. data/lib/cld_provisioning/models/operations/createusergroup_request.rbi +20 -0
  29. data/lib/cld_provisioning/models/operations/deleteaccesskey_request.rb +48 -0
  30. data/lib/cld_provisioning/models/operations/deleteaccesskey_request.rbi +26 -0
  31. data/lib/cld_provisioning/models/operations/deleteaccesskeybyname_request.rb +48 -0
  32. data/lib/cld_provisioning/models/operations/deleteaccesskeybyname_request.rbi +26 -0
  33. data/lib/cld_provisioning/models/operations/deletecustompolicy_request.rb +40 -0
  34. data/lib/cld_provisioning/models/operations/deletecustompolicy_request.rbi +20 -0
  35. data/lib/cld_provisioning/models/operations/deleteproductenvironment_request.rb +44 -0
  36. data/lib/cld_provisioning/models/operations/deleteproductenvironment_request.rbi +20 -0
  37. data/lib/cld_provisioning/models/operations/deleterole_request.rb +51 -0
  38. data/lib/cld_provisioning/models/operations/deleterole_request.rbi +26 -0
  39. data/lib/cld_provisioning/models/operations/deleteuser_request.rb +40 -0
  40. data/lib/cld_provisioning/models/operations/deleteuser_request.rbi +20 -0
  41. data/lib/cld_provisioning/models/operations/deleteusergroup_request.rb +40 -0
  42. data/lib/cld_provisioning/models/operations/deleteusergroup_request.rbi +20 -0
  43. data/lib/cld_provisioning/models/operations/generateaccesskey_request.rb +55 -0
  44. data/lib/cld_provisioning/models/operations/generateaccesskey_request.rbi +26 -0
  45. data/lib/cld_provisioning/models/operations/getaccesskeys_request.rb +89 -0
  46. data/lib/cld_provisioning/models/operations/getaccesskeys_request.rbi +44 -0
  47. data/lib/cld_provisioning/models/operations/getbillingusage_request.rb +60 -0
  48. data/lib/cld_provisioning/models/operations/getbillingusage_request.rbi +26 -0
  49. data/lib/cld_provisioning/models/operations/getcustompolicies_request.rb +79 -0
  50. data/lib/cld_provisioning/models/operations/getcustompolicies_request.rbi +38 -0
  51. data/lib/cld_provisioning/models/operations/getcustompolicy_request.rb +40 -0
  52. data/lib/cld_provisioning/models/operations/getcustompolicy_request.rbi +20 -0
  53. data/lib/cld_provisioning/models/operations/geteffectivepolicies_request.rb +85 -0
  54. data/lib/cld_provisioning/models/operations/geteffectivepolicies_request.rbi +38 -0
  55. data/lib/cld_provisioning/models/operations/getgroupsforuser_request.rb +40 -0
  56. data/lib/cld_provisioning/models/operations/getgroupsforuser_request.rbi +20 -0
  57. data/lib/cld_provisioning/models/operations/getprincipalroles_request.rb +161 -0
  58. data/lib/cld_provisioning/models/operations/getprincipalroles_request.rbi +80 -0
  59. data/lib/cld_provisioning/models/operations/getproductenvironment_request.rb +44 -0
  60. data/lib/cld_provisioning/models/operations/getproductenvironment_request.rbi +20 -0
  61. data/lib/cld_provisioning/models/operations/getproductenvironments_request.rb +79 -0
  62. data/lib/cld_provisioning/models/operations/getproductenvironments_request.rbi +38 -0
  63. data/lib/cld_provisioning/models/operations/getrole_request.rb +103 -0
  64. data/lib/cld_provisioning/models/operations/getrole_request.rbi +50 -0
  65. data/lib/cld_provisioning/models/operations/getroleprincipals_request.rb +135 -0
  66. data/lib/cld_provisioning/models/operations/getroleprincipals_request.rbi +68 -0
  67. data/lib/cld_provisioning/models/operations/getroles_request.rb +80 -0
  68. data/lib/cld_provisioning/models/operations/getroles_request.rbi +38 -0
  69. data/lib/cld_provisioning/models/operations/getsubaccountsforuser_request.rb +40 -0
  70. data/lib/cld_provisioning/models/operations/getsubaccountsforuser_request.rbi +20 -0
  71. data/lib/cld_provisioning/models/operations/getsystempolicies_request.rb +59 -0
  72. data/lib/cld_provisioning/models/operations/getsystempolicies_request.rbi +26 -0
  73. data/lib/cld_provisioning/models/operations/getuser_request.rb +40 -0
  74. data/lib/cld_provisioning/models/operations/getuser_request.rbi +20 -0
  75. data/lib/cld_provisioning/models/operations/getusergroup_request.rb +52 -0
  76. data/lib/cld_provisioning/models/operations/getusergroup_request.rbi +26 -0
  77. data/lib/cld_provisioning/models/operations/getusergroups_request.rb +46 -0
  78. data/lib/cld_provisioning/models/operations/getusergroups_request.rbi +20 -0
  79. data/lib/cld_provisioning/models/operations/getusers_request.rb +179 -0
  80. data/lib/cld_provisioning/models/operations/getusers_request.rbi +92 -0
  81. data/lib/cld_provisioning/models/operations/getusersinusergroup_request.rb +40 -0
  82. data/lib/cld_provisioning/models/operations/getusersinusergroup_request.rbi +20 -0
  83. data/lib/cld_provisioning/models/operations/inspect_request.rb +155 -0
  84. data/lib/cld_provisioning/models/operations/inspect_request.rbi +74 -0
  85. data/lib/cld_provisioning/models/operations/inspectmultiple_request.rb +40 -0
  86. data/lib/cld_provisioning/models/operations/inspectmultiple_request.rbi +20 -0
  87. data/lib/cld_provisioning/models/operations/queryparam_sort_by.rb +22 -0
  88. data/lib/cld_provisioning/models/operations/queryparam_sort_by.rbi +9 -0
  89. data/lib/cld_provisioning/models/operations/queryparam_sort_order.rb +20 -0
  90. data/lib/cld_provisioning/models/operations/queryparam_sort_order.rbi +9 -0
  91. data/lib/cld_provisioning/models/operations/removeuserfromusergroup_request.rb +44 -0
  92. data/lib/cld_provisioning/models/operations/removeuserfromusergroup_request.rbi +26 -0
  93. data/lib/cld_provisioning/models/operations/role.rb +24 -0
  94. data/lib/cld_provisioning/models/operations/role.rbi +9 -0
  95. data/lib/cld_provisioning/models/operations/sort_by.rb +22 -0
  96. data/lib/cld_provisioning/models/operations/sort_by.rbi +9 -0
  97. data/lib/cld_provisioning/models/operations/sort_order.rb +20 -0
  98. data/lib/cld_provisioning/models/operations/sort_order.rbi +9 -0
  99. data/lib/cld_provisioning/models/operations/union_type.rb +21 -0
  100. data/lib/cld_provisioning/models/operations/union_type.rbi +9 -0
  101. data/lib/cld_provisioning/models/operations/updateaccesskey_request.rb +64 -0
  102. data/lib/cld_provisioning/models/operations/updateaccesskey_request.rbi +32 -0
  103. data/lib/cld_provisioning/models/operations/updatecustompolicy_request.rb +51 -0
  104. data/lib/cld_provisioning/models/operations/updatecustompolicy_request.rbi +26 -0
  105. data/lib/cld_provisioning/models/operations/updateprincipalroles_request.rb +50 -0
  106. data/lib/cld_provisioning/models/operations/updateprincipalroles_request.rbi +20 -0
  107. data/lib/cld_provisioning/models/operations/updateproductenvironment_request.rb +59 -0
  108. data/lib/cld_provisioning/models/operations/updateproductenvironment_request.rbi +26 -0
  109. data/lib/cld_provisioning/models/operations/updaterole_request.rb +44 -0
  110. data/lib/cld_provisioning/models/operations/updaterole_request.rbi +26 -0
  111. data/lib/cld_provisioning/models/operations/updateroleprincipals_request.rb +55 -0
  112. data/lib/cld_provisioning/models/operations/updateroleprincipals_request.rbi +26 -0
  113. data/lib/cld_provisioning/models/operations/updateuser_request.rb +46 -0
  114. data/lib/cld_provisioning/models/operations/updateuser_request.rbi +26 -0
  115. data/lib/cld_provisioning/models/operations/updateusergroup_request.rb +51 -0
  116. data/lib/cld_provisioning/models/operations/updateusergroup_request.rbi +26 -0
  117. data/lib/cld_provisioning/models/operations.rb +72 -0
  118. data/lib/cld_provisioning/models/server_variables/server_region.rb +20 -0
  119. data/lib/cld_provisioning/models/server_variables.rb +13 -0
  120. data/lib/cld_provisioning/models/shared/accesskey.rb +96 -0
  121. data/lib/cld_provisioning/models/shared/accesskey.rbi +44 -0
  122. data/lib/cld_provisioning/models/shared/accesskeyrequest.rb +44 -0
  123. data/lib/cld_provisioning/models/shared/accesskeyrequest.rbi +20 -0
  124. data/lib/cld_provisioning/models/shared/accesskeysresponse.rb +44 -0
  125. data/lib/cld_provisioning/models/shared/accesskeysresponse.rbi +20 -0
  126. data/lib/cld_provisioning/models/shared/accesskeyupdaterequest.rb +66 -0
  127. data/lib/cld_provisioning/models/shared/accesskeyupdaterequest.rbi +26 -0
  128. data/lib/cld_provisioning/models/shared/apiaccesskey.rb +52 -0
  129. data/lib/cld_provisioning/models/shared/apiaccesskey.rbi +26 -0
  130. data/lib/cld_provisioning/models/shared/billingusageresponse.rb +46 -0
  131. data/lib/cld_provisioning/models/shared/billingusageresponse.rbi +20 -0
  132. data/lib/cld_provisioning/models/shared/billingusageresponse_breakdown.rb +133 -0
  133. data/lib/cld_provisioning/models/shared/billingusageresponse_breakdown.rbi +68 -0
  134. data/lib/cld_provisioning/models/shared/breakdown.rb +133 -0
  135. data/lib/cld_provisioning/models/shared/breakdown.rbi +68 -0
  136. data/lib/cld_provisioning/models/shared/cedarerror.rb +43 -0
  137. data/lib/cld_provisioning/models/shared/cedarerror.rbi +20 -0
  138. data/lib/cld_provisioning/models/shared/cedarschemaresponse.rb +35 -0
  139. data/lib/cld_provisioning/models/shared/cedarschemaresponse.rbi +14 -0
  140. data/lib/cld_provisioning/models/shared/cloudassettypebreakdown.rb +143 -0
  141. data/lib/cld_provisioning/models/shared/cloudassettypebreakdown.rbi +74 -0
  142. data/lib/cld_provisioning/models/shared/createrole.rb +102 -0
  143. data/lib/cld_provisioning/models/shared/createrole.rbi +44 -0
  144. data/lib/cld_provisioning/models/shared/custom_attributes.rb +26 -0
  145. data/lib/cld_provisioning/models/shared/custom_attributes.rbi +9 -0
  146. data/lib/cld_provisioning/models/shared/custompoliciesresponse.rb +47 -0
  147. data/lib/cld_provisioning/models/shared/custompoliciesresponse.rbi +20 -0
  148. data/lib/cld_provisioning/models/shared/custompolicy.rb +96 -0
  149. data/lib/cld_provisioning/models/shared/custompolicy.rbi +44 -0
  150. data/lib/cld_provisioning/models/shared/custompolicyresponse.rb +35 -0
  151. data/lib/cld_provisioning/models/shared/custompolicyresponse.rbi +14 -0
  152. data/lib/cld_provisioning/models/shared/custompolicyresponsedata.rb +125 -0
  153. data/lib/cld_provisioning/models/shared/custompolicyresponsedata.rbi +62 -0
  154. data/lib/cld_provisioning/models/shared/cycles.rb +87 -0
  155. data/lib/cld_provisioning/models/shared/cycles.rbi +38 -0
  156. data/lib/cld_provisioning/models/shared/data.rb +49 -0
  157. data/lib/cld_provisioning/models/shared/data.rbi +20 -0
  158. data/lib/cld_provisioning/models/shared/dedicated_for.rb +20 -0
  159. data/lib/cld_provisioning/models/shared/dedicated_for.rbi +9 -0
  160. data/lib/cld_provisioning/models/shared/details.rb +26 -0
  161. data/lib/cld_provisioning/models/shared/details.rbi +9 -0
  162. data/lib/cld_provisioning/models/shared/effectivepoliciesresponse.rb +35 -0
  163. data/lib/cld_provisioning/models/shared/effectivepoliciesresponse.rbi +14 -0
  164. data/lib/cld_provisioning/models/shared/effectivepolicy.rb +44 -0
  165. data/lib/cld_provisioning/models/shared/effectivepolicy.rbi +20 -0
  166. data/lib/cld_provisioning/models/shared/effectiverole.rb +46 -0
  167. data/lib/cld_provisioning/models/shared/effectiverole.rbi +20 -0
  168. data/lib/cld_provisioning/models/shared/email_preferences.rb +26 -0
  169. data/lib/cld_provisioning/models/shared/email_preferences.rbi +9 -0
  170. data/lib/cld_provisioning/models/shared/error.rb +35 -0
  171. data/lib/cld_provisioning/models/shared/error.rbi +14 -0
  172. data/lib/cld_provisioning/models/shared/inspectrequest.rb +83 -0
  173. data/lib/cld_provisioning/models/shared/inspectrequest.rbi +38 -0
  174. data/lib/cld_provisioning/models/shared/inspectrequest_policy_parameters.rb +26 -0
  175. data/lib/cld_provisioning/models/shared/inspectrequest_policy_parameters.rbi +9 -0
  176. data/lib/cld_provisioning/models/shared/managementtypeenum.rb +22 -0
  177. data/lib/cld_provisioning/models/shared/managementtypeenum.rbi +9 -0
  178. data/lib/cld_provisioning/models/shared/metric_usage.rb +68 -0
  179. data/lib/cld_provisioning/models/shared/metric_usage.rbi +32 -0
  180. data/lib/cld_provisioning/models/shared/monthly_cycles.rb +87 -0
  181. data/lib/cld_provisioning/models/shared/monthly_cycles.rbi +38 -0
  182. data/lib/cld_provisioning/models/shared/operationenum.rb +19 -0
  183. data/lib/cld_provisioning/models/shared/operationenum.rbi +9 -0
  184. data/lib/cld_provisioning/models/shared/permissionserror.rb +68 -0
  185. data/lib/cld_provisioning/models/shared/permissionserror.rbi +32 -0
  186. data/lib/cld_provisioning/models/shared/permissiontypeenum.rb +22 -0
  187. data/lib/cld_provisioning/models/shared/permissiontypeenum.rbi +9 -0
  188. data/lib/cld_provisioning/models/shared/policy_parameters.rb +29 -0
  189. data/lib/cld_provisioning/models/shared/policy_parameters.rbi +9 -0
  190. data/lib/cld_provisioning/models/shared/principal.rb +46 -0
  191. data/lib/cld_provisioning/models/shared/principal.rbi +20 -0
  192. data/lib/cld_provisioning/models/shared/principalresponsedata.rb +120 -0
  193. data/lib/cld_provisioning/models/shared/principalresponsedata.rbi +56 -0
  194. data/lib/cld_provisioning/models/shared/principalresponsedata_policy_parameters.rb +26 -0
  195. data/lib/cld_provisioning/models/shared/principalresponsedata_policy_parameters.rbi +9 -0
  196. data/lib/cld_provisioning/models/shared/principalrole.rb +68 -0
  197. data/lib/cld_provisioning/models/shared/principalrole.rbi +26 -0
  198. data/lib/cld_provisioning/models/shared/principalrolesdata.rb +150 -0
  199. data/lib/cld_provisioning/models/shared/principalrolesdata.rbi +68 -0
  200. data/lib/cld_provisioning/models/shared/principalrolesinspectdata.rb +61 -0
  201. data/lib/cld_provisioning/models/shared/principalrolesinspectdata.rbi +26 -0
  202. data/lib/cld_provisioning/models/shared/principalrolesinspectresponse.rb +46 -0
  203. data/lib/cld_provisioning/models/shared/principalrolesinspectresponse.rbi +20 -0
  204. data/lib/cld_provisioning/models/shared/principalrolesinspectresponse_data.rb +35 -0
  205. data/lib/cld_provisioning/models/shared/principalrolesinspectresponse_data.rbi +14 -0
  206. data/lib/cld_provisioning/models/shared/principalrolesresponse.rb +35 -0
  207. data/lib/cld_provisioning/models/shared/principalrolesresponse.rbi +14 -0
  208. data/lib/cld_provisioning/models/shared/principalsresponse.rb +36 -0
  209. data/lib/cld_provisioning/models/shared/principalsresponse.rbi +14 -0
  210. data/lib/cld_provisioning/models/shared/principaltypeenum.rb +24 -0
  211. data/lib/cld_provisioning/models/shared/principaltypeenum.rbi +9 -0
  212. data/lib/cld_provisioning/models/shared/productenvironment.rb +112 -0
  213. data/lib/cld_provisioning/models/shared/productenvironment.rbi +50 -0
  214. data/lib/cld_provisioning/models/shared/productenvironmentrequest.rb +68 -0
  215. data/lib/cld_provisioning/models/shared/productenvironmentrequest.rbi +32 -0
  216. data/lib/cld_provisioning/models/shared/productenvironmentsresponse.rb +35 -0
  217. data/lib/cld_provisioning/models/shared/productenvironmentsresponse.rbi +14 -0
  218. data/lib/cld_provisioning/models/shared/productenvironmentupdaterequest.rb +71 -0
  219. data/lib/cld_provisioning/models/shared/productenvironmentupdaterequest.rbi +32 -0
  220. data/lib/cld_provisioning/models/shared/productenvironmentupdaterequest_custom_attributes.rb +26 -0
  221. data/lib/cld_provisioning/models/shared/productenvironmentupdaterequest_custom_attributes.rbi +9 -0
  222. data/lib/cld_provisioning/models/shared/role.rb +58 -0
  223. data/lib/cld_provisioning/models/shared/role.rbi +26 -0
  224. data/lib/cld_provisioning/models/shared/roleresponse.rb +35 -0
  225. data/lib/cld_provisioning/models/shared/roleresponse.rbi +14 -0
  226. data/lib/cld_provisioning/models/shared/roleresponse_data1.rb +149 -0
  227. data/lib/cld_provisioning/models/shared/roleresponse_data1.rbi +68 -0
  228. data/lib/cld_provisioning/models/shared/roleresponsedata.rb +139 -0
  229. data/lib/cld_provisioning/models/shared/roleresponsedata.rbi +62 -0
  230. data/lib/cld_provisioning/models/shared/rolesresponse.rb +36 -0
  231. data/lib/cld_provisioning/models/shared/rolesresponse.rbi +14 -0
  232. data/lib/cld_provisioning/models/shared/roletomanage.rb +55 -0
  233. data/lib/cld_provisioning/models/shared/roletomanage.rbi +26 -0
  234. data/lib/cld_provisioning/models/shared/roletomanage_policy_parameters.rb +26 -0
  235. data/lib/cld_provisioning/models/shared/roletomanage_policy_parameters.rbi +9 -0
  236. data/lib/cld_provisioning/models/shared/scopetypeenum.rb +22 -0
  237. data/lib/cld_provisioning/models/shared/scopetypeenum.rbi +9 -0
  238. data/lib/cld_provisioning/models/shared/security.rb +52 -0
  239. data/lib/cld_provisioning/models/shared/security.rbi +20 -0
  240. data/lib/cld_provisioning/models/shared/subaccountsummary.rb +77 -0
  241. data/lib/cld_provisioning/models/shared/subaccountsummary.rbi +38 -0
  242. data/lib/cld_provisioning/models/shared/successresponse.rb +35 -0
  243. data/lib/cld_provisioning/models/shared/successresponse.rbi +14 -0
  244. data/lib/cld_provisioning/models/shared/systempoliciesresponse.rb +47 -0
  245. data/lib/cld_provisioning/models/shared/systempoliciesresponse.rbi +20 -0
  246. data/lib/cld_provisioning/models/shared/systempolicyresponsedata.rb +153 -0
  247. data/lib/cld_provisioning/models/shared/systempolicyresponsedata.rbi +74 -0
  248. data/lib/cld_provisioning/models/shared/systemrolesandpoliciescatalogresponse.rb +35 -0
  249. data/lib/cld_provisioning/models/shared/systemrolesandpoliciescatalogresponse.rbi +14 -0
  250. data/lib/cld_provisioning/models/shared/updatecustompolicy.rb +96 -0
  251. data/lib/cld_provisioning/models/shared/updatecustompolicy.rbi +44 -0
  252. data/lib/cld_provisioning/models/shared/updateprincipalrolesrequest.rb +64 -0
  253. data/lib/cld_provisioning/models/shared/updateprincipalrolesrequest.rbi +26 -0
  254. data/lib/cld_provisioning/models/shared/updateroleprincipal.rb +74 -0
  255. data/lib/cld_provisioning/models/shared/updateroleprincipal.rbi +32 -0
  256. data/lib/cld_provisioning/models/shared/updateroleprincipal_policy_parameters.rb +26 -0
  257. data/lib/cld_provisioning/models/shared/updateroleprincipal_policy_parameters.rbi +9 -0
  258. data/lib/cld_provisioning/models/shared/updateroleprincipalsrequest.rb +55 -0
  259. data/lib/cld_provisioning/models/shared/updateroleprincipalsrequest.rbi +20 -0
  260. data/lib/cld_provisioning/models/shared/user.rb +258 -0
  261. data/lib/cld_provisioning/models/shared/user.rbi +134 -0
  262. data/lib/cld_provisioning/models/shared/usergroup.rb +93 -0
  263. data/lib/cld_provisioning/models/shared/usergroup.rbi +38 -0
  264. data/lib/cld_provisioning/models/shared/usergrouprequest.rb +46 -0
  265. data/lib/cld_provisioning/models/shared/usergrouprequest.rbi +20 -0
  266. data/lib/cld_provisioning/models/shared/usergroupslistresponse.rb +36 -0
  267. data/lib/cld_provisioning/models/shared/usergroupslistresponse.rbi +14 -0
  268. data/lib/cld_provisioning/models/shared/usergroupsresponse.rb +36 -0
  269. data/lib/cld_provisioning/models/shared/usergroupsresponse.rbi +14 -0
  270. data/lib/cld_provisioning/models/shared/usergroupsummary.rb +44 -0
  271. data/lib/cld_provisioning/models/shared/usergroupsummary.rbi +20 -0
  272. data/lib/cld_provisioning/models/shared/usergroupuser.rb +52 -0
  273. data/lib/cld_provisioning/models/shared/usergroupuser.rbi +26 -0
  274. data/lib/cld_provisioning/models/shared/usergroupusersresponse.rb +36 -0
  275. data/lib/cld_provisioning/models/shared/usergroupusersresponse.rbi +14 -0
  276. data/lib/cld_provisioning/models/shared/userrequest.rb +85 -0
  277. data/lib/cld_provisioning/models/shared/userrequest.rbi +38 -0
  278. data/lib/cld_provisioning/models/shared/userrequest_role.rb +24 -0
  279. data/lib/cld_provisioning/models/shared/userrequest_role.rbi +9 -0
  280. data/lib/cld_provisioning/models/shared/usersresponse.rb +35 -0
  281. data/lib/cld_provisioning/models/shared/usersresponse.rbi +14 -0
  282. data/lib/cld_provisioning/models/shared/usersubaccountsresponse.rb +36 -0
  283. data/lib/cld_provisioning/models/shared/usersubaccountsresponse.rbi +14 -0
  284. data/lib/cld_provisioning/models/shared/validatecedarpolicyrequest.rb +36 -0
  285. data/lib/cld_provisioning/models/shared/validatecedarpolicyrequest.rbi +14 -0
  286. data/lib/cld_provisioning/models/shared/validatecedarpolicyresponse.rb +43 -0
  287. data/lib/cld_provisioning/models/shared/validatecedarpolicyresponse.rbi +20 -0
  288. data/lib/cld_provisioning/models/shared.rb +111 -0
  289. data/lib/cld_provisioning/principals.rb +818 -0
  290. data/lib/cld_provisioning/productenvironments.rb +928 -0
  291. data/lib/cld_provisioning/public.rb +456 -0
  292. data/lib/cld_provisioning/roles.rb +1315 -0
  293. data/lib/cld_provisioning/sdk_hooks/account_config.rb +62 -0
  294. data/lib/cld_provisioning/sdk_hooks/cloudinary_account_hook.rb +87 -0
  295. data/lib/cld_provisioning/sdk_hooks/hooks.rb +100 -0
  296. data/lib/cld_provisioning/sdk_hooks/registration.rb +37 -0
  297. data/lib/cld_provisioning/sdk_hooks/types.rb +181 -0
  298. data/lib/cld_provisioning/sdk_hooks/user_agent_hook.rb +35 -0
  299. data/lib/cld_provisioning/sdkconfiguration.rb +133 -0
  300. data/lib/cld_provisioning/sdkconfiguration.rbi +89 -0
  301. data/lib/cld_provisioning/systempolicies.rb +240 -0
  302. data/lib/cld_provisioning/usergroups.rb +1425 -0
  303. data/lib/cld_provisioning/users.rb +1245 -0
  304. data/lib/cld_provisioning/utils/forms.rb +233 -0
  305. data/lib/cld_provisioning/utils/headers.rb +83 -0
  306. data/lib/cld_provisioning/utils/query_params.rb +168 -0
  307. data/lib/cld_provisioning/utils/request_bodies.rb +80 -0
  308. data/lib/cld_provisioning/utils/retries.rb +98 -0
  309. data/lib/cld_provisioning/utils/security.rb +159 -0
  310. data/lib/cld_provisioning/utils/url.rb +125 -0
  311. data/lib/cld_provisioning/utils/utils.rb +242 -0
  312. data/lib/cloudinary_account_provisioning.rb +38 -0
  313. data/lib/crystalline/enum.rbi +17 -0
  314. data/lib/crystalline/metadata_fields.rb +266 -0
  315. data/lib/crystalline/module.rb +189 -0
  316. data/lib/crystalline/types.rb +171 -0
  317. data/lib/crystalline/utils.rb +70 -0
  318. data/lib/crystalline.rb +14 -0
  319. metadata +570 -0
@@ -0,0 +1,818 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+ # @generated-id: 99dbf5e046f6
3
+
4
+ # typed: true
5
+ # frozen_string_literal: true
6
+
7
+ require "faraday"
8
+ require "faraday/multipart"
9
+ require "faraday/retry"
10
+ require "sorbet-runtime"
11
+
12
+ require_relative "sdk_hooks/hooks"
13
+ require_relative "utils/retries"
14
+
15
+ module CldProvisioning
16
+ extend T::Sig
17
+
18
+ class Principals
19
+ extend T::Sig
20
+
21
+ # View roles associated with a specified principal, and add or remove a role associated with a principal.
22
+ #
23
+
24
+ sig { params(sdk_config: SDKConfiguration).void }
25
+ def initialize(sdk_config)
26
+ @sdk_configuration = sdk_config
27
+ end
28
+
29
+ sig { params(base_url: String, url_variables: T.nilable(T::Hash[Symbol, T.any(String, T::Enum)])).returns(String) }
30
+ def get_url(base_url:, url_variables: nil)
31
+ sd_base_url, sd_options = @sdk_configuration.get_server_details
32
+
33
+ if base_url.nil?
34
+ base_url = sd_base_url
35
+ end
36
+
37
+ if url_variables.nil?
38
+ url_variables = sd_options
39
+ end
40
+
41
+ return Utils.template_url(base_url, url_variables)
42
+ end
43
+
44
+ sig {
45
+ params(
46
+ request: Models::Operations::GetPrincipalRolesRequest,
47
+ timeout_ms: T.nilable(Integer),
48
+ http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])
49
+ )
50
+ .returns(Models::Shared::PrincipalRolesResponse)
51
+ }
52
+ def list_roles(request:, timeout_ms: nil, http_headers: nil)
53
+ # list_roles - Get a principal's roles
54
+ # Retrieve all roles associated with a specific principal.
55
+ url, params = @sdk_configuration.get_server_details
56
+ base_url = Utils.template_url(url, params)
57
+ url = Utils.generate_url(
58
+ Models::Operations::GetPrincipalRolesRequest,
59
+ base_url,
60
+ "/v2/accounts/{account_id}/permissions/principal_roles",
61
+ request,
62
+ @sdk_configuration.globals
63
+ )
64
+ headers = {}
65
+ headers = T.cast(headers, T::Hash[String, String])
66
+ query_params = Utils.get_query_params(
67
+ Models::Operations::GetPrincipalRolesRequest,
68
+ request,
69
+ nil,
70
+ @sdk_configuration.globals
71
+ )
72
+ headers["Accept"] = "application/json"
73
+ headers["user-agent"] = @sdk_configuration.user_agent
74
+
75
+ security = @sdk_configuration.security_source&.call
76
+
77
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
78
+ timeout ||= @sdk_configuration.timeout
79
+
80
+ connection = @sdk_configuration.client
81
+
82
+ hook_ctx = SDKHooks::HookContext.new(
83
+ config: @sdk_configuration,
84
+ base_url: base_url,
85
+ oauth2_scopes: nil,
86
+ operation_id: "getPrincipalRoles",
87
+ security_source: @sdk_configuration.security_source
88
+ )
89
+
90
+ error = T.let(nil, T.nilable(StandardError))
91
+ http_response = T.let(nil, T.nilable(Faraday::Response))
92
+
93
+ begin
94
+ http_response = T.must(connection).get(url) do |req|
95
+ req.headers.merge!(headers)
96
+ req.options.timeout = timeout unless timeout.nil?
97
+ req.params = query_params
98
+ Utils.configure_request_security(req, security)
99
+ http_headers&.each do |key, value|
100
+ req.headers[key.to_s] = value
101
+ end
102
+
103
+ @sdk_configuration.hooks.before_request(
104
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
105
+ hook_ctx: hook_ctx
106
+ ),
107
+ request: req
108
+ )
109
+ end
110
+
111
+ rescue StandardError => e
112
+ error = e
113
+ ensure
114
+ if http_response.nil? || Utils.error_status?(http_response.status)
115
+ http_response = @sdk_configuration.hooks.after_error(
116
+ error: error,
117
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
118
+ hook_ctx: hook_ctx
119
+ ),
120
+ response: http_response
121
+ )
122
+ else
123
+ http_response = @sdk_configuration.hooks.after_success(
124
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
125
+ hook_ctx: hook_ctx
126
+ ),
127
+ response: http_response
128
+ )
129
+ end
130
+
131
+ if http_response.nil?
132
+ raise error if !error.nil?
133
+ raise "no response"
134
+ end
135
+ end
136
+
137
+ content_type = http_response.headers.fetch("Content-Type", "application/octet-stream")
138
+ if Utils.match_status_code(http_response.status, ["200"])
139
+ if Utils.match_content_type(content_type, "application/json")
140
+ @sdk_configuration.hooks.after_success(
141
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
142
+ hook_ctx: hook_ctx
143
+ ),
144
+ response: http_response
145
+ )
146
+ response_data = http_response.env.response_body
147
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Shared::PrincipalRolesResponse)
148
+
149
+ return obj
150
+ else
151
+ raise(
152
+ ::CldProvisioning::Models::Errors::APIError.new(
153
+ status_code: http_response.status,
154
+ body: http_response.env.response_body,
155
+ raw_response: http_response
156
+ ),
157
+ "Unknown content type received"
158
+ )
159
+ end
160
+ elsif Utils.match_status_code(http_response.status, ["400", "401", "404"])
161
+ if Utils.match_content_type(content_type, "application/json")
162
+ @sdk_configuration.hooks.after_success(
163
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
164
+ hook_ctx: hook_ctx
165
+ ),
166
+ response: http_response
167
+ )
168
+ response_data = http_response.env.response_body
169
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::PermissionsErrorResponse)
170
+ raise obj
171
+ else
172
+ raise(
173
+ ::CldProvisioning::Models::Errors::APIError.new(
174
+ status_code: http_response.status,
175
+ body: http_response.env.response_body,
176
+ raw_response: http_response
177
+ ),
178
+ "Unknown content type received"
179
+ )
180
+ end
181
+ elsif Utils.match_status_code(http_response.status, ["500"])
182
+ if Utils.match_content_type(content_type, "application/json")
183
+ @sdk_configuration.hooks.after_success(
184
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
185
+ hook_ctx: hook_ctx
186
+ ),
187
+ response: http_response
188
+ )
189
+ response_data = http_response.env.response_body
190
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::PermissionsErrorResponse)
191
+ raise obj
192
+ else
193
+ raise(
194
+ ::CldProvisioning::Models::Errors::APIError.new(
195
+ status_code: http_response.status,
196
+ body: http_response.env.response_body,
197
+ raw_response: http_response
198
+ ),
199
+ "Unknown content type received"
200
+ )
201
+ end
202
+ elsif Utils.match_status_code(http_response.status, ["4XX"])
203
+ raise(
204
+ ::CldProvisioning::Models::Errors::APIError.new(
205
+ status_code: http_response.status,
206
+ body: http_response.env.response_body,
207
+ raw_response: http_response
208
+ ),
209
+ "API error occurred"
210
+ )
211
+ elsif Utils.match_status_code(http_response.status, ["5XX"])
212
+ raise(
213
+ ::CldProvisioning::Models::Errors::APIError.new(
214
+ status_code: http_response.status,
215
+ body: http_response.env.response_body,
216
+ raw_response: http_response
217
+ ),
218
+ "API error occurred"
219
+ )
220
+ else
221
+ raise(
222
+ ::CldProvisioning::Models::Errors::APIError.new(
223
+ status_code: http_response.status,
224
+ body: http_response.env.response_body,
225
+ raw_response: http_response
226
+ ),
227
+ "Unknown status code received"
228
+ )
229
+
230
+ end
231
+ end
232
+
233
+ sig {
234
+ params(
235
+ update_principal_roles_request: Models::Shared::UpdatePrincipalRolesRequest,
236
+ account_id: T.nilable(::String),
237
+ timeout_ms: T.nilable(Integer),
238
+ http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])
239
+ )
240
+ .void
241
+ }
242
+ def update_roles(update_principal_roles_request:, account_id: nil, timeout_ms: nil, http_headers: nil)
243
+ # update_roles - Assign roles to a principal
244
+ # Add or remove roles associated with a principal.
245
+ request = Models::Operations::UpdatePrincipalRolesRequest.new(
246
+ update_principal_roles_request: update_principal_roles_request,
247
+ account_id: account_id
248
+ )
249
+ url, params = @sdk_configuration.get_server_details
250
+ base_url = Utils.template_url(url, params)
251
+ url = Utils.generate_url(
252
+ Models::Operations::UpdatePrincipalRolesRequest,
253
+ base_url,
254
+ "/v2/accounts/{account_id}/permissions/principal_roles",
255
+ request,
256
+ @sdk_configuration.globals
257
+ )
258
+ headers = {}
259
+ headers = T.cast(headers, T::Hash[String, String])
260
+ req_content_type, data, form = Utils.serialize_request_body(
261
+ request,
262
+ false,
263
+ false,
264
+ :update_principal_roles_request,
265
+ :json
266
+ )
267
+ headers["content-type"] = req_content_type
268
+ raise StandardError, "request body is required" if data.nil? && form.nil?
269
+
270
+ if form && !form.empty?
271
+ body = Utils.encode_form(form)
272
+ elsif Utils.match_content_type(req_content_type, "application/x-www-form-urlencoded")
273
+ body = URI.encode_www_form(T.cast(data, T::Hash[Symbol, Object]))
274
+ else
275
+ body = data
276
+ end
277
+
278
+ headers["Accept"] = "application/json"
279
+ headers["user-agent"] = @sdk_configuration.user_agent
280
+
281
+ security = @sdk_configuration.security_source&.call
282
+
283
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
284
+ timeout ||= @sdk_configuration.timeout
285
+
286
+ connection = @sdk_configuration.client
287
+
288
+ hook_ctx = SDKHooks::HookContext.new(
289
+ config: @sdk_configuration,
290
+ base_url: base_url,
291
+ oauth2_scopes: nil,
292
+ operation_id: "updatePrincipalRoles",
293
+ security_source: @sdk_configuration.security_source
294
+ )
295
+
296
+ error = T.let(nil, T.nilable(StandardError))
297
+ http_response = T.let(nil, T.nilable(Faraday::Response))
298
+
299
+ begin
300
+ http_response = T.must(connection).put(url) do |req|
301
+ req.body = body
302
+ req.headers.merge!(headers)
303
+ req.options.timeout = timeout unless timeout.nil?
304
+ Utils.configure_request_security(req, security)
305
+ http_headers&.each do |key, value|
306
+ req.headers[key.to_s] = value
307
+ end
308
+
309
+ @sdk_configuration.hooks.before_request(
310
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
311
+ hook_ctx: hook_ctx
312
+ ),
313
+ request: req
314
+ )
315
+ end
316
+
317
+ rescue StandardError => e
318
+ error = e
319
+ ensure
320
+ if http_response.nil? || Utils.error_status?(http_response.status)
321
+ http_response = @sdk_configuration.hooks.after_error(
322
+ error: error,
323
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
324
+ hook_ctx: hook_ctx
325
+ ),
326
+ response: http_response
327
+ )
328
+ else
329
+ http_response = @sdk_configuration.hooks.after_success(
330
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
331
+ hook_ctx: hook_ctx
332
+ ),
333
+ response: http_response
334
+ )
335
+ end
336
+
337
+ if http_response.nil?
338
+ raise error if !error.nil?
339
+ raise "no response"
340
+ end
341
+ end
342
+
343
+ content_type = http_response.headers.fetch("Content-Type", "application/octet-stream")
344
+ if Utils.match_status_code(http_response.status, ["200"])
345
+ @sdk_configuration.hooks.after_success(
346
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
347
+ hook_ctx: hook_ctx
348
+ ),
349
+ response: http_response
350
+ )
351
+ return
352
+ elsif Utils.match_status_code(http_response.status, ["400", "401", "403", "404"])
353
+ if Utils.match_content_type(content_type, "application/json")
354
+ @sdk_configuration.hooks.after_success(
355
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
356
+ hook_ctx: hook_ctx
357
+ ),
358
+ response: http_response
359
+ )
360
+ return
361
+ else
362
+ raise(
363
+ ::CldProvisioning::Models::Errors::APIError.new(
364
+ status_code: http_response.status,
365
+ body: http_response.env.response_body,
366
+ raw_response: http_response
367
+ ),
368
+ "Unknown content type received"
369
+ )
370
+ end
371
+ elsif Utils.match_status_code(http_response.status, ["4XX"])
372
+ raise(
373
+ ::CldProvisioning::Models::Errors::APIError.new(
374
+ status_code: http_response.status,
375
+ body: http_response.env.response_body,
376
+ raw_response: http_response
377
+ ),
378
+ "API error occurred"
379
+ )
380
+ elsif Utils.match_status_code(http_response.status, ["5XX"])
381
+ raise(
382
+ ::CldProvisioning::Models::Errors::APIError.new(
383
+ status_code: http_response.status,
384
+ body: http_response.env.response_body,
385
+ raw_response: http_response
386
+ ),
387
+ "API error occurred"
388
+ )
389
+ else
390
+ raise(
391
+ ::CldProvisioning::Models::Errors::APIError.new(
392
+ status_code: http_response.status,
393
+ body: http_response.env.response_body,
394
+ raw_response: http_response
395
+ ),
396
+ "Unknown status code received"
397
+ )
398
+
399
+ end
400
+ end
401
+
402
+ sig {
403
+ params(
404
+ request: Models::Operations::InspectRequest,
405
+ timeout_ms: T.nilable(Integer),
406
+ http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])
407
+ )
408
+ .returns(Models::Shared::PrincipalRolesInspectResponse)
409
+ }
410
+ def inspect(request:, timeout_ms: nil, http_headers: nil)
411
+ # inspect - Inspect
412
+ # Retrieves principals and their assigned roles within a specified scope, based on query filters.
413
+ #
414
+ # Use this endpoint to determine which users, groups, API keys, or account API keys have roles applied at:
415
+ # * A specific `scope_type` ("account" or "prodenv")
416
+ # * A specific `scope_id` (for product environments)
417
+ # * Optional content filters (such as `folder_id`, `collection_id`, or `param_key` / `param_value`)
418
+ # * Optional `principal_type` (and `principal_id`)
419
+ #
420
+ # The response includes all principals that match the specified filters, along with the roles applied to them within that context.
421
+ #
422
+ # This endpoint is useful when you want to:
423
+ # * Audit who has access within a given scope
424
+ # * Identify all principals assigned to roles for a specific folder, collection, asset, or product environment
425
+ # * Retrieve role assignments dynamically based on filtering criteria
426
+ #
427
+ url, params = @sdk_configuration.get_server_details
428
+ base_url = Utils.template_url(url, params)
429
+ url = Utils.generate_url(
430
+ Models::Operations::InspectRequest,
431
+ base_url,
432
+ "/v2/accounts/{account_id}/permissions/principal_roles/inspect",
433
+ request,
434
+ @sdk_configuration.globals
435
+ )
436
+ headers = {}
437
+ headers = T.cast(headers, T::Hash[String, String])
438
+ query_params = Utils.get_query_params(
439
+ Models::Operations::InspectRequest,
440
+ request,
441
+ nil,
442
+ @sdk_configuration.globals
443
+ )
444
+ headers["Accept"] = "application/json"
445
+ headers["user-agent"] = @sdk_configuration.user_agent
446
+
447
+ security = @sdk_configuration.security_source&.call
448
+
449
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
450
+ timeout ||= @sdk_configuration.timeout
451
+
452
+ connection = @sdk_configuration.client
453
+
454
+ hook_ctx = SDKHooks::HookContext.new(
455
+ config: @sdk_configuration,
456
+ base_url: base_url,
457
+ oauth2_scopes: nil,
458
+ operation_id: "inspect",
459
+ security_source: @sdk_configuration.security_source
460
+ )
461
+
462
+ error = T.let(nil, T.nilable(StandardError))
463
+ http_response = T.let(nil, T.nilable(Faraday::Response))
464
+
465
+ begin
466
+ http_response = T.must(connection).get(url) do |req|
467
+ req.headers.merge!(headers)
468
+ req.options.timeout = timeout unless timeout.nil?
469
+ req.params = query_params
470
+ Utils.configure_request_security(req, security)
471
+ http_headers&.each do |key, value|
472
+ req.headers[key.to_s] = value
473
+ end
474
+
475
+ @sdk_configuration.hooks.before_request(
476
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
477
+ hook_ctx: hook_ctx
478
+ ),
479
+ request: req
480
+ )
481
+ end
482
+
483
+ rescue StandardError => e
484
+ error = e
485
+ ensure
486
+ if http_response.nil? || Utils.error_status?(http_response.status)
487
+ http_response = @sdk_configuration.hooks.after_error(
488
+ error: error,
489
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
490
+ hook_ctx: hook_ctx
491
+ ),
492
+ response: http_response
493
+ )
494
+ else
495
+ http_response = @sdk_configuration.hooks.after_success(
496
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
497
+ hook_ctx: hook_ctx
498
+ ),
499
+ response: http_response
500
+ )
501
+ end
502
+
503
+ if http_response.nil?
504
+ raise error if !error.nil?
505
+ raise "no response"
506
+ end
507
+ end
508
+
509
+ content_type = http_response.headers.fetch("Content-Type", "application/octet-stream")
510
+ if Utils.match_status_code(http_response.status, ["200"])
511
+ if Utils.match_content_type(content_type, "application/json")
512
+ @sdk_configuration.hooks.after_success(
513
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
514
+ hook_ctx: hook_ctx
515
+ ),
516
+ response: http_response
517
+ )
518
+ response_data = http_response.env.response_body
519
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Shared::PrincipalRolesInspectResponse)
520
+
521
+ return obj
522
+ else
523
+ raise(
524
+ ::CldProvisioning::Models::Errors::APIError.new(
525
+ status_code: http_response.status,
526
+ body: http_response.env.response_body,
527
+ raw_response: http_response
528
+ ),
529
+ "Unknown content type received"
530
+ )
531
+ end
532
+ elsif Utils.match_status_code(http_response.status, ["400", "401", "404"])
533
+ if Utils.match_content_type(content_type, "application/json")
534
+ @sdk_configuration.hooks.after_success(
535
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
536
+ hook_ctx: hook_ctx
537
+ ),
538
+ response: http_response
539
+ )
540
+ response_data = http_response.env.response_body
541
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::PermissionsErrorResponse)
542
+ raise obj
543
+ else
544
+ raise(
545
+ ::CldProvisioning::Models::Errors::APIError.new(
546
+ status_code: http_response.status,
547
+ body: http_response.env.response_body,
548
+ raw_response: http_response
549
+ ),
550
+ "Unknown content type received"
551
+ )
552
+ end
553
+ elsif Utils.match_status_code(http_response.status, ["500"])
554
+ if Utils.match_content_type(content_type, "application/json")
555
+ @sdk_configuration.hooks.after_success(
556
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
557
+ hook_ctx: hook_ctx
558
+ ),
559
+ response: http_response
560
+ )
561
+ response_data = http_response.env.response_body
562
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::PermissionsErrorResponse)
563
+ raise obj
564
+ else
565
+ raise(
566
+ ::CldProvisioning::Models::Errors::APIError.new(
567
+ status_code: http_response.status,
568
+ body: http_response.env.response_body,
569
+ raw_response: http_response
570
+ ),
571
+ "Unknown content type received"
572
+ )
573
+ end
574
+ elsif Utils.match_status_code(http_response.status, ["4XX"])
575
+ raise(
576
+ ::CldProvisioning::Models::Errors::APIError.new(
577
+ status_code: http_response.status,
578
+ body: http_response.env.response_body,
579
+ raw_response: http_response
580
+ ),
581
+ "API error occurred"
582
+ )
583
+ elsif Utils.match_status_code(http_response.status, ["5XX"])
584
+ raise(
585
+ ::CldProvisioning::Models::Errors::APIError.new(
586
+ status_code: http_response.status,
587
+ body: http_response.env.response_body,
588
+ raw_response: http_response
589
+ ),
590
+ "API error occurred"
591
+ )
592
+ else
593
+ raise(
594
+ ::CldProvisioning::Models::Errors::APIError.new(
595
+ status_code: http_response.status,
596
+ body: http_response.env.response_body,
597
+ raw_response: http_response
598
+ ),
599
+ "Unknown status code received"
600
+ )
601
+
602
+ end
603
+ end
604
+
605
+ sig {
606
+ params(
607
+ inspect_request: Models::Shared::InspectRequest,
608
+ account_id: T.nilable(::String),
609
+ timeout_ms: T.nilable(Integer),
610
+ http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])
611
+ )
612
+ .returns(Models::Shared::PrincipalRolesInspectResponse)
613
+ }
614
+ def inspect_multiple(inspect_request:, account_id: nil, timeout_ms: nil, http_headers: nil)
615
+ # inspect_multiple - Inspect multiple
616
+ # Retrieves role assignments for a specified list of principals within a shared scope and optional policy parameters.
617
+ #
618
+ # Use this endpoint when you already know which principals you want to evaluate and want to check their role assignments in a single request.
619
+ #
620
+ # In this request:
621
+ # * You explicitly provide the `principals` array in the request body.
622
+ # * All principals are evaluated against the same `scope_type`, optional `scope_id`, and optional `policy_parameters`.
623
+ # * Unlike `Inspect`, this endpoint doesn't search for matching principals. It evaluates only the principals you provide.
624
+ #
625
+ # This endpoint is useful for:
626
+ # * Verify role assignments for multiple specified principals at once
627
+ # * Comparing role assignments across specific users, groups, or keys
628
+ # * Reducing multiple per-principal `Inspect` calls into a single request
629
+ #
630
+ request = Models::Operations::InspectMultipleRequest.new(
631
+ inspect_request: inspect_request,
632
+ account_id: account_id
633
+ )
634
+ url, params = @sdk_configuration.get_server_details
635
+ base_url = Utils.template_url(url, params)
636
+ url = Utils.generate_url(
637
+ Models::Operations::InspectMultipleRequest,
638
+ base_url,
639
+ "/v2/accounts/{account_id}/permissions/principal_roles/inspect",
640
+ request,
641
+ @sdk_configuration.globals
642
+ )
643
+ headers = {}
644
+ headers = T.cast(headers, T::Hash[String, String])
645
+ req_content_type, data, form = Utils.serialize_request_body(request, false, false, :inspect_request, :json)
646
+ headers["content-type"] = req_content_type
647
+ raise StandardError, "request body is required" if data.nil? && form.nil?
648
+
649
+ if form && !form.empty?
650
+ body = Utils.encode_form(form)
651
+ elsif Utils.match_content_type(req_content_type, "application/x-www-form-urlencoded")
652
+ body = URI.encode_www_form(T.cast(data, T::Hash[Symbol, Object]))
653
+ else
654
+ body = data
655
+ end
656
+
657
+ headers["Accept"] = "application/json"
658
+ headers["user-agent"] = @sdk_configuration.user_agent
659
+
660
+ security = @sdk_configuration.security_source&.call
661
+
662
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
663
+ timeout ||= @sdk_configuration.timeout
664
+
665
+ connection = @sdk_configuration.client
666
+
667
+ hook_ctx = SDKHooks::HookContext.new(
668
+ config: @sdk_configuration,
669
+ base_url: base_url,
670
+ oauth2_scopes: nil,
671
+ operation_id: "inspectMultiple",
672
+ security_source: @sdk_configuration.security_source
673
+ )
674
+
675
+ error = T.let(nil, T.nilable(StandardError))
676
+ http_response = T.let(nil, T.nilable(Faraday::Response))
677
+
678
+ begin
679
+ http_response = T.must(connection).post(url) do |req|
680
+ req.body = body
681
+ req.headers.merge!(headers)
682
+ req.options.timeout = timeout unless timeout.nil?
683
+ Utils.configure_request_security(req, security)
684
+ http_headers&.each do |key, value|
685
+ req.headers[key.to_s] = value
686
+ end
687
+
688
+ @sdk_configuration.hooks.before_request(
689
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
690
+ hook_ctx: hook_ctx
691
+ ),
692
+ request: req
693
+ )
694
+ end
695
+
696
+ rescue StandardError => e
697
+ error = e
698
+ ensure
699
+ if http_response.nil? || Utils.error_status?(http_response.status)
700
+ http_response = @sdk_configuration.hooks.after_error(
701
+ error: error,
702
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
703
+ hook_ctx: hook_ctx
704
+ ),
705
+ response: http_response
706
+ )
707
+ else
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
+ end
715
+
716
+ if http_response.nil?
717
+ raise error if !error.nil?
718
+ raise "no response"
719
+ end
720
+ end
721
+
722
+ content_type = http_response.headers.fetch("Content-Type", "application/octet-stream")
723
+ if Utils.match_status_code(http_response.status, ["200"])
724
+ if Utils.match_content_type(content_type, "application/json")
725
+ @sdk_configuration.hooks.after_success(
726
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
727
+ hook_ctx: hook_ctx
728
+ ),
729
+ response: http_response
730
+ )
731
+ response_data = http_response.env.response_body
732
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Shared::PrincipalRolesInspectResponse)
733
+
734
+ return obj
735
+ else
736
+ raise(
737
+ ::CldProvisioning::Models::Errors::APIError.new(
738
+ status_code: http_response.status,
739
+ body: http_response.env.response_body,
740
+ raw_response: http_response
741
+ ),
742
+ "Unknown content type received"
743
+ )
744
+ end
745
+ elsif Utils.match_status_code(http_response.status, ["400", "401", "404"])
746
+ if Utils.match_content_type(content_type, "application/json")
747
+ @sdk_configuration.hooks.after_success(
748
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
749
+ hook_ctx: hook_ctx
750
+ ),
751
+ response: http_response
752
+ )
753
+ response_data = http_response.env.response_body
754
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::PermissionsErrorResponse)
755
+ raise obj
756
+ else
757
+ raise(
758
+ ::CldProvisioning::Models::Errors::APIError.new(
759
+ status_code: http_response.status,
760
+ body: http_response.env.response_body,
761
+ raw_response: http_response
762
+ ),
763
+ "Unknown content type received"
764
+ )
765
+ end
766
+ elsif Utils.match_status_code(http_response.status, ["500"])
767
+ if Utils.match_content_type(content_type, "application/json")
768
+ @sdk_configuration.hooks.after_success(
769
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
770
+ hook_ctx: hook_ctx
771
+ ),
772
+ response: http_response
773
+ )
774
+ response_data = http_response.env.response_body
775
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::PermissionsErrorResponse)
776
+ raise obj
777
+ else
778
+ raise(
779
+ ::CldProvisioning::Models::Errors::APIError.new(
780
+ status_code: http_response.status,
781
+ body: http_response.env.response_body,
782
+ raw_response: http_response
783
+ ),
784
+ "Unknown content type received"
785
+ )
786
+ end
787
+ elsif Utils.match_status_code(http_response.status, ["4XX"])
788
+ raise(
789
+ ::CldProvisioning::Models::Errors::APIError.new(
790
+ status_code: http_response.status,
791
+ body: http_response.env.response_body,
792
+ raw_response: http_response
793
+ ),
794
+ "API error occurred"
795
+ )
796
+ elsif Utils.match_status_code(http_response.status, ["5XX"])
797
+ raise(
798
+ ::CldProvisioning::Models::Errors::APIError.new(
799
+ status_code: http_response.status,
800
+ body: http_response.env.response_body,
801
+ raw_response: http_response
802
+ ),
803
+ "API error occurred"
804
+ )
805
+ else
806
+ raise(
807
+ ::CldProvisioning::Models::Errors::APIError.new(
808
+ status_code: http_response.status,
809
+ body: http_response.env.response_body,
810
+ raw_response: http_response
811
+ ),
812
+ "Unknown status code received"
813
+ )
814
+
815
+ end
816
+ end
817
+ end
818
+ end