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,958 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+ # @generated-id: 3d38b66f9930
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 CustomPolicies
19
+ extend T::Sig
20
+
21
+ sig { params(sdk_config: SDKConfiguration).void }
22
+ def initialize(sdk_config)
23
+ @sdk_configuration = sdk_config
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
+ sig {
42
+ params(
43
+ request: T.nilable(Models::Operations::GetCustomPoliciesRequest),
44
+ timeout_ms: T.nilable(Integer),
45
+ http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])
46
+ )
47
+ .returns(Models::Shared::CustomPoliciesResponse)
48
+ }
49
+ def list(request: nil, timeout_ms: nil, http_headers: nil)
50
+ # list - Get custom policies
51
+ # Retrieve all custom permission policies defined for a specific scope. The scope can be at the account level or within a specific product environment.
52
+ #
53
+ # **Notes:**
54
+ # * If `scope_type` isn't specified as `prodenv`, the account-level policies will be returned.
55
+ #
56
+ # * If `scope_type` is specified as `prodenv`, `scope_id` is required.
57
+ #
58
+ url, params = @sdk_configuration.get_server_details
59
+ base_url = Utils.template_url(url, params)
60
+ url = Utils.generate_url(
61
+ Models::Operations::GetCustomPoliciesRequest,
62
+ base_url,
63
+ "/v2/accounts/{account_id}/permissions/policies/custom",
64
+ request,
65
+ @sdk_configuration.globals
66
+ )
67
+ headers = {}
68
+ headers = T.cast(headers, T::Hash[String, String])
69
+ query_params = Utils.get_query_params(
70
+ Models::Operations::GetCustomPoliciesRequest,
71
+ request,
72
+ nil,
73
+ @sdk_configuration.globals
74
+ )
75
+ headers["Accept"] = "application/json"
76
+ headers["user-agent"] = @sdk_configuration.user_agent
77
+
78
+ security = @sdk_configuration.security_source&.call
79
+
80
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
81
+ timeout ||= @sdk_configuration.timeout
82
+
83
+ connection = @sdk_configuration.client
84
+
85
+ hook_ctx = SDKHooks::HookContext.new(
86
+ config: @sdk_configuration,
87
+ base_url: base_url,
88
+ oauth2_scopes: nil,
89
+ operation_id: "getCustomPolicies",
90
+ security_source: @sdk_configuration.security_source
91
+ )
92
+
93
+ error = T.let(nil, T.nilable(StandardError))
94
+ http_response = T.let(nil, T.nilable(Faraday::Response))
95
+
96
+ begin
97
+ http_response = T.must(connection).get(url) do |req|
98
+ req.headers.merge!(headers)
99
+ req.options.timeout = timeout unless timeout.nil?
100
+ req.params = query_params
101
+ Utils.configure_request_security(req, security)
102
+ http_headers&.each do |key, value|
103
+ req.headers[key.to_s] = value
104
+ end
105
+
106
+ @sdk_configuration.hooks.before_request(
107
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
108
+ hook_ctx: hook_ctx
109
+ ),
110
+ request: req
111
+ )
112
+ end
113
+
114
+ rescue StandardError => e
115
+ error = e
116
+ ensure
117
+ if http_response.nil? || Utils.error_status?(http_response.status)
118
+ http_response = @sdk_configuration.hooks.after_error(
119
+ error: error,
120
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
121
+ hook_ctx: hook_ctx
122
+ ),
123
+ response: http_response
124
+ )
125
+ else
126
+ http_response = @sdk_configuration.hooks.after_success(
127
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
128
+ hook_ctx: hook_ctx
129
+ ),
130
+ response: http_response
131
+ )
132
+ end
133
+
134
+ if http_response.nil?
135
+ raise error if !error.nil?
136
+ raise "no response"
137
+ end
138
+ end
139
+
140
+ content_type = http_response.headers.fetch("Content-Type", "application/octet-stream")
141
+ if Utils.match_status_code(http_response.status, ["200"])
142
+ if Utils.match_content_type(content_type, "application/json")
143
+ @sdk_configuration.hooks.after_success(
144
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
145
+ hook_ctx: hook_ctx
146
+ ),
147
+ response: http_response
148
+ )
149
+ response_data = http_response.env.response_body
150
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Shared::CustomPoliciesResponse)
151
+
152
+ return obj
153
+ else
154
+ raise(
155
+ ::CldProvisioning::Models::Errors::APIError.new(
156
+ status_code: http_response.status,
157
+ body: http_response.env.response_body,
158
+ raw_response: http_response
159
+ ),
160
+ "Unknown content type received"
161
+ )
162
+ end
163
+ elsif Utils.match_status_code(http_response.status, ["401", "403"])
164
+ if Utils.match_content_type(content_type, "application/json")
165
+ @sdk_configuration.hooks.after_success(
166
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
167
+ hook_ctx: hook_ctx
168
+ ),
169
+ response: http_response
170
+ )
171
+ response_data = http_response.env.response_body
172
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::PermissionsErrorResponse)
173
+ raise obj
174
+ else
175
+ raise(
176
+ ::CldProvisioning::Models::Errors::APIError.new(
177
+ status_code: http_response.status,
178
+ body: http_response.env.response_body,
179
+ raw_response: http_response
180
+ ),
181
+ "Unknown content type received"
182
+ )
183
+ end
184
+ elsif Utils.match_status_code(http_response.status, ["500"])
185
+ if Utils.match_content_type(content_type, "application/json")
186
+ @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::PermissionsErrorResponse)
194
+ raise obj
195
+ else
196
+ raise(
197
+ ::CldProvisioning::Models::Errors::APIError.new(
198
+ status_code: http_response.status,
199
+ body: http_response.env.response_body,
200
+ raw_response: http_response
201
+ ),
202
+ "Unknown content type received"
203
+ )
204
+ end
205
+ elsif Utils.match_status_code(http_response.status, ["4XX"])
206
+ raise(
207
+ ::CldProvisioning::Models::Errors::APIError.new(
208
+ status_code: http_response.status,
209
+ body: http_response.env.response_body,
210
+ raw_response: http_response
211
+ ),
212
+ "API error occurred"
213
+ )
214
+ elsif Utils.match_status_code(http_response.status, ["5XX"])
215
+ raise(
216
+ ::CldProvisioning::Models::Errors::APIError.new(
217
+ status_code: http_response.status,
218
+ body: http_response.env.response_body,
219
+ raw_response: http_response
220
+ ),
221
+ "API error occurred"
222
+ )
223
+ else
224
+ raise(
225
+ ::CldProvisioning::Models::Errors::APIError.new(
226
+ status_code: http_response.status,
227
+ body: http_response.env.response_body,
228
+ raw_response: http_response
229
+ ),
230
+ "Unknown status code received"
231
+ )
232
+
233
+ end
234
+ end
235
+
236
+ sig {
237
+ params(
238
+ custom_policy: Models::Shared::CustomPolicy,
239
+ account_id: T.nilable(::String),
240
+ timeout_ms: T.nilable(Integer),
241
+ http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])
242
+ )
243
+ .returns(Models::Shared::CustomPolicyResponse)
244
+ }
245
+ def create(custom_policy:, account_id: nil, timeout_ms: nil, http_headers: nil)
246
+ # create - Create custom policy
247
+ # Create a new custom policy with a statement defined in Cedar. This policy specifies permissions for a principal, allowing a specific action on a designated resource, within a particular scope.
248
+ # https://cloudinary.com/documentation/permissions_api_guide#create_a_policy_statement - Learn more about creating a new custom policy
249
+ request = Models::Operations::CreateCustomPolicyRequest.new(
250
+ custom_policy: custom_policy,
251
+ account_id: account_id
252
+ )
253
+ url, params = @sdk_configuration.get_server_details
254
+ base_url = Utils.template_url(url, params)
255
+ url = Utils.generate_url(
256
+ Models::Operations::CreateCustomPolicyRequest,
257
+ base_url,
258
+ "/v2/accounts/{account_id}/permissions/policies/custom",
259
+ request,
260
+ @sdk_configuration.globals
261
+ )
262
+ headers = {}
263
+ headers = T.cast(headers, T::Hash[String, String])
264
+ req_content_type, data, form = Utils.serialize_request_body(request, false, false, :custom_policy, :json)
265
+ headers["content-type"] = req_content_type
266
+ raise StandardError, "request body is required" if data.nil? && form.nil?
267
+
268
+ if form && !form.empty?
269
+ body = Utils.encode_form(form)
270
+ elsif Utils.match_content_type(req_content_type, "application/x-www-form-urlencoded")
271
+ body = URI.encode_www_form(T.cast(data, T::Hash[Symbol, Object]))
272
+ else
273
+ body = data
274
+ end
275
+
276
+ headers["Accept"] = "application/json"
277
+ headers["user-agent"] = @sdk_configuration.user_agent
278
+
279
+ security = @sdk_configuration.security_source&.call
280
+
281
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
282
+ timeout ||= @sdk_configuration.timeout
283
+
284
+ connection = @sdk_configuration.client
285
+
286
+ hook_ctx = SDKHooks::HookContext.new(
287
+ config: @sdk_configuration,
288
+ base_url: base_url,
289
+ oauth2_scopes: nil,
290
+ operation_id: "createCustomPolicy",
291
+ security_source: @sdk_configuration.security_source
292
+ )
293
+
294
+ error = T.let(nil, T.nilable(StandardError))
295
+ http_response = T.let(nil, T.nilable(Faraday::Response))
296
+
297
+ begin
298
+ http_response = T.must(connection).post(url) do |req|
299
+ req.body = body
300
+ req.headers.merge!(headers)
301
+ req.options.timeout = timeout unless timeout.nil?
302
+ Utils.configure_request_security(req, security)
303
+ http_headers&.each do |key, value|
304
+ req.headers[key.to_s] = value
305
+ end
306
+
307
+ @sdk_configuration.hooks.before_request(
308
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
309
+ hook_ctx: hook_ctx
310
+ ),
311
+ request: req
312
+ )
313
+ end
314
+
315
+ rescue StandardError => e
316
+ error = e
317
+ ensure
318
+ if http_response.nil? || Utils.error_status?(http_response.status)
319
+ http_response = @sdk_configuration.hooks.after_error(
320
+ error: error,
321
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
322
+ hook_ctx: hook_ctx
323
+ ),
324
+ response: http_response
325
+ )
326
+ else
327
+ http_response = @sdk_configuration.hooks.after_success(
328
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
329
+ hook_ctx: hook_ctx
330
+ ),
331
+ response: http_response
332
+ )
333
+ end
334
+
335
+ if http_response.nil?
336
+ raise error if !error.nil?
337
+ raise "no response"
338
+ end
339
+ end
340
+
341
+ content_type = http_response.headers.fetch("Content-Type", "application/octet-stream")
342
+ if Utils.match_status_code(http_response.status, ["201"])
343
+ if Utils.match_content_type(content_type, "application/json")
344
+ @sdk_configuration.hooks.after_success(
345
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
346
+ hook_ctx: hook_ctx
347
+ ),
348
+ response: http_response
349
+ )
350
+ response_data = http_response.env.response_body
351
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Shared::CustomPolicyResponse)
352
+
353
+ return obj
354
+ else
355
+ raise(
356
+ ::CldProvisioning::Models::Errors::APIError.new(
357
+ status_code: http_response.status,
358
+ body: http_response.env.response_body,
359
+ raw_response: http_response
360
+ ),
361
+ "Unknown content type received"
362
+ )
363
+ end
364
+ elsif Utils.match_status_code(http_response.status, ["400", "401", "403", "409"])
365
+ if Utils.match_content_type(content_type, "application/json")
366
+ @sdk_configuration.hooks.after_success(
367
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
368
+ hook_ctx: hook_ctx
369
+ ),
370
+ response: http_response
371
+ )
372
+ response_data = http_response.env.response_body
373
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::PermissionsErrorResponse)
374
+ raise obj
375
+ else
376
+ raise(
377
+ ::CldProvisioning::Models::Errors::APIError.new(
378
+ status_code: http_response.status,
379
+ body: http_response.env.response_body,
380
+ raw_response: http_response
381
+ ),
382
+ "Unknown content type received"
383
+ )
384
+ end
385
+ elsif Utils.match_status_code(http_response.status, ["500"])
386
+ if Utils.match_content_type(content_type, "application/json")
387
+ @sdk_configuration.hooks.after_success(
388
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
389
+ hook_ctx: hook_ctx
390
+ ),
391
+ response: http_response
392
+ )
393
+ response_data = http_response.env.response_body
394
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::PermissionsErrorResponse)
395
+ raise obj
396
+ else
397
+ raise(
398
+ ::CldProvisioning::Models::Errors::APIError.new(
399
+ status_code: http_response.status,
400
+ body: http_response.env.response_body,
401
+ raw_response: http_response
402
+ ),
403
+ "Unknown content type received"
404
+ )
405
+ end
406
+ elsif Utils.match_status_code(http_response.status, ["4XX"])
407
+ raise(
408
+ ::CldProvisioning::Models::Errors::APIError.new(
409
+ status_code: http_response.status,
410
+ body: http_response.env.response_body,
411
+ raw_response: http_response
412
+ ),
413
+ "API error occurred"
414
+ )
415
+ elsif Utils.match_status_code(http_response.status, ["5XX"])
416
+ raise(
417
+ ::CldProvisioning::Models::Errors::APIError.new(
418
+ status_code: http_response.status,
419
+ body: http_response.env.response_body,
420
+ raw_response: http_response
421
+ ),
422
+ "API error occurred"
423
+ )
424
+ else
425
+ raise(
426
+ ::CldProvisioning::Models::Errors::APIError.new(
427
+ status_code: http_response.status,
428
+ body: http_response.env.response_body,
429
+ raw_response: http_response
430
+ ),
431
+ "Unknown status code received"
432
+ )
433
+
434
+ end
435
+ end
436
+
437
+ sig {
438
+ params(
439
+ policy_id: ::String,
440
+ account_id: T.nilable(::String),
441
+ timeout_ms: T.nilable(Integer),
442
+ http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])
443
+ )
444
+ .returns(Models::Shared::CustomPolicyResponse)
445
+ }
446
+ def get(policy_id:, account_id: nil, timeout_ms: nil, http_headers: nil)
447
+ # get - Get custom policy
448
+ # Get a specific custom policy.
449
+ request = Models::Operations::GetCustomPolicyRequest.new(
450
+ policy_id: policy_id,
451
+ account_id: account_id
452
+ )
453
+ url, params = @sdk_configuration.get_server_details
454
+ base_url = Utils.template_url(url, params)
455
+ url = Utils.generate_url(
456
+ Models::Operations::GetCustomPolicyRequest,
457
+ base_url,
458
+ "/v2/accounts/{account_id}/permissions/policies/custom/{policy_id}",
459
+ request,
460
+ @sdk_configuration.globals
461
+ )
462
+ headers = {}
463
+ headers = T.cast(headers, T::Hash[String, String])
464
+ headers["Accept"] = "application/json"
465
+ headers["user-agent"] = @sdk_configuration.user_agent
466
+
467
+ security = @sdk_configuration.security_source&.call
468
+
469
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
470
+ timeout ||= @sdk_configuration.timeout
471
+
472
+ connection = @sdk_configuration.client
473
+
474
+ hook_ctx = SDKHooks::HookContext.new(
475
+ config: @sdk_configuration,
476
+ base_url: base_url,
477
+ oauth2_scopes: nil,
478
+ operation_id: "getCustomPolicy",
479
+ security_source: @sdk_configuration.security_source
480
+ )
481
+
482
+ error = T.let(nil, T.nilable(StandardError))
483
+ http_response = T.let(nil, T.nilable(Faraday::Response))
484
+
485
+ begin
486
+ http_response = T.must(connection).get(url) do |req|
487
+ req.headers.merge!(headers)
488
+ req.options.timeout = timeout unless timeout.nil?
489
+ Utils.configure_request_security(req, security)
490
+ http_headers&.each do |key, value|
491
+ req.headers[key.to_s] = value
492
+ end
493
+
494
+ @sdk_configuration.hooks.before_request(
495
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
496
+ hook_ctx: hook_ctx
497
+ ),
498
+ request: req
499
+ )
500
+ end
501
+
502
+ rescue StandardError => e
503
+ error = e
504
+ ensure
505
+ if http_response.nil? || Utils.error_status?(http_response.status)
506
+ http_response = @sdk_configuration.hooks.after_error(
507
+ error: error,
508
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
509
+ hook_ctx: hook_ctx
510
+ ),
511
+ response: http_response
512
+ )
513
+ else
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
+ end
521
+
522
+ if http_response.nil?
523
+ raise error if !error.nil?
524
+ raise "no response"
525
+ end
526
+ end
527
+
528
+ content_type = http_response.headers.fetch("Content-Type", "application/octet-stream")
529
+ if Utils.match_status_code(http_response.status, ["200"])
530
+ if Utils.match_content_type(content_type, "application/json")
531
+ @sdk_configuration.hooks.after_success(
532
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
533
+ hook_ctx: hook_ctx
534
+ ),
535
+ response: http_response
536
+ )
537
+ response_data = http_response.env.response_body
538
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Shared::CustomPolicyResponse)
539
+
540
+ return obj
541
+ else
542
+ raise(
543
+ ::CldProvisioning::Models::Errors::APIError.new(
544
+ status_code: http_response.status,
545
+ body: http_response.env.response_body,
546
+ raw_response: http_response
547
+ ),
548
+ "Unknown content type received"
549
+ )
550
+ end
551
+ elsif Utils.match_status_code(http_response.status, ["401", "403", "404"])
552
+ if Utils.match_content_type(content_type, "application/json")
553
+ @sdk_configuration.hooks.after_success(
554
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
555
+ hook_ctx: hook_ctx
556
+ ),
557
+ response: http_response
558
+ )
559
+ response_data = http_response.env.response_body
560
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::PermissionsErrorResponse)
561
+ raise obj
562
+ else
563
+ raise(
564
+ ::CldProvisioning::Models::Errors::APIError.new(
565
+ status_code: http_response.status,
566
+ body: http_response.env.response_body,
567
+ raw_response: http_response
568
+ ),
569
+ "Unknown content type received"
570
+ )
571
+ end
572
+ elsif Utils.match_status_code(http_response.status, ["4XX"])
573
+ raise(
574
+ ::CldProvisioning::Models::Errors::APIError.new(
575
+ status_code: http_response.status,
576
+ body: http_response.env.response_body,
577
+ raw_response: http_response
578
+ ),
579
+ "API error occurred"
580
+ )
581
+ elsif Utils.match_status_code(http_response.status, ["5XX"])
582
+ raise(
583
+ ::CldProvisioning::Models::Errors::APIError.new(
584
+ status_code: http_response.status,
585
+ body: http_response.env.response_body,
586
+ raw_response: http_response
587
+ ),
588
+ "API error occurred"
589
+ )
590
+ else
591
+ raise(
592
+ ::CldProvisioning::Models::Errors::APIError.new(
593
+ status_code: http_response.status,
594
+ body: http_response.env.response_body,
595
+ raw_response: http_response
596
+ ),
597
+ "Unknown status code received"
598
+ )
599
+
600
+ end
601
+ end
602
+
603
+ sig {
604
+ params(
605
+ policy_id: ::String,
606
+ update_custom_policy: Models::Shared::UpdateCustomPolicy,
607
+ account_id: T.nilable(::String),
608
+ timeout_ms: T.nilable(Integer),
609
+ http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])
610
+ )
611
+ .returns(Models::Shared::CustomPolicyResponse)
612
+ }
613
+ def update(policy_id:, update_custom_policy:, account_id: nil, timeout_ms: nil, http_headers: nil)
614
+ # update - Update custom policy
615
+ # Update a specific custom policy by providing the entire policy entity in the request body. Ensure the new `policy_statement` includes modifications. Existing permissions will be replaced with the new data.
616
+ #
617
+ # *Note:* Updating a policy with an identical `policy_statement` will trigger a 409 error.
618
+ #
619
+ request = Models::Operations::UpdateCustomPolicyRequest.new(
620
+ policy_id: policy_id,
621
+ update_custom_policy: update_custom_policy,
622
+ account_id: account_id
623
+ )
624
+ url, params = @sdk_configuration.get_server_details
625
+ base_url = Utils.template_url(url, params)
626
+ url = Utils.generate_url(
627
+ Models::Operations::UpdateCustomPolicyRequest,
628
+ base_url,
629
+ "/v2/accounts/{account_id}/permissions/policies/custom/{policy_id}",
630
+ request,
631
+ @sdk_configuration.globals
632
+ )
633
+ headers = {}
634
+ headers = T.cast(headers, T::Hash[String, String])
635
+ req_content_type, data, form = Utils.serialize_request_body(request, false, false, :update_custom_policy, :json)
636
+ headers["content-type"] = req_content_type
637
+ raise StandardError, "request body is required" if data.nil? && form.nil?
638
+
639
+ if form && !form.empty?
640
+ body = Utils.encode_form(form)
641
+ elsif Utils.match_content_type(req_content_type, "application/x-www-form-urlencoded")
642
+ body = URI.encode_www_form(T.cast(data, T::Hash[Symbol, Object]))
643
+ else
644
+ body = data
645
+ end
646
+
647
+ headers["Accept"] = "application/json"
648
+ headers["user-agent"] = @sdk_configuration.user_agent
649
+
650
+ security = @sdk_configuration.security_source&.call
651
+
652
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
653
+ timeout ||= @sdk_configuration.timeout
654
+
655
+ connection = @sdk_configuration.client
656
+
657
+ hook_ctx = SDKHooks::HookContext.new(
658
+ config: @sdk_configuration,
659
+ base_url: base_url,
660
+ oauth2_scopes: nil,
661
+ operation_id: "updateCustomPolicy",
662
+ security_source: @sdk_configuration.security_source
663
+ )
664
+
665
+ error = T.let(nil, T.nilable(StandardError))
666
+ http_response = T.let(nil, T.nilable(Faraday::Response))
667
+
668
+ begin
669
+ http_response = T.must(connection).put(url) do |req|
670
+ req.body = body
671
+ req.headers.merge!(headers)
672
+ req.options.timeout = timeout unless timeout.nil?
673
+ Utils.configure_request_security(req, security)
674
+ http_headers&.each do |key, value|
675
+ req.headers[key.to_s] = value
676
+ end
677
+
678
+ @sdk_configuration.hooks.before_request(
679
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
680
+ hook_ctx: hook_ctx
681
+ ),
682
+ request: req
683
+ )
684
+ end
685
+
686
+ rescue StandardError => e
687
+ error = e
688
+ ensure
689
+ if http_response.nil? || Utils.error_status?(http_response.status)
690
+ http_response = @sdk_configuration.hooks.after_error(
691
+ error: error,
692
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
693
+ hook_ctx: hook_ctx
694
+ ),
695
+ response: http_response
696
+ )
697
+ else
698
+ http_response = @sdk_configuration.hooks.after_success(
699
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
700
+ hook_ctx: hook_ctx
701
+ ),
702
+ response: http_response
703
+ )
704
+ end
705
+
706
+ if http_response.nil?
707
+ raise error if !error.nil?
708
+ raise "no response"
709
+ end
710
+ end
711
+
712
+ content_type = http_response.headers.fetch("Content-Type", "application/octet-stream")
713
+ if Utils.match_status_code(http_response.status, ["200"])
714
+ if Utils.match_content_type(content_type, "application/json")
715
+ @sdk_configuration.hooks.after_success(
716
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
717
+ hook_ctx: hook_ctx
718
+ ),
719
+ response: http_response
720
+ )
721
+ response_data = http_response.env.response_body
722
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Shared::CustomPolicyResponse)
723
+
724
+ return obj
725
+ else
726
+ raise(
727
+ ::CldProvisioning::Models::Errors::APIError.new(
728
+ status_code: http_response.status,
729
+ body: http_response.env.response_body,
730
+ raw_response: http_response
731
+ ),
732
+ "Unknown content type received"
733
+ )
734
+ end
735
+ elsif Utils.match_status_code(http_response.status, ["400", "401", "403", "404", "409"])
736
+ if Utils.match_content_type(content_type, "application/json")
737
+ @sdk_configuration.hooks.after_success(
738
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
739
+ hook_ctx: hook_ctx
740
+ ),
741
+ response: http_response
742
+ )
743
+ response_data = http_response.env.response_body
744
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::PermissionsErrorResponse)
745
+ raise obj
746
+ else
747
+ raise(
748
+ ::CldProvisioning::Models::Errors::APIError.new(
749
+ status_code: http_response.status,
750
+ body: http_response.env.response_body,
751
+ raw_response: http_response
752
+ ),
753
+ "Unknown content type received"
754
+ )
755
+ end
756
+ elsif Utils.match_status_code(http_response.status, ["500"])
757
+ if Utils.match_content_type(content_type, "application/json")
758
+ @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::PermissionsErrorResponse)
766
+ raise obj
767
+ else
768
+ raise(
769
+ ::CldProvisioning::Models::Errors::APIError.new(
770
+ status_code: http_response.status,
771
+ body: http_response.env.response_body,
772
+ raw_response: http_response
773
+ ),
774
+ "Unknown content type received"
775
+ )
776
+ end
777
+ elsif Utils.match_status_code(http_response.status, ["4XX"])
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
+ "API error occurred"
785
+ )
786
+ elsif Utils.match_status_code(http_response.status, ["5XX"])
787
+ raise(
788
+ ::CldProvisioning::Models::Errors::APIError.new(
789
+ status_code: http_response.status,
790
+ body: http_response.env.response_body,
791
+ raw_response: http_response
792
+ ),
793
+ "API error occurred"
794
+ )
795
+ else
796
+ raise(
797
+ ::CldProvisioning::Models::Errors::APIError.new(
798
+ status_code: http_response.status,
799
+ body: http_response.env.response_body,
800
+ raw_response: http_response
801
+ ),
802
+ "Unknown status code received"
803
+ )
804
+
805
+ end
806
+ end
807
+
808
+ sig {
809
+ params(
810
+ policy_id: ::String,
811
+ account_id: T.nilable(::String),
812
+ timeout_ms: T.nilable(Integer),
813
+ http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])
814
+ )
815
+ .void
816
+ }
817
+ def delete(policy_id:, account_id: nil, timeout_ms: nil, http_headers: nil)
818
+ # delete - Delete custom policy
819
+ # Delete a specific custom policy.
820
+ request = Models::Operations::DeleteCustomPolicyRequest.new(
821
+ policy_id: policy_id,
822
+ account_id: account_id
823
+ )
824
+ url, params = @sdk_configuration.get_server_details
825
+ base_url = Utils.template_url(url, params)
826
+ url = Utils.generate_url(
827
+ Models::Operations::DeleteCustomPolicyRequest,
828
+ base_url,
829
+ "/v2/accounts/{account_id}/permissions/policies/custom/{policy_id}",
830
+ request,
831
+ @sdk_configuration.globals
832
+ )
833
+ headers = {}
834
+ headers = T.cast(headers, T::Hash[String, String])
835
+ headers["Accept"] = "application/json"
836
+ headers["user-agent"] = @sdk_configuration.user_agent
837
+
838
+ security = @sdk_configuration.security_source&.call
839
+
840
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
841
+ timeout ||= @sdk_configuration.timeout
842
+
843
+ connection = @sdk_configuration.client
844
+
845
+ hook_ctx = SDKHooks::HookContext.new(
846
+ config: @sdk_configuration,
847
+ base_url: base_url,
848
+ oauth2_scopes: nil,
849
+ operation_id: "deleteCustomPolicy",
850
+ security_source: @sdk_configuration.security_source
851
+ )
852
+
853
+ error = T.let(nil, T.nilable(StandardError))
854
+ http_response = T.let(nil, T.nilable(Faraday::Response))
855
+
856
+ begin
857
+ http_response = T.must(connection).delete(url) do |req|
858
+ req.headers.merge!(headers)
859
+ req.options.timeout = timeout unless timeout.nil?
860
+ Utils.configure_request_security(req, security)
861
+ http_headers&.each do |key, value|
862
+ req.headers[key.to_s] = value
863
+ end
864
+
865
+ @sdk_configuration.hooks.before_request(
866
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
867
+ hook_ctx: hook_ctx
868
+ ),
869
+ request: req
870
+ )
871
+ end
872
+
873
+ rescue StandardError => e
874
+ error = e
875
+ ensure
876
+ if http_response.nil? || Utils.error_status?(http_response.status)
877
+ http_response = @sdk_configuration.hooks.after_error(
878
+ error: error,
879
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
880
+ hook_ctx: hook_ctx
881
+ ),
882
+ response: http_response
883
+ )
884
+ else
885
+ http_response = @sdk_configuration.hooks.after_success(
886
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
887
+ hook_ctx: hook_ctx
888
+ ),
889
+ response: http_response
890
+ )
891
+ end
892
+
893
+ if http_response.nil?
894
+ raise error if !error.nil?
895
+ raise "no response"
896
+ end
897
+ end
898
+
899
+ content_type = http_response.headers.fetch("Content-Type", "application/octet-stream")
900
+ if Utils.match_status_code(http_response.status, ["204"])
901
+ @sdk_configuration.hooks.after_success(
902
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
903
+ hook_ctx: hook_ctx
904
+ ),
905
+ response: http_response
906
+ )
907
+ return
908
+ elsif Utils.match_status_code(http_response.status, ["401", "403", "404"])
909
+ if Utils.match_content_type(content_type, "application/json")
910
+ @sdk_configuration.hooks.after_success(
911
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
912
+ hook_ctx: hook_ctx
913
+ ),
914
+ response: http_response
915
+ )
916
+ return
917
+ else
918
+ raise(
919
+ ::CldProvisioning::Models::Errors::APIError.new(
920
+ status_code: http_response.status,
921
+ body: http_response.env.response_body,
922
+ raw_response: http_response
923
+ ),
924
+ "Unknown content type received"
925
+ )
926
+ end
927
+ elsif Utils.match_status_code(http_response.status, ["4XX"])
928
+ raise(
929
+ ::CldProvisioning::Models::Errors::APIError.new(
930
+ status_code: http_response.status,
931
+ body: http_response.env.response_body,
932
+ raw_response: http_response
933
+ ),
934
+ "API error occurred"
935
+ )
936
+ elsif Utils.match_status_code(http_response.status, ["5XX"])
937
+ raise(
938
+ ::CldProvisioning::Models::Errors::APIError.new(
939
+ status_code: http_response.status,
940
+ body: http_response.env.response_body,
941
+ raw_response: http_response
942
+ ),
943
+ "API error occurred"
944
+ )
945
+ else
946
+ raise(
947
+ ::CldProvisioning::Models::Errors::APIError.new(
948
+ status_code: http_response.status,
949
+ body: http_response.env.response_body,
950
+ raw_response: http_response
951
+ ),
952
+ "Unknown status code received"
953
+ )
954
+
955
+ end
956
+ end
957
+ end
958
+ end