imagekitio 3.0.0 → 4.0.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 (483) hide show
  1. checksums.yaml +4 -4
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +116 -0
  4. data/README.md +538 -679
  5. data/SECURITY.md +27 -0
  6. data/lib/imagekitio/client.rb +122 -195
  7. data/lib/imagekitio/errors.rb +226 -2
  8. data/lib/imagekitio/file_part.rb +58 -0
  9. data/lib/imagekitio/helpers/crypto_utils.rb +25 -0
  10. data/lib/imagekitio/helpers/helper.rb +689 -0
  11. data/lib/imagekitio/helpers/transformation_utils.rb +164 -0
  12. data/lib/imagekitio/helpers/uuid_utils.rb +18 -0
  13. data/lib/imagekitio/internal/transport/base_client.rb +567 -0
  14. data/lib/imagekitio/internal/transport/pooled_net_requester.rb +217 -0
  15. data/lib/imagekitio/internal/type/array_of.rb +168 -0
  16. data/lib/imagekitio/internal/type/base_model.rb +530 -0
  17. data/lib/imagekitio/internal/type/base_page.rb +55 -0
  18. data/lib/imagekitio/internal/type/boolean.rb +77 -0
  19. data/lib/imagekitio/internal/type/converter.rb +327 -0
  20. data/lib/imagekitio/internal/type/enum.rb +156 -0
  21. data/lib/imagekitio/internal/type/file_input.rb +111 -0
  22. data/lib/imagekitio/internal/type/hash_of.rb +188 -0
  23. data/lib/imagekitio/internal/type/request_parameters.rb +42 -0
  24. data/lib/imagekitio/internal/type/union.rb +250 -0
  25. data/lib/imagekitio/internal/type/unknown.rb +81 -0
  26. data/lib/imagekitio/internal/util.rb +915 -0
  27. data/lib/imagekitio/internal.rb +20 -0
  28. data/lib/imagekitio/models/accounts/origin_create_params.rb +24 -0
  29. data/lib/imagekitio/models/accounts/origin_delete_params.rb +16 -0
  30. data/lib/imagekitio/models/accounts/origin_get_params.rb +16 -0
  31. data/lib/imagekitio/models/accounts/origin_list_params.rb +16 -0
  32. data/lib/imagekitio/models/accounts/origin_list_response.rb +11 -0
  33. data/lib/imagekitio/models/accounts/origin_request.rb +547 -0
  34. data/lib/imagekitio/models/accounts/origin_response.rb +568 -0
  35. data/lib/imagekitio/models/accounts/origin_update_params.rb +24 -0
  36. data/lib/imagekitio/models/accounts/url_endpoint_create_params.rb +16 -0
  37. data/lib/imagekitio/models/accounts/url_endpoint_delete_params.rb +16 -0
  38. data/lib/imagekitio/models/accounts/url_endpoint_get_params.rb +16 -0
  39. data/lib/imagekitio/models/accounts/url_endpoint_list_params.rb +16 -0
  40. data/lib/imagekitio/models/accounts/url_endpoint_list_response.rb +11 -0
  41. data/lib/imagekitio/models/accounts/url_endpoint_request.rb +110 -0
  42. data/lib/imagekitio/models/accounts/url_endpoint_response.rb +123 -0
  43. data/lib/imagekitio/models/accounts/url_endpoint_update_params.rb +16 -0
  44. data/lib/imagekitio/models/accounts/usage_get_params.rb +37 -0
  45. data/lib/imagekitio/models/accounts/usage_get_response.rb +51 -0
  46. data/lib/imagekitio/models/asset_list_params.rb +158 -0
  47. data/lib/imagekitio/models/asset_list_response.rb +24 -0
  48. data/lib/imagekitio/models/base_overlay.rb +21 -0
  49. data/lib/imagekitio/models/base_webhook_event.rb +24 -0
  50. data/lib/imagekitio/models/beta/v2/file_upload_params.rb +510 -0
  51. data/lib/imagekitio/models/beta/v2/file_upload_response.rb +618 -0
  52. data/lib/imagekitio/models/cache/invalidation_create_params.rb +27 -0
  53. data/lib/imagekitio/models/cache/invalidation_create_response.rb +23 -0
  54. data/lib/imagekitio/models/cache/invalidation_get_params.rb +16 -0
  55. data/lib/imagekitio/models/cache/invalidation_get_response.rb +35 -0
  56. data/lib/imagekitio/models/custom_metadata_field.rb +243 -0
  57. data/lib/imagekitio/models/custom_metadata_field_create_params.rb +238 -0
  58. data/lib/imagekitio/models/custom_metadata_field_delete_params.rb +14 -0
  59. data/lib/imagekitio/models/custom_metadata_field_delete_response.rb +10 -0
  60. data/lib/imagekitio/models/custom_metadata_field_list_params.rb +36 -0
  61. data/lib/imagekitio/models/custom_metadata_field_list_response.rb +9 -0
  62. data/lib/imagekitio/models/custom_metadata_field_update_params.rb +212 -0
  63. data/lib/imagekitio/models/extensions.rb +136 -0
  64. data/lib/imagekitio/models/file.rb +497 -0
  65. data/lib/imagekitio/models/file_copy_params.rb +43 -0
  66. data/lib/imagekitio/models/file_copy_response.rb +10 -0
  67. data/lib/imagekitio/models/file_delete_params.rb +14 -0
  68. data/lib/imagekitio/models/file_get_params.rb +14 -0
  69. data/lib/imagekitio/models/file_move_params.rb +33 -0
  70. data/lib/imagekitio/models/file_move_response.rb +10 -0
  71. data/lib/imagekitio/models/file_rename_params.rb +61 -0
  72. data/lib/imagekitio/models/file_rename_response.rb +21 -0
  73. data/lib/imagekitio/models/file_update_params.rb +22 -0
  74. data/lib/imagekitio/models/file_update_response.rb +104 -0
  75. data/lib/imagekitio/models/file_upload_params.rb +540 -0
  76. data/lib/imagekitio/models/file_upload_response.rb +611 -0
  77. data/lib/imagekitio/models/files/bulk_add_tags_params.rb +35 -0
  78. data/lib/imagekitio/models/files/bulk_add_tags_response.rb +24 -0
  79. data/lib/imagekitio/models/files/bulk_delete_params.rb +27 -0
  80. data/lib/imagekitio/models/files/bulk_delete_response.rb +24 -0
  81. data/lib/imagekitio/models/files/bulk_remove_ai_tags_params.rb +35 -0
  82. data/lib/imagekitio/models/files/bulk_remove_ai_tags_response.rb +24 -0
  83. data/lib/imagekitio/models/files/bulk_remove_tags_params.rb +35 -0
  84. data/lib/imagekitio/models/files/bulk_remove_tags_response.rb +24 -0
  85. data/lib/imagekitio/models/files/metadata_get_from_url_params.rb +28 -0
  86. data/lib/imagekitio/models/files/metadata_get_params.rb +16 -0
  87. data/lib/imagekitio/models/files/version_delete_params.rb +22 -0
  88. data/lib/imagekitio/models/files/version_delete_response.rb +12 -0
  89. data/lib/imagekitio/models/files/version_get_params.rb +22 -0
  90. data/lib/imagekitio/models/files/version_list_params.rb +16 -0
  91. data/lib/imagekitio/models/files/version_list_response.rb +10 -0
  92. data/lib/imagekitio/models/files/version_restore_params.rb +22 -0
  93. data/lib/imagekitio/models/folder.rb +76 -0
  94. data/lib/imagekitio/models/folder_copy_params.rb +44 -0
  95. data/lib/imagekitio/models/folder_copy_response.rb +23 -0
  96. data/lib/imagekitio/models/folder_create_params.rb +43 -0
  97. data/lib/imagekitio/models/folder_create_response.rb +10 -0
  98. data/lib/imagekitio/models/folder_delete_params.rb +25 -0
  99. data/lib/imagekitio/models/folder_delete_response.rb +10 -0
  100. data/lib/imagekitio/models/folder_move_params.rb +34 -0
  101. data/lib/imagekitio/models/folder_move_response.rb +23 -0
  102. data/lib/imagekitio/models/folder_rename_params.rb +59 -0
  103. data/lib/imagekitio/models/folder_rename_response.rb +23 -0
  104. data/lib/imagekitio/models/folders/job_get_params.rb +16 -0
  105. data/lib/imagekitio/models/folders/job_get_response.rb +74 -0
  106. data/lib/imagekitio/models/get_image_attributes_options.rb +68 -0
  107. data/lib/imagekitio/models/image_overlay.rb +66 -0
  108. data/lib/imagekitio/models/metadata.rb +483 -0
  109. data/lib/imagekitio/models/overlay.rb +28 -0
  110. data/lib/imagekitio/models/overlay_position.rb +101 -0
  111. data/lib/imagekitio/models/overlay_timing.rb +97 -0
  112. data/lib/imagekitio/models/responsive_image_attributes.rb +48 -0
  113. data/lib/imagekitio/models/solid_color_overlay.rb +42 -0
  114. data/lib/imagekitio/models/solid_color_overlay_transformation.rb +135 -0
  115. data/lib/imagekitio/models/src_options.rb +96 -0
  116. data/lib/imagekitio/models/streaming_resolution.rb +22 -0
  117. data/lib/imagekitio/models/subtitle_overlay.rb +64 -0
  118. data/lib/imagekitio/models/subtitle_overlay_transformation.rb +113 -0
  119. data/lib/imagekitio/models/text_overlay.rb +65 -0
  120. data/lib/imagekitio/models/text_overlay_transformation.rb +267 -0
  121. data/lib/imagekitio/models/transformation.rb +1100 -0
  122. data/lib/imagekitio/models/transformation_position.rb +19 -0
  123. data/lib/imagekitio/models/unsafe_unwrap_webhook_event.rb +36 -0
  124. data/lib/imagekitio/models/unwrap_webhook_event.rb +36 -0
  125. data/lib/imagekitio/models/update_file_request.rb +164 -0
  126. data/lib/imagekitio/models/upload_post_transform_error_event.rb +180 -0
  127. data/lib/imagekitio/models/upload_post_transform_success_event.rb +143 -0
  128. data/lib/imagekitio/models/upload_pre_transform_error_event.rb +108 -0
  129. data/lib/imagekitio/models/upload_pre_transform_success_event.rb +690 -0
  130. data/lib/imagekitio/models/video_overlay.rb +64 -0
  131. data/lib/imagekitio/models/video_transformation_accepted_event.rb +279 -0
  132. data/lib/imagekitio/models/video_transformation_error_event.rb +326 -0
  133. data/lib/imagekitio/models/video_transformation_ready_event.rb +379 -0
  134. data/lib/imagekitio/models/webhook_unsafe_unwrap_params.rb +14 -0
  135. data/lib/imagekitio/models/webhook_unwrap_params.rb +14 -0
  136. data/lib/imagekitio/models.rb +160 -0
  137. data/lib/imagekitio/request_options.rb +77 -0
  138. data/lib/imagekitio/resources/accounts/origins.rb +145 -0
  139. data/lib/imagekitio/resources/accounts/url_endpoints.rb +151 -0
  140. data/lib/imagekitio/resources/accounts/usage.rb +46 -0
  141. data/lib/imagekitio/resources/accounts.rb +26 -0
  142. data/lib/imagekitio/resources/assets.rb +54 -0
  143. data/lib/imagekitio/resources/beta/v2/files.rb +110 -0
  144. data/lib/imagekitio/resources/beta/v2.rb +20 -0
  145. data/lib/imagekitio/resources/beta.rb +18 -0
  146. data/lib/imagekitio/resources/cache/invalidation.rb +66 -0
  147. data/lib/imagekitio/resources/cache.rb +18 -0
  148. data/lib/imagekitio/resources/custom_metadata_fields.rb +133 -0
  149. data/lib/imagekitio/resources/files/bulk.rb +131 -0
  150. data/lib/imagekitio/resources/files/metadata.rb +69 -0
  151. data/lib/imagekitio/resources/files/versions.rb +132 -0
  152. data/lib/imagekitio/resources/files.rb +305 -0
  153. data/lib/imagekitio/resources/folders/job.rb +39 -0
  154. data/lib/imagekitio/resources/folders.rb +166 -0
  155. data/lib/imagekitio/resources/webhooks.rb +30 -0
  156. data/lib/imagekitio/version.rb +5 -0
  157. data/lib/imagekitio.rb +181 -13
  158. data/manifest.yaml +15 -0
  159. data/rbi/imagekitio/client.rbi +92 -0
  160. data/rbi/imagekitio/errors.rbi +205 -0
  161. data/rbi/imagekitio/file_part.rbi +37 -0
  162. data/rbi/imagekitio/helpers/helper.rbi +41 -0
  163. data/rbi/imagekitio/internal/transport/base_client.rbi +295 -0
  164. data/rbi/imagekitio/internal/transport/pooled_net_requester.rbi +80 -0
  165. data/rbi/imagekitio/internal/type/array_of.rbi +104 -0
  166. data/rbi/imagekitio/internal/type/base_model.rbi +304 -0
  167. data/rbi/imagekitio/internal/type/base_page.rbi +42 -0
  168. data/rbi/imagekitio/internal/type/boolean.rbi +58 -0
  169. data/rbi/imagekitio/internal/type/converter.rbi +216 -0
  170. data/rbi/imagekitio/internal/type/enum.rbi +82 -0
  171. data/rbi/imagekitio/internal/type/file_input.rbi +59 -0
  172. data/rbi/imagekitio/internal/type/hash_of.rbi +104 -0
  173. data/rbi/imagekitio/internal/type/request_parameters.rbi +29 -0
  174. data/rbi/imagekitio/internal/type/union.rbi +128 -0
  175. data/rbi/imagekitio/internal/type/unknown.rbi +58 -0
  176. data/rbi/imagekitio/internal/util.rbi +487 -0
  177. data/rbi/imagekitio/internal.rbi +18 -0
  178. data/rbi/imagekitio/models/accounts/origin_create_params.rbi +81 -0
  179. data/rbi/imagekitio/models/accounts/origin_delete_params.rbi +34 -0
  180. data/rbi/imagekitio/models/accounts/origin_get_params.rbi +34 -0
  181. data/rbi/imagekitio/models/accounts/origin_list_params.rbi +34 -0
  182. data/rbi/imagekitio/models/accounts/origin_list_response.rbi +15 -0
  183. data/rbi/imagekitio/models/accounts/origin_request.rbi +775 -0
  184. data/rbi/imagekitio/models/accounts/origin_response.rbi +718 -0
  185. data/rbi/imagekitio/models/accounts/origin_update_params.rbi +81 -0
  186. data/rbi/imagekitio/models/accounts/url_endpoint_create_params.rbi +34 -0
  187. data/rbi/imagekitio/models/accounts/url_endpoint_delete_params.rbi +34 -0
  188. data/rbi/imagekitio/models/accounts/url_endpoint_get_params.rbi +34 -0
  189. data/rbi/imagekitio/models/accounts/url_endpoint_list_params.rbi +34 -0
  190. data/rbi/imagekitio/models/accounts/url_endpoint_list_response.rbi +15 -0
  191. data/rbi/imagekitio/models/accounts/url_endpoint_request.rbi +218 -0
  192. data/rbi/imagekitio/models/accounts/url_endpoint_response.rbi +213 -0
  193. data/rbi/imagekitio/models/accounts/url_endpoint_update_params.rbi +34 -0
  194. data/rbi/imagekitio/models/accounts/usage_get_params.rbi +60 -0
  195. data/rbi/imagekitio/models/accounts/usage_get_response.rbi +89 -0
  196. data/rbi/imagekitio/models/asset_list_params.rbi +281 -0
  197. data/rbi/imagekitio/models/asset_list_response.rbi +28 -0
  198. data/rbi/imagekitio/models/base_overlay.rbi +44 -0
  199. data/rbi/imagekitio/models/base_webhook_event.rbi +33 -0
  200. data/rbi/imagekitio/models/beta/v2/file_upload_params.rbi +861 -0
  201. data/rbi/imagekitio/models/beta/v2/file_upload_response.rbi +1197 -0
  202. data/rbi/imagekitio/models/cache/invalidation_create_params.rbi +45 -0
  203. data/rbi/imagekitio/models/cache/invalidation_create_response.rbi +37 -0
  204. data/rbi/imagekitio/models/cache/invalidation_get_params.rbi +34 -0
  205. data/rbi/imagekitio/models/cache/invalidation_get_response.rbi +93 -0
  206. data/rbi/imagekitio/models/custom_metadata_field.rbi +422 -0
  207. data/rbi/imagekitio/models/custom_metadata_field_create_params.rbi +443 -0
  208. data/rbi/imagekitio/models/custom_metadata_field_delete_params.rbi +30 -0
  209. data/rbi/imagekitio/models/custom_metadata_field_delete_response.rbi +23 -0
  210. data/rbi/imagekitio/models/custom_metadata_field_list_params.rbi +66 -0
  211. data/rbi/imagekitio/models/custom_metadata_field_list_response.rbi +11 -0
  212. data/rbi/imagekitio/models/custom_metadata_field_update_params.rbi +376 -0
  213. data/rbi/imagekitio/models/extensions.rbi +274 -0
  214. data/rbi/imagekitio/models/file.rbi +789 -0
  215. data/rbi/imagekitio/models/file_copy_params.rbi +66 -0
  216. data/rbi/imagekitio/models/file_copy_response.rbi +23 -0
  217. data/rbi/imagekitio/models/file_delete_params.rbi +27 -0
  218. data/rbi/imagekitio/models/file_get_params.rbi +27 -0
  219. data/rbi/imagekitio/models/file_move_params.rbi +51 -0
  220. data/rbi/imagekitio/models/file_move_response.rbi +23 -0
  221. data/rbi/imagekitio/models/file_rename_params.rbi +102 -0
  222. data/rbi/imagekitio/models/file_rename_response.rbi +35 -0
  223. data/rbi/imagekitio/models/file_update_params.rbi +58 -0
  224. data/rbi/imagekitio/models/file_update_response.rbi +322 -0
  225. data/rbi/imagekitio/models/file_upload_params.rbi +897 -0
  226. data/rbi/imagekitio/models/file_upload_response.rbi +1176 -0
  227. data/rbi/imagekitio/models/files/bulk_add_tags_params.rbi +56 -0
  228. data/rbi/imagekitio/models/files/bulk_add_tags_response.rbi +41 -0
  229. data/rbi/imagekitio/models/files/bulk_delete_params.rbi +48 -0
  230. data/rbi/imagekitio/models/files/bulk_delete_response.rbi +41 -0
  231. data/rbi/imagekitio/models/files/bulk_remove_ai_tags_params.rbi +56 -0
  232. data/rbi/imagekitio/models/files/bulk_remove_ai_tags_response.rbi +41 -0
  233. data/rbi/imagekitio/models/files/bulk_remove_tags_params.rbi +56 -0
  234. data/rbi/imagekitio/models/files/bulk_remove_tags_response.rbi +41 -0
  235. data/rbi/imagekitio/models/files/metadata_get_from_url_params.rbi +47 -0
  236. data/rbi/imagekitio/models/files/metadata_get_params.rbi +34 -0
  237. data/rbi/imagekitio/models/files/version_delete_params.rbi +40 -0
  238. data/rbi/imagekitio/models/files/version_delete_response.rbi +25 -0
  239. data/rbi/imagekitio/models/files/version_get_params.rbi +40 -0
  240. data/rbi/imagekitio/models/files/version_list_params.rbi +34 -0
  241. data/rbi/imagekitio/models/files/version_list_response.rbi +13 -0
  242. data/rbi/imagekitio/models/files/version_restore_params.rbi +40 -0
  243. data/rbi/imagekitio/models/folder.rbi +121 -0
  244. data/rbi/imagekitio/models/folder_copy_params.rbi +68 -0
  245. data/rbi/imagekitio/models/folder_copy_response.rbi +33 -0
  246. data/rbi/imagekitio/models/folder_create_params.rbi +71 -0
  247. data/rbi/imagekitio/models/folder_create_response.rbi +23 -0
  248. data/rbi/imagekitio/models/folder_delete_params.rbi +40 -0
  249. data/rbi/imagekitio/models/folder_delete_response.rbi +23 -0
  250. data/rbi/imagekitio/models/folder_move_params.rbi +53 -0
  251. data/rbi/imagekitio/models/folder_move_response.rbi +33 -0
  252. data/rbi/imagekitio/models/folder_rename_params.rbi +98 -0
  253. data/rbi/imagekitio/models/folder_rename_response.rbi +33 -0
  254. data/rbi/imagekitio/models/folders/job_get_params.rbi +34 -0
  255. data/rbi/imagekitio/models/folders/job_get_response.rbi +173 -0
  256. data/rbi/imagekitio/models/get_image_attributes_options.rbi +121 -0
  257. data/rbi/imagekitio/models/image_overlay.rbi +109 -0
  258. data/rbi/imagekitio/models/metadata.rbi +813 -0
  259. data/rbi/imagekitio/models/overlay.rbi +28 -0
  260. data/rbi/imagekitio/models/overlay_position.rbi +148 -0
  261. data/rbi/imagekitio/models/overlay_timing.rbi +135 -0
  262. data/rbi/imagekitio/models/responsive_image_attributes.rbi +74 -0
  263. data/rbi/imagekitio/models/solid_color_overlay.rbi +79 -0
  264. data/rbi/imagekitio/models/solid_color_overlay_transformation.rbi +218 -0
  265. data/rbi/imagekitio/models/src_options.rbi +159 -0
  266. data/rbi/imagekitio/models/streaming_resolution.rbi +38 -0
  267. data/rbi/imagekitio/models/subtitle_overlay.rbi +114 -0
  268. data/rbi/imagekitio/models/subtitle_overlay_transformation.rbi +215 -0
  269. data/rbi/imagekitio/models/text_overlay.rbi +110 -0
  270. data/rbi/imagekitio/models/text_overlay_transformation.rbi +451 -0
  271. data/rbi/imagekitio/models/transformation.rbi +1646 -0
  272. data/rbi/imagekitio/models/transformation_position.rbi +28 -0
  273. data/rbi/imagekitio/models/unsafe_unwrap_webhook_event.rbi +33 -0
  274. data/rbi/imagekitio/models/unwrap_webhook_event.rbi +31 -0
  275. data/rbi/imagekitio/models/update_file_request.rbi +316 -0
  276. data/rbi/imagekitio/models/upload_post_transform_error_event.rbi +434 -0
  277. data/rbi/imagekitio/models/upload_post_transform_success_event.rbi +327 -0
  278. data/rbi/imagekitio/models/upload_pre_transform_error_event.rbi +244 -0
  279. data/rbi/imagekitio/models/upload_pre_transform_success_event.rbi +1300 -0
  280. data/rbi/imagekitio/models/video_overlay.rbi +105 -0
  281. data/rbi/imagekitio/models/video_transformation_accepted_event.rbi +659 -0
  282. data/rbi/imagekitio/models/video_transformation_error_event.rbi +772 -0
  283. data/rbi/imagekitio/models/video_transformation_ready_event.rbi +864 -0
  284. data/rbi/imagekitio/models/webhook_unsafe_unwrap_params.rbi +30 -0
  285. data/rbi/imagekitio/models/webhook_unwrap_params.rbi +27 -0
  286. data/rbi/imagekitio/models.rbi +135 -0
  287. data/rbi/imagekitio/request_options.rbi +59 -0
  288. data/rbi/imagekitio/resources/accounts/origins.rbi +91 -0
  289. data/rbi/imagekitio/resources/accounts/url_endpoints.rbi +129 -0
  290. data/rbi/imagekitio/resources/accounts/usage.rbi +36 -0
  291. data/rbi/imagekitio/resources/accounts.rbi +21 -0
  292. data/rbi/imagekitio/resources/assets.rbi +74 -0
  293. data/rbi/imagekitio/resources/beta/v2/files.rbi +193 -0
  294. data/rbi/imagekitio/resources/beta/v2.rbi +17 -0
  295. data/rbi/imagekitio/resources/beta.rbi +15 -0
  296. data/rbi/imagekitio/resources/cache/invalidation.rbi +44 -0
  297. data/rbi/imagekitio/resources/cache.rbi +15 -0
  298. data/rbi/imagekitio/resources/custom_metadata_fields.rbi +106 -0
  299. data/rbi/imagekitio/resources/files/bulk.rbi +88 -0
  300. data/rbi/imagekitio/resources/files/metadata.rbi +49 -0
  301. data/rbi/imagekitio/resources/files/versions.rbi +89 -0
  302. data/rbi/imagekitio/resources/files.rbi +364 -0
  303. data/rbi/imagekitio/resources/folders/job.rbi +29 -0
  304. data/rbi/imagekitio/resources/folders.rbi +146 -0
  305. data/rbi/imagekitio/resources/webhooks.rbi +50 -0
  306. data/rbi/imagekitio/version.rbi +5 -0
  307. data/sig/imagekitio/client.rbs +47 -0
  308. data/sig/imagekitio/errors.rbs +117 -0
  309. data/sig/imagekitio/file_part.rbs +21 -0
  310. data/sig/imagekitio/helpers/helper.rbs +24 -0
  311. data/sig/imagekitio/internal/transport/base_client.rbs +131 -0
  312. data/sig/imagekitio/internal/transport/pooled_net_requester.rbs +45 -0
  313. data/sig/imagekitio/internal/type/array_of.rbs +48 -0
  314. data/sig/imagekitio/internal/type/base_model.rbs +102 -0
  315. data/sig/imagekitio/internal/type/base_page.rbs +24 -0
  316. data/sig/imagekitio/internal/type/boolean.rbs +26 -0
  317. data/sig/imagekitio/internal/type/converter.rbs +79 -0
  318. data/sig/imagekitio/internal/type/enum.rbs +32 -0
  319. data/sig/imagekitio/internal/type/file_input.rbs +25 -0
  320. data/sig/imagekitio/internal/type/hash_of.rbs +48 -0
  321. data/sig/imagekitio/internal/type/request_parameters.rbs +19 -0
  322. data/sig/imagekitio/internal/type/union.rbs +52 -0
  323. data/sig/imagekitio/internal/type/unknown.rbs +26 -0
  324. data/sig/imagekitio/internal/util.rbs +185 -0
  325. data/sig/imagekitio/internal.rbs +9 -0
  326. data/sig/imagekitio/models/accounts/origin_create_params.rbs +30 -0
  327. data/sig/imagekitio/models/accounts/origin_delete_params.rbs +17 -0
  328. data/sig/imagekitio/models/accounts/origin_get_params.rbs +17 -0
  329. data/sig/imagekitio/models/accounts/origin_list_params.rbs +17 -0
  330. data/sig/imagekitio/models/accounts/origin_list_response.rbs +10 -0
  331. data/sig/imagekitio/models/accounts/origin_request.rbs +468 -0
  332. data/sig/imagekitio/models/accounts/origin_response.rbs +418 -0
  333. data/sig/imagekitio/models/accounts/origin_update_params.rbs +30 -0
  334. data/sig/imagekitio/models/accounts/url_endpoint_create_params.rbs +17 -0
  335. data/sig/imagekitio/models/accounts/url_endpoint_delete_params.rbs +17 -0
  336. data/sig/imagekitio/models/accounts/url_endpoint_get_params.rbs +17 -0
  337. data/sig/imagekitio/models/accounts/url_endpoint_list_params.rbs +17 -0
  338. data/sig/imagekitio/models/accounts/url_endpoint_list_response.rbs +10 -0
  339. data/sig/imagekitio/models/accounts/url_endpoint_request.rbs +97 -0
  340. data/sig/imagekitio/models/accounts/url_endpoint_response.rbs +96 -0
  341. data/sig/imagekitio/models/accounts/url_endpoint_update_params.rbs +17 -0
  342. data/sig/imagekitio/models/accounts/usage_get_params.rbs +30 -0
  343. data/sig/imagekitio/models/accounts/usage_get_response.rbs +52 -0
  344. data/sig/imagekitio/models/asset_list_params.rbs +138 -0
  345. data/sig/imagekitio/models/asset_list_response.rbs +16 -0
  346. data/sig/imagekitio/models/base_overlay.rbs +31 -0
  347. data/sig/imagekitio/models/base_webhook_event.rbs +15 -0
  348. data/sig/imagekitio/models/beta/v2/file_upload_params.rbs +310 -0
  349. data/sig/imagekitio/models/beta/v2/file_upload_response.rbs +487 -0
  350. data/sig/imagekitio/models/cache/invalidation_create_params.rbs +25 -0
  351. data/sig/imagekitio/models/cache/invalidation_create_response.rbs +17 -0
  352. data/sig/imagekitio/models/cache/invalidation_get_params.rbs +17 -0
  353. data/sig/imagekitio/models/cache/invalidation_get_response.rbs +35 -0
  354. data/sig/imagekitio/models/custom_metadata_field.rbs +178 -0
  355. data/sig/imagekitio/models/custom_metadata_field_create_params.rbs +179 -0
  356. data/sig/imagekitio/models/custom_metadata_field_delete_params.rbs +15 -0
  357. data/sig/imagekitio/models/custom_metadata_field_delete_response.rbs +11 -0
  358. data/sig/imagekitio/models/custom_metadata_field_list_params.rbs +32 -0
  359. data/sig/imagekitio/models/custom_metadata_field_list_response.rbs +8 -0
  360. data/sig/imagekitio/models/custom_metadata_field_update_params.rbs +152 -0
  361. data/sig/imagekitio/models/extensions.rbs +132 -0
  362. data/sig/imagekitio/models/file.rbs +384 -0
  363. data/sig/imagekitio/models/file_copy_params.rbs +38 -0
  364. data/sig/imagekitio/models/file_copy_response.rbs +11 -0
  365. data/sig/imagekitio/models/file_delete_params.rbs +15 -0
  366. data/sig/imagekitio/models/file_get_params.rbs +14 -0
  367. data/sig/imagekitio/models/file_move_params.rbs +28 -0
  368. data/sig/imagekitio/models/file_move_response.rbs +11 -0
  369. data/sig/imagekitio/models/file_rename_params.rbs +34 -0
  370. data/sig/imagekitio/models/file_rename_response.rbs +15 -0
  371. data/sig/imagekitio/models/file_update_params.rbs +28 -0
  372. data/sig/imagekitio/models/file_update_response.rbs +120 -0
  373. data/sig/imagekitio/models/file_upload_params.rbs +327 -0
  374. data/sig/imagekitio/models/file_upload_response.rbs +483 -0
  375. data/sig/imagekitio/models/files/bulk_add_tags_params.rbs +30 -0
  376. data/sig/imagekitio/models/files/bulk_add_tags_response.rbs +20 -0
  377. data/sig/imagekitio/models/files/bulk_delete_params.rbs +26 -0
  378. data/sig/imagekitio/models/files/bulk_delete_response.rbs +20 -0
  379. data/sig/imagekitio/models/files/bulk_remove_ai_tags_params.rbs +30 -0
  380. data/sig/imagekitio/models/files/bulk_remove_ai_tags_response.rbs +20 -0
  381. data/sig/imagekitio/models/files/bulk_remove_tags_params.rbs +30 -0
  382. data/sig/imagekitio/models/files/bulk_remove_tags_response.rbs +20 -0
  383. data/sig/imagekitio/models/files/metadata_get_from_url_params.rbs +25 -0
  384. data/sig/imagekitio/models/files/metadata_get_params.rbs +17 -0
  385. data/sig/imagekitio/models/files/version_delete_params.rbs +25 -0
  386. data/sig/imagekitio/models/files/version_delete_response.rbs +13 -0
  387. data/sig/imagekitio/models/files/version_get_params.rbs +25 -0
  388. data/sig/imagekitio/models/files/version_list_params.rbs +17 -0
  389. data/sig/imagekitio/models/files/version_list_response.rbs +9 -0
  390. data/sig/imagekitio/models/files/version_restore_params.rbs +25 -0
  391. data/sig/imagekitio/models/folder.rbs +69 -0
  392. data/sig/imagekitio/models/folder_copy_params.rbs +38 -0
  393. data/sig/imagekitio/models/folder_copy_response.rbs +13 -0
  394. data/sig/imagekitio/models/folder_create_params.rbs +28 -0
  395. data/sig/imagekitio/models/folder_create_response.rbs +11 -0
  396. data/sig/imagekitio/models/folder_delete_params.rbs +23 -0
  397. data/sig/imagekitio/models/folder_delete_response.rbs +11 -0
  398. data/sig/imagekitio/models/folder_move_params.rbs +28 -0
  399. data/sig/imagekitio/models/folder_move_response.rbs +13 -0
  400. data/sig/imagekitio/models/folder_rename_params.rbs +34 -0
  401. data/sig/imagekitio/models/folder_rename_response.rbs +13 -0
  402. data/sig/imagekitio/models/folders/job_get_params.rbs +17 -0
  403. data/sig/imagekitio/models/folders/job_get_response.rbs +72 -0
  404. data/sig/imagekitio/models/get_image_attributes_options.rbs +43 -0
  405. data/sig/imagekitio/models/image_overlay.rbs +59 -0
  406. data/sig/imagekitio/models/metadata.rbs +546 -0
  407. data/sig/imagekitio/models/overlay.rbs +16 -0
  408. data/sig/imagekitio/models/overlay_position.rbs +85 -0
  409. data/sig/imagekitio/models/overlay_timing.rbs +66 -0
  410. data/sig/imagekitio/models/responsive_image_attributes.rbs +36 -0
  411. data/sig/imagekitio/models/solid_color_overlay.rbs +38 -0
  412. data/sig/imagekitio/models/solid_color_overlay_transformation.rbs +97 -0
  413. data/sig/imagekitio/models/src_options.rbs +64 -0
  414. data/sig/imagekitio/models/streaming_resolution.rbs +20 -0
  415. data/sig/imagekitio/models/subtitle_overlay.rbs +59 -0
  416. data/sig/imagekitio/models/subtitle_overlay_transformation.rbs +78 -0
  417. data/sig/imagekitio/models/text_overlay.rbs +59 -0
  418. data/sig/imagekitio/models/text_overlay_transformation.rbs +195 -0
  419. data/sig/imagekitio/models/transformation.rbs +763 -0
  420. data/sig/imagekitio/models/transformation_position.rbs +14 -0
  421. data/sig/imagekitio/models/unsafe_unwrap_webhook_event.rbs +18 -0
  422. data/sig/imagekitio/models/unwrap_webhook_event.rbs +18 -0
  423. data/sig/imagekitio/models/update_file_request.rbs +122 -0
  424. data/sig/imagekitio/models/upload_post_transform_error_event.rbs +192 -0
  425. data/sig/imagekitio/models/upload_post_transform_success_event.rbs +142 -0
  426. data/sig/imagekitio/models/upload_pre_transform_error_event.rbs +115 -0
  427. data/sig/imagekitio/models/upload_pre_transform_success_event.rbs +541 -0
  428. data/sig/imagekitio/models/video_overlay.rbs +59 -0
  429. data/sig/imagekitio/models/video_transformation_accepted_event.rbs +261 -0
  430. data/sig/imagekitio/models/video_transformation_error_event.rbs +300 -0
  431. data/sig/imagekitio/models/video_transformation_ready_event.rbs +359 -0
  432. data/sig/imagekitio/models/webhook_unsafe_unwrap_params.rbs +15 -0
  433. data/sig/imagekitio/models/webhook_unwrap_params.rbs +15 -0
  434. data/sig/imagekitio/models.rbs +119 -0
  435. data/sig/imagekitio/request_options.rbs +36 -0
  436. data/sig/imagekitio/resources/accounts/origins.rbs +34 -0
  437. data/sig/imagekitio/resources/accounts/url_endpoints.rbs +40 -0
  438. data/sig/imagekitio/resources/accounts/usage.rbs +15 -0
  439. data/sig/imagekitio/resources/accounts.rbs +13 -0
  440. data/sig/imagekitio/resources/assets.rbs +18 -0
  441. data/sig/imagekitio/resources/beta/v2/files.rbs +35 -0
  442. data/sig/imagekitio/resources/beta/v2.rbs +11 -0
  443. data/sig/imagekitio/resources/beta.rbs +9 -0
  444. data/sig/imagekitio/resources/cache/invalidation.rbs +19 -0
  445. data/sig/imagekitio/resources/cache.rbs +9 -0
  446. data/sig/imagekitio/resources/custom_metadata_fields.rbs +32 -0
  447. data/sig/imagekitio/resources/files/bulk.rbs +32 -0
  448. data/sig/imagekitio/resources/files/metadata.rbs +19 -0
  449. data/sig/imagekitio/resources/files/versions.rbs +32 -0
  450. data/sig/imagekitio/resources/files.rbs +76 -0
  451. data/sig/imagekitio/resources/folders/job.rbs +14 -0
  452. data/sig/imagekitio/resources/folders.rbs +40 -0
  453. data/sig/imagekitio/resources/webhooks.rbs +27 -0
  454. data/sig/imagekitio/version.rbs +3 -0
  455. metadata +470 -136
  456. data/Rakefile +0 -27
  457. data/lib/active_storage/active_storage.rb +0 -7
  458. data/lib/active_storage/service/ik_file.rb +0 -115
  459. data/lib/active_storage/service/image_kit_io_service.rb +0 -188
  460. data/lib/carrierwave/carrierwave.rb +0 -83
  461. data/lib/carrierwave/storage/ik_file.rb +0 -51
  462. data/lib/carrierwave/storage/imagekit_store.rb +0 -68
  463. data/lib/carrierwave/support/uri_filename.rb +0 -12
  464. data/lib/imagekitio/api_service/bulk.rb +0 -58
  465. data/lib/imagekitio/api_service/custom_metadata_field.rb +0 -52
  466. data/lib/imagekitio/api_service/file.rb +0 -221
  467. data/lib/imagekitio/api_service/folder.rb +0 -49
  468. data/lib/imagekitio/base.rb +0 -12
  469. data/lib/imagekitio/configurable.rb +0 -43
  470. data/lib/imagekitio/constant.rb +0 -36
  471. data/lib/imagekitio/constants/default.rb +0 -22
  472. data/lib/imagekitio/constants/error.rb +0 -69
  473. data/lib/imagekitio/constants/file.rb +0 -11
  474. data/lib/imagekitio/constants/supported_transformation.rb +0 -39
  475. data/lib/imagekitio/constants/url.rb +0 -14
  476. data/lib/imagekitio/railtie.rb +0 -4
  477. data/lib/imagekitio/request.rb +0 -98
  478. data/lib/imagekitio/sdk/version.rb +0 -5
  479. data/lib/imagekitio/url.rb +0 -216
  480. data/lib/imagekitio/utils/calculation.rb +0 -45
  481. data/lib/imagekitio/utils/formatter.rb +0 -48
  482. data/lib/imagekitio/utils/option_validator.rb +0 -36
  483. data/lib/tasks/imagekitio/imagekitio_tasks.rake +0 -4
@@ -0,0 +1,145 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Resources
5
+ class Accounts
6
+ class Origins
7
+ # **Note:** This API is currently in beta.
8
+ # Creates a new origin and returns the origin object.
9
+ #
10
+ # @overload create(origin_request:, request_options: {})
11
+ #
12
+ # @param origin_request [Imagekitio::Accounts::OriginRequest] Schema for origin request resources.
13
+ #
14
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
15
+ #
16
+ # @return [Imagekitio::Models::Accounts::OriginResponse::S3, Imagekitio::Models::Accounts::OriginResponse::S3Compatible, Imagekitio::Models::Accounts::OriginResponse::CloudinaryBackup, Imagekitio::Models::Accounts::OriginResponse::WebFolder, Imagekitio::Models::Accounts::OriginResponse::WebProxy, Imagekitio::Models::Accounts::OriginResponse::Gcs, Imagekitio::Models::Accounts::OriginResponse::AzureBlob, Imagekitio::Models::Accounts::OriginResponse::AkeneoPim]
17
+ #
18
+ # @see Imagekitio::Models::Accounts::OriginCreateParams
19
+ def create(params)
20
+ parsed, options = Imagekitio::Accounts::OriginCreateParams.dump_request(params)
21
+ case parsed
22
+ in {origin_request: Hash => union, **rest}
23
+ parsed = {**rest, **union}
24
+ else
25
+ end
26
+ @client.request(
27
+ method: :post,
28
+ path: "v1/accounts/origins",
29
+ body: parsed,
30
+ model: Imagekitio::Accounts::OriginResponse,
31
+ options: options
32
+ )
33
+ end
34
+
35
+ # Some parameter documentations has been truncated, see
36
+ # {Imagekitio::Models::Accounts::OriginUpdateParams} for more details.
37
+ #
38
+ # **Note:** This API is currently in beta.
39
+ # Updates the origin identified by `id` and returns the updated origin object.
40
+ #
41
+ # @overload update(id, origin_request:, request_options: {})
42
+ #
43
+ # @param id [String] Unique identifier for the origin. This is generated by ImageKit when you create
44
+ #
45
+ # @param origin_request [Imagekitio::Accounts::OriginRequest] Schema for origin request resources.
46
+ #
47
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
48
+ #
49
+ # @return [Imagekitio::Models::Accounts::OriginResponse::S3, Imagekitio::Models::Accounts::OriginResponse::S3Compatible, Imagekitio::Models::Accounts::OriginResponse::CloudinaryBackup, Imagekitio::Models::Accounts::OriginResponse::WebFolder, Imagekitio::Models::Accounts::OriginResponse::WebProxy, Imagekitio::Models::Accounts::OriginResponse::Gcs, Imagekitio::Models::Accounts::OriginResponse::AzureBlob, Imagekitio::Models::Accounts::OriginResponse::AkeneoPim]
50
+ #
51
+ # @see Imagekitio::Models::Accounts::OriginUpdateParams
52
+ def update(id, params)
53
+ parsed, options = Imagekitio::Accounts::OriginUpdateParams.dump_request(params)
54
+ case parsed
55
+ in {origin_request: Hash => union, **rest}
56
+ parsed = {**rest, **union}
57
+ else
58
+ end
59
+ @client.request(
60
+ method: :put,
61
+ path: ["v1/accounts/origins/%1$s", id],
62
+ body: parsed,
63
+ model: Imagekitio::Accounts::OriginResponse,
64
+ options: options
65
+ )
66
+ end
67
+
68
+ # **Note:** This API is currently in beta.
69
+ # Returns an array of all configured origins for the current account.
70
+ #
71
+ # @overload list(request_options: {})
72
+ #
73
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
74
+ #
75
+ # @return [Array<Imagekitio::Models::Accounts::OriginResponse::S3, Imagekitio::Models::Accounts::OriginResponse::S3Compatible, Imagekitio::Models::Accounts::OriginResponse::CloudinaryBackup, Imagekitio::Models::Accounts::OriginResponse::WebFolder, Imagekitio::Models::Accounts::OriginResponse::WebProxy, Imagekitio::Models::Accounts::OriginResponse::Gcs, Imagekitio::Models::Accounts::OriginResponse::AzureBlob, Imagekitio::Models::Accounts::OriginResponse::AkeneoPim>]
76
+ #
77
+ # @see Imagekitio::Models::Accounts::OriginListParams
78
+ def list(params = {})
79
+ @client.request(
80
+ method: :get,
81
+ path: "v1/accounts/origins",
82
+ model: Imagekitio::Internal::Type::ArrayOf[union: Imagekitio::Accounts::OriginResponse],
83
+ options: params[:request_options]
84
+ )
85
+ end
86
+
87
+ # Some parameter documentations has been truncated, see
88
+ # {Imagekitio::Models::Accounts::OriginDeleteParams} for more details.
89
+ #
90
+ # **Note:** This API is currently in beta.
91
+ # Permanently removes the origin identified by `id`. If the origin is in use by
92
+ # any URL‑endpoints, the API will return an error.
93
+ #
94
+ # @overload delete(id, request_options: {})
95
+ #
96
+ # @param id [String] Unique identifier for the origin. This is generated by ImageKit when you create
97
+ #
98
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
99
+ #
100
+ # @return [nil]
101
+ #
102
+ # @see Imagekitio::Models::Accounts::OriginDeleteParams
103
+ def delete(id, params = {})
104
+ @client.request(
105
+ method: :delete,
106
+ path: ["v1/accounts/origins/%1$s", id],
107
+ model: NilClass,
108
+ options: params[:request_options]
109
+ )
110
+ end
111
+
112
+ # Some parameter documentations has been truncated, see
113
+ # {Imagekitio::Models::Accounts::OriginGetParams} for more details.
114
+ #
115
+ # **Note:** This API is currently in beta.
116
+ # Retrieves the origin identified by `id`.
117
+ #
118
+ # @overload get(id, request_options: {})
119
+ #
120
+ # @param id [String] Unique identifier for the origin. This is generated by ImageKit when you create
121
+ #
122
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
123
+ #
124
+ # @return [Imagekitio::Models::Accounts::OriginResponse::S3, Imagekitio::Models::Accounts::OriginResponse::S3Compatible, Imagekitio::Models::Accounts::OriginResponse::CloudinaryBackup, Imagekitio::Models::Accounts::OriginResponse::WebFolder, Imagekitio::Models::Accounts::OriginResponse::WebProxy, Imagekitio::Models::Accounts::OriginResponse::Gcs, Imagekitio::Models::Accounts::OriginResponse::AzureBlob, Imagekitio::Models::Accounts::OriginResponse::AkeneoPim]
125
+ #
126
+ # @see Imagekitio::Models::Accounts::OriginGetParams
127
+ def get(id, params = {})
128
+ @client.request(
129
+ method: :get,
130
+ path: ["v1/accounts/origins/%1$s", id],
131
+ model: Imagekitio::Accounts::OriginResponse,
132
+ options: params[:request_options]
133
+ )
134
+ end
135
+
136
+ # @api private
137
+ #
138
+ # @param client [Imagekitio::Client]
139
+ def initialize(client:)
140
+ @client = client
141
+ end
142
+ end
143
+ end
144
+ end
145
+ end
@@ -0,0 +1,151 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Resources
5
+ class Accounts
6
+ class URLEndpoints
7
+ # Some parameter documentations has been truncated, see
8
+ # {Imagekitio::Models::Accounts::URLEndpointCreateParams} for more details.
9
+ #
10
+ # **Note:** This API is currently in beta.
11
+ # Creates a new URL‑endpoint and returns the resulting object.
12
+ #
13
+ # @overload create(description:, origins: nil, url_prefix: nil, url_rewriter: nil, request_options: {})
14
+ #
15
+ # @param description [String] Description of the URL endpoint.
16
+ #
17
+ # @param origins [Array<String>] Ordered list of origin IDs to try when the file isn’t in the Media Library; Imag
18
+ #
19
+ # @param url_prefix [String] Path segment appended to your base URL to form the endpoint (letters, digits, an
20
+ #
21
+ # @param url_rewriter [Imagekitio::Models::Accounts::URLEndpointRequest::URLRewriter::Cloudinary, Imagekitio::Models::Accounts::URLEndpointRequest::URLRewriter::Imgix, Imagekitio::Models::Accounts::URLEndpointRequest::URLRewriter::Akamai] Configuration for third-party URL rewriting.
22
+ #
23
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
24
+ #
25
+ # @return [Imagekitio::Models::Accounts::URLEndpointResponse]
26
+ #
27
+ # @see Imagekitio::Models::Accounts::URLEndpointCreateParams
28
+ def create(params)
29
+ parsed, options = Imagekitio::Accounts::URLEndpointCreateParams.dump_request(params)
30
+ @client.request(
31
+ method: :post,
32
+ path: "v1/accounts/url-endpoints",
33
+ body: parsed,
34
+ model: Imagekitio::Accounts::URLEndpointResponse,
35
+ options: options
36
+ )
37
+ end
38
+
39
+ # Some parameter documentations has been truncated, see
40
+ # {Imagekitio::Models::Accounts::URLEndpointUpdateParams} for more details.
41
+ #
42
+ # **Note:** This API is currently in beta.
43
+ # Updates the URL‑endpoint identified by `id` and returns the updated object.
44
+ #
45
+ # @overload update(id, description:, origins: nil, url_prefix: nil, url_rewriter: nil, request_options: {})
46
+ #
47
+ # @param id [String] Unique identifier for the URL-endpoint. This is generated by ImageKit when you c
48
+ #
49
+ # @param description [String] Description of the URL endpoint.
50
+ #
51
+ # @param origins [Array<String>] Ordered list of origin IDs to try when the file isn’t in the Media Library; Imag
52
+ #
53
+ # @param url_prefix [String] Path segment appended to your base URL to form the endpoint (letters, digits, an
54
+ #
55
+ # @param url_rewriter [Imagekitio::Models::Accounts::URLEndpointRequest::URLRewriter::Cloudinary, Imagekitio::Models::Accounts::URLEndpointRequest::URLRewriter::Imgix, Imagekitio::Models::Accounts::URLEndpointRequest::URLRewriter::Akamai] Configuration for third-party URL rewriting.
56
+ #
57
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
58
+ #
59
+ # @return [Imagekitio::Models::Accounts::URLEndpointResponse]
60
+ #
61
+ # @see Imagekitio::Models::Accounts::URLEndpointUpdateParams
62
+ def update(id, params)
63
+ parsed, options = Imagekitio::Accounts::URLEndpointUpdateParams.dump_request(params)
64
+ @client.request(
65
+ method: :put,
66
+ path: ["v1/accounts/url-endpoints/%1$s", id],
67
+ body: parsed,
68
+ model: Imagekitio::Accounts::URLEndpointResponse,
69
+ options: options
70
+ )
71
+ end
72
+
73
+ # **Note:** This API is currently in beta.
74
+ # Returns an array of all URL‑endpoints configured including the default
75
+ # URL-endpoint generated by ImageKit during account creation.
76
+ #
77
+ # @overload list(request_options: {})
78
+ #
79
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
80
+ #
81
+ # @return [Array<Imagekitio::Models::Accounts::URLEndpointResponse>]
82
+ #
83
+ # @see Imagekitio::Models::Accounts::URLEndpointListParams
84
+ def list(params = {})
85
+ @client.request(
86
+ method: :get,
87
+ path: "v1/accounts/url-endpoints",
88
+ model: Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::URLEndpointResponse],
89
+ options: params[:request_options]
90
+ )
91
+ end
92
+
93
+ # Some parameter documentations has been truncated, see
94
+ # {Imagekitio::Models::Accounts::URLEndpointDeleteParams} for more details.
95
+ #
96
+ # **Note:** This API is currently in beta.
97
+ # Deletes the URL‑endpoint identified by `id`. You cannot delete the default
98
+ # URL‑endpoint created by ImageKit during account creation.
99
+ #
100
+ # @overload delete(id, request_options: {})
101
+ #
102
+ # @param id [String] Unique identifier for the URL-endpoint. This is generated by ImageKit when you c
103
+ #
104
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
105
+ #
106
+ # @return [nil]
107
+ #
108
+ # @see Imagekitio::Models::Accounts::URLEndpointDeleteParams
109
+ def delete(id, params = {})
110
+ @client.request(
111
+ method: :delete,
112
+ path: ["v1/accounts/url-endpoints/%1$s", id],
113
+ model: NilClass,
114
+ options: params[:request_options]
115
+ )
116
+ end
117
+
118
+ # Some parameter documentations has been truncated, see
119
+ # {Imagekitio::Models::Accounts::URLEndpointGetParams} for more details.
120
+ #
121
+ # **Note:** This API is currently in beta.
122
+ # Retrieves the URL‑endpoint identified by `id`.
123
+ #
124
+ # @overload get(id, request_options: {})
125
+ #
126
+ # @param id [String] Unique identifier for the URL-endpoint. This is generated by ImageKit when you c
127
+ #
128
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
129
+ #
130
+ # @return [Imagekitio::Models::Accounts::URLEndpointResponse]
131
+ #
132
+ # @see Imagekitio::Models::Accounts::URLEndpointGetParams
133
+ def get(id, params = {})
134
+ @client.request(
135
+ method: :get,
136
+ path: ["v1/accounts/url-endpoints/%1$s", id],
137
+ model: Imagekitio::Accounts::URLEndpointResponse,
138
+ options: params[:request_options]
139
+ )
140
+ end
141
+
142
+ # @api private
143
+ #
144
+ # @param client [Imagekitio::Client]
145
+ def initialize(client:)
146
+ @client = client
147
+ end
148
+ end
149
+ end
150
+ end
151
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Resources
5
+ class Accounts
6
+ class Usage
7
+ # Some parameter documentations has been truncated, see
8
+ # {Imagekitio::Models::Accounts::UsageGetParams} for more details.
9
+ #
10
+ # Get the account usage information between two dates. Note that the API response
11
+ # includes data from the start date while excluding data from the end date. In
12
+ # other words, the data covers the period starting from the specified start date
13
+ # up to, but not including, the end date.
14
+ #
15
+ # @overload get(end_date:, start_date:, request_options: {})
16
+ #
17
+ # @param end_date [Date] Specify a `endDate` in `YYYY-MM-DD` format. It should be after the `startDate`.
18
+ #
19
+ # @param start_date [Date] Specify a `startDate` in `YYYY-MM-DD` format. It should be before the `endDate`.
20
+ #
21
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
22
+ #
23
+ # @return [Imagekitio::Models::Accounts::UsageGetResponse]
24
+ #
25
+ # @see Imagekitio::Models::Accounts::UsageGetParams
26
+ def get(params)
27
+ parsed, options = Imagekitio::Accounts::UsageGetParams.dump_request(params)
28
+ @client.request(
29
+ method: :get,
30
+ path: "v1/accounts/usage",
31
+ query: parsed.transform_keys(end_date: "endDate", start_date: "startDate"),
32
+ model: Imagekitio::Models::Accounts::UsageGetResponse,
33
+ options: options
34
+ )
35
+ end
36
+
37
+ # @api private
38
+ #
39
+ # @param client [Imagekitio::Client]
40
+ def initialize(client:)
41
+ @client = client
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Resources
5
+ class Accounts
6
+ # @return [Imagekitio::Resources::Accounts::Usage]
7
+ attr_reader :usage
8
+
9
+ # @return [Imagekitio::Resources::Accounts::Origins]
10
+ attr_reader :origins
11
+
12
+ # @return [Imagekitio::Resources::Accounts::URLEndpoints]
13
+ attr_reader :url_endpoints
14
+
15
+ # @api private
16
+ #
17
+ # @param client [Imagekitio::Client]
18
+ def initialize(client:)
19
+ @client = client
20
+ @usage = Imagekitio::Resources::Accounts::Usage.new(client: client)
21
+ @origins = Imagekitio::Resources::Accounts::Origins.new(client: client)
22
+ @url_endpoints = Imagekitio::Resources::Accounts::URLEndpoints.new(client: client)
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Resources
5
+ class Assets
6
+ # Some parameter documentations has been truncated, see
7
+ # {Imagekitio::Models::AssetListParams} for more details.
8
+ #
9
+ # This API can list all the uploaded files and folders in your ImageKit.io media
10
+ # library. In addition, you can fine-tune your query by specifying various filters
11
+ # by generating a query string in a Lucene-like syntax and provide this generated
12
+ # string as the value of the `searchQuery`.
13
+ #
14
+ # @overload list(file_type: nil, limit: nil, path: nil, search_query: nil, skip: nil, sort: nil, type: nil, request_options: {})
15
+ #
16
+ # @param file_type [Symbol, Imagekitio::Models::AssetListParams::FileType] Filter results by file type.
17
+ #
18
+ # @param limit [Integer] The maximum number of results to return in response.
19
+ #
20
+ # @param path [String] Folder path if you want to limit the search within a specific folder. For exampl
21
+ #
22
+ # @param search_query [String] Query string in a Lucene-like query language e.g. `createdAt > "7d"`.
23
+ #
24
+ # @param skip [Integer] The number of results to skip before returning results.
25
+ #
26
+ # @param sort [Symbol, Imagekitio::Models::AssetListParams::Sort] Sort the results by one of the supported fields in ascending or descending order
27
+ #
28
+ # @param type [Symbol, Imagekitio::Models::AssetListParams::Type] Filter results by asset type.
29
+ #
30
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
31
+ #
32
+ # @return [Array<Imagekitio::Models::Folder, Imagekitio::Models::File>]
33
+ #
34
+ # @see Imagekitio::Models::AssetListParams
35
+ def list(params = {})
36
+ parsed, options = Imagekitio::AssetListParams.dump_request(params)
37
+ @client.request(
38
+ method: :get,
39
+ path: "v1/files",
40
+ query: parsed.transform_keys(file_type: "fileType", search_query: "searchQuery"),
41
+ model: Imagekitio::Internal::Type::ArrayOf[union: Imagekitio::Models::AssetListResponseItem],
42
+ options: options
43
+ )
44
+ end
45
+
46
+ # @api private
47
+ #
48
+ # @param client [Imagekitio::Client]
49
+ def initialize(client:)
50
+ @client = client
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,110 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Resources
5
+ class Beta
6
+ class V2
7
+ class Files
8
+ # Some parameter documentations has been truncated, see
9
+ # {Imagekitio::Models::Beta::V2::FileUploadParams} for more details.
10
+ #
11
+ # The V2 API enhances security by verifying the entire payload using JWT. This API
12
+ # is in beta.
13
+ #
14
+ # ImageKit.io allows you to upload files directly from both the server and client
15
+ # sides. For server-side uploads, private API key authentication is used. For
16
+ # client-side uploads, generate a one-time `token` from your secure backend using
17
+ # private API.
18
+ # [Learn more](/docs/api-reference/upload-file/upload-file-v2#how-to-implement-secure-client-side-file-upload)
19
+ # about how to implement secure client-side file upload.
20
+ #
21
+ # **File size limit** \
22
+ # On the free plan, the maximum upload file sizes are 20MB for images, audio, and raw
23
+ # files, and 100MB for videos. On the paid plan, these limits increase to 40MB for
24
+ # images, audio, and raw files, and 2GB for videos. These limits can be further increased
25
+ # with higher-tier plans.
26
+ #
27
+ # **Version limit** \
28
+ # A file can have a maximum of 100 versions.
29
+ #
30
+ # **Demo applications**
31
+ #
32
+ # - A full-fledged
33
+ # [upload widget using Uppy](https://github.com/imagekit-samples/uppy-uploader),
34
+ # supporting file selections from local storage, URL, Dropbox, Google Drive,
35
+ # Instagram, and more.
36
+ # - [Quick start guides](/docs/quick-start-guides) for various frameworks and
37
+ # technologies.
38
+ #
39
+ # @overload upload(file:, file_name:, token: nil, checks: nil, custom_coordinates: nil, custom_metadata: nil, description: nil, extensions: nil, folder: nil, is_private_file: nil, is_published: nil, overwrite_ai_tags: nil, overwrite_custom_metadata: nil, overwrite_file: nil, overwrite_tags: nil, response_fields: nil, tags: nil, transformation: nil, use_unique_file_name: nil, webhook_url: nil, request_options: {})
40
+ #
41
+ # @param file [Pathname, StringIO, IO, String, Imagekitio::FilePart] The API accepts any of the following:
42
+ #
43
+ # @param file_name [String] The name with which the file has to be uploaded.
44
+ #
45
+ # @param token [String] This is the client-generated JSON Web Token (JWT). The ImageKit.io server uses i
46
+ #
47
+ # @param checks [String] Server-side checks to run on the asset.
48
+ #
49
+ # @param custom_coordinates [String] Define an important area in the image. This is only relevant for image type file
50
+ #
51
+ # @param custom_metadata [Hash{Symbol=>Object}] JSON key-value pairs to associate with the asset. Create the custom metadata fie
52
+ #
53
+ # @param description [String] Optional text to describe the contents of the file.
54
+ #
55
+ # @param extensions [Array<Imagekitio::Models::ExtensionItem::RemoveBg, Imagekitio::Models::ExtensionItem::AIAutoDescription, Imagekitio::Models::ExtensionItem::AutoTaggingExtension>] Array of extensions to be applied to the asset. Each extension can be configured
56
+ #
57
+ # @param folder [String] The folder path in which the image has to be uploaded. If the folder(s) didn't e
58
+ #
59
+ # @param is_private_file [Boolean] Whether to mark the file as private or not.
60
+ #
61
+ # @param is_published [Boolean] Whether to upload file as published or not.
62
+ #
63
+ # @param overwrite_ai_tags [Boolean] If set to `true` and a file already exists at the exact location, its AITags wil
64
+ #
65
+ # @param overwrite_custom_metadata [Boolean] If the request does not have `customMetadata`, and a file already exists at the
66
+ #
67
+ # @param overwrite_file [Boolean] If `false` and `useUniqueFileName` is also `false`, and a file already exists at
68
+ #
69
+ # @param overwrite_tags [Boolean] If the request does not have `tags`, and a file already exists at the exact loca
70
+ #
71
+ # @param response_fields [Array<Symbol, Imagekitio::Models::Beta::V2::FileUploadParams::ResponseField>] Array of response field keys to include in the API response body.
72
+ #
73
+ # @param tags [Array<String>] Set the tags while uploading the file.
74
+ #
75
+ # @param transformation [Imagekitio::Models::Beta::V2::FileUploadParams::Transformation] Configure pre-processing (`pre`) and post-processing (`post`) transformations.
76
+ #
77
+ # @param use_unique_file_name [Boolean] Whether to use a unique filename for this file or not.
78
+ #
79
+ # @param webhook_url [String] The final status of extensions after they have completed execution will be deliv
80
+ #
81
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
82
+ #
83
+ # @return [Imagekitio::Models::Beta::V2::FileUploadResponse]
84
+ #
85
+ # @see Imagekitio::Models::Beta::V2::FileUploadParams
86
+ def upload(params)
87
+ parsed, options = Imagekitio::Beta::V2::FileUploadParams.dump_request(params)
88
+ path =
89
+ @client.base_url_overridden? ? "api/v2/files/upload" : "https://upload.imagekit.io/api/v2/files/upload"
90
+ @client.request(
91
+ method: :post,
92
+ path: path,
93
+ headers: {"content-type" => "multipart/form-data"},
94
+ body: parsed,
95
+ model: Imagekitio::Models::Beta::V2::FileUploadResponse,
96
+ options: options
97
+ )
98
+ end
99
+
100
+ # @api private
101
+ #
102
+ # @param client [Imagekitio::Client]
103
+ def initialize(client:)
104
+ @client = client
105
+ end
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Resources
5
+ class Beta
6
+ class V2
7
+ # @return [Imagekitio::Resources::Beta::V2::Files]
8
+ attr_reader :files
9
+
10
+ # @api private
11
+ #
12
+ # @param client [Imagekitio::Client]
13
+ def initialize(client:)
14
+ @client = client
15
+ @files = Imagekitio::Resources::Beta::V2::Files.new(client: client)
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Resources
5
+ class Beta
6
+ # @return [Imagekitio::Resources::Beta::V2]
7
+ attr_reader :v2
8
+
9
+ # @api private
10
+ #
11
+ # @param client [Imagekitio::Client]
12
+ def initialize(client:)
13
+ @client = client
14
+ @v2 = Imagekitio::Resources::Beta::V2.new(client: client)
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Resources
5
+ class Cache
6
+ class Invalidation
7
+ # Some parameter documentations has been truncated, see
8
+ # {Imagekitio::Models::Cache::InvalidationCreateParams} for more details.
9
+ #
10
+ # This API will purge CDN cache and ImageKit.io's internal cache for a file. Note:
11
+ # Purge cache is an asynchronous process and it may take some time to reflect the
12
+ # changes.
13
+ #
14
+ # @overload create(url:, request_options: {})
15
+ #
16
+ # @param url [String] The full URL of the file to be purged.
17
+ #
18
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
19
+ #
20
+ # @return [Imagekitio::Models::Cache::InvalidationCreateResponse]
21
+ #
22
+ # @see Imagekitio::Models::Cache::InvalidationCreateParams
23
+ def create(params)
24
+ parsed, options = Imagekitio::Cache::InvalidationCreateParams.dump_request(params)
25
+ @client.request(
26
+ method: :post,
27
+ path: "v1/files/purge",
28
+ body: parsed,
29
+ model: Imagekitio::Models::Cache::InvalidationCreateResponse,
30
+ options: options
31
+ )
32
+ end
33
+
34
+ # Some parameter documentations has been truncated, see
35
+ # {Imagekitio::Models::Cache::InvalidationGetParams} for more details.
36
+ #
37
+ # This API returns the status of a purge cache request.
38
+ #
39
+ # @overload get(request_id, request_options: {})
40
+ #
41
+ # @param request_id [String] Should be a valid requestId.
42
+ #
43
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
44
+ #
45
+ # @return [Imagekitio::Models::Cache::InvalidationGetResponse]
46
+ #
47
+ # @see Imagekitio::Models::Cache::InvalidationGetParams
48
+ def get(request_id, params = {})
49
+ @client.request(
50
+ method: :get,
51
+ path: ["v1/files/purge/%1$s", request_id],
52
+ model: Imagekitio::Models::Cache::InvalidationGetResponse,
53
+ options: params[:request_options]
54
+ )
55
+ end
56
+
57
+ # @api private
58
+ #
59
+ # @param client [Imagekitio::Client]
60
+ def initialize(client:)
61
+ @client = client
62
+ end
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Resources
5
+ class Cache
6
+ # @return [Imagekitio::Resources::Cache::Invalidation]
7
+ attr_reader :invalidation
8
+
9
+ # @api private
10
+ #
11
+ # @param client [Imagekitio::Client]
12
+ def initialize(client:)
13
+ @client = client
14
+ @invalidation = Imagekitio::Resources::Cache::Invalidation.new(client: client)
15
+ end
16
+ end
17
+ end
18
+ end