imagekitio 4.9.0 → 4.11.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +30 -0
- data/README.md +1 -1
- data/lib/imagekitio/helpers/transformation_utils.rb +1 -0
- data/lib/imagekitio/models/accounts/webhook.rb +81 -0
- data/lib/imagekitio/models/accounts/webhook_create_params.rb +47 -0
- data/lib/imagekitio/models/accounts/webhook_delete_params.rb +24 -0
- data/lib/imagekitio/models/accounts/webhook_event_type.rb +32 -0
- data/lib/imagekitio/models/accounts/webhook_get_params.rb +24 -0
- data/lib/imagekitio/models/accounts/webhook_list_params.rb +16 -0
- data/lib/imagekitio/models/accounts/webhook_list_response.rb +10 -0
- data/lib/imagekitio/models/accounts/webhook_update_params.rb +54 -0
- data/lib/imagekitio/models/asset_list_params.rb +22 -0
- data/lib/imagekitio/models/beta/v2/file_upload_params.rb +5 -1
- data/lib/imagekitio/models/custom_metadata_field.rb +23 -1
- data/lib/imagekitio/models/custom_metadata_field_create_params.rb +4 -0
- data/lib/imagekitio/models/file_upload_params.rb +5 -1
- data/lib/imagekitio/models/folder.rb +33 -1
- data/lib/imagekitio/models/folder_create_event.rb +35 -0
- data/lib/imagekitio/models/folder_delete_event.rb +47 -0
- data/lib/imagekitio/models/folder_update_event.rb +35 -0
- data/lib/imagekitio/models/transformation.rb +33 -1
- data/lib/imagekitio/models/unsafe_unwrap_webhook_event.rb +10 -1
- data/lib/imagekitio/models/unwrap_webhook_event.rb +10 -1
- data/lib/imagekitio/models/update_file_request.rb +5 -0
- data/lib/imagekitio/models.rb +6 -0
- data/lib/imagekitio/resources/accounts/webhooks.rb +146 -0
- data/lib/imagekitio/resources/accounts.rb +4 -0
- data/lib/imagekitio/resources/custom_metadata_fields.rb +2 -2
- data/lib/imagekitio/resources/files/versions.rb +2 -2
- data/lib/imagekitio/resources/files.rb +4 -16
- data/lib/imagekitio/resources/folders.rb +2 -8
- data/lib/imagekitio/resources/webhooks.rb +2 -2
- data/lib/imagekitio/version.rb +1 -1
- data/lib/imagekitio.rb +12 -5
- data/rbi/imagekitio/models/accounts/webhook.rbi +109 -0
- data/rbi/imagekitio/models/accounts/webhook_create_params.rbi +78 -0
- data/rbi/imagekitio/models/accounts/webhook_delete_params.rbi +45 -0
- data/rbi/imagekitio/models/accounts/webhook_event_type.rbi +101 -0
- data/rbi/imagekitio/models/accounts/webhook_get_params.rbi +45 -0
- data/rbi/imagekitio/models/accounts/webhook_list_params.rbi +34 -0
- data/rbi/imagekitio/models/accounts/webhook_list_response.rbi +13 -0
- data/rbi/imagekitio/models/accounts/webhook_update_params.rbi +98 -0
- data/rbi/imagekitio/models/asset_list_params.rbi +41 -0
- data/rbi/imagekitio/models/beta/v2/file_upload_params.rbi +10 -2
- data/rbi/imagekitio/models/custom_metadata_field.rbi +42 -3
- data/rbi/imagekitio/models/custom_metadata_field_create_params.rbi +8 -0
- data/rbi/imagekitio/models/file_upload_params.rbi +10 -2
- data/rbi/imagekitio/models/folder.rbi +49 -0
- data/rbi/imagekitio/models/folder_create_event.rbi +53 -0
- data/rbi/imagekitio/models/folder_delete_event.rbi +83 -0
- data/rbi/imagekitio/models/folder_update_event.rbi +53 -0
- data/rbi/imagekitio/models/transformation.rbi +43 -0
- data/rbi/imagekitio/models/unsafe_unwrap_webhook_event.rbi +4 -1
- data/rbi/imagekitio/models/unwrap_webhook_event.rbi +4 -1
- data/rbi/imagekitio/models/update_file_request.rbi +10 -0
- data/rbi/imagekitio/models.rbi +6 -0
- data/rbi/imagekitio/resources/accounts/webhooks.rbi +113 -0
- data/rbi/imagekitio/resources/accounts.rbi +3 -0
- data/rbi/imagekitio/resources/assets.rbi +9 -0
- data/rbi/imagekitio/resources/beta/v2/files.rbi +5 -1
- data/rbi/imagekitio/resources/custom_metadata_fields.rbi +5 -1
- data/rbi/imagekitio/resources/files/versions.rbi +1 -1
- data/rbi/imagekitio/resources/files.rbi +7 -3
- data/rbi/imagekitio/resources/folders.rbi +1 -1
- data/rbi/imagekitio/resources/webhooks.rbi +8 -2
- data/sig/imagekitio/models/accounts/webhook.rbs +52 -0
- data/sig/imagekitio/models/accounts/webhook_create_params.rbs +40 -0
- data/sig/imagekitio/models/accounts/webhook_delete_params.rbs +25 -0
- data/sig/imagekitio/models/accounts/webhook_event_type.rbs +44 -0
- data/sig/imagekitio/models/accounts/webhook_get_params.rbs +25 -0
- data/sig/imagekitio/models/accounts/webhook_list_params.rbs +17 -0
- data/sig/imagekitio/models/accounts/webhook_list_response.rbs +9 -0
- data/sig/imagekitio/models/accounts/webhook_update_params.rbs +51 -0
- data/sig/imagekitio/models/asset_list_params.rbs +8 -0
- data/sig/imagekitio/models/custom_metadata_field.rbs +10 -3
- data/sig/imagekitio/models/folder.rbs +32 -5
- data/sig/imagekitio/models/folder_create_event.rbs +32 -0
- data/sig/imagekitio/models/folder_delete_event.rbs +48 -0
- data/sig/imagekitio/models/folder_update_event.rbs +32 -0
- data/sig/imagekitio/models/transformation.rbs +17 -0
- data/sig/imagekitio/models/unsafe_unwrap_webhook_event.rbs +3 -0
- data/sig/imagekitio/models/unwrap_webhook_event.rbs +3 -0
- data/sig/imagekitio/models.rbs +6 -0
- data/sig/imagekitio/resources/accounts/webhooks.rbs +38 -0
- data/sig/imagekitio/resources/accounts.rbs +2 -0
- data/sig/imagekitio/resources/custom_metadata_fields.rbs +1 -4
- data/sig/imagekitio/resources/files/versions.rbs +1 -1
- data/sig/imagekitio/resources/files.rbs +2 -2
- data/sig/imagekitio/resources/folders.rbs +1 -1
- data/sig/imagekitio/resources/webhooks.rbs +8 -2
- metadata +38 -17
- data/lib/imagekitio/models/custom_metadata_field_delete_response.rb +0 -10
- data/lib/imagekitio/models/file_copy_response.rb +0 -10
- data/lib/imagekitio/models/file_move_response.rb +0 -10
- data/lib/imagekitio/models/files/version_delete_response.rb +0 -12
- data/lib/imagekitio/models/folder_delete_response.rb +0 -10
- data/rbi/imagekitio/models/custom_metadata_field_delete_response.rbi +0 -23
- data/rbi/imagekitio/models/file_copy_response.rbi +0 -23
- data/rbi/imagekitio/models/file_move_response.rbi +0 -23
- data/rbi/imagekitio/models/files/version_delete_response.rbi +0 -25
- data/rbi/imagekitio/models/folder_delete_response.rbi +0 -23
- data/sig/imagekitio/models/custom_metadata_field_delete_response.rbs +0 -11
- data/sig/imagekitio/models/file_copy_response.rbs +0 -11
- data/sig/imagekitio/models/file_move_response.rbs +0 -11
- data/sig/imagekitio/models/files/version_delete_response.rbs +0 -13
- data/sig/imagekitio/models/folder_delete_response.rbs +0 -11
|
@@ -201,6 +201,17 @@ module Imagekitio
|
|
|
201
201
|
# @return [String, nil]
|
|
202
202
|
optional :default_image, String, api_name: :defaultImage
|
|
203
203
|
|
|
204
|
+
# @!attribute density
|
|
205
|
+
# Sets the output image density in dots per inch (DPI). Accepts an integer from 1
|
|
206
|
+
# to 1200 or an arithmetic expression using the `idn` variable, such as
|
|
207
|
+
# `idn_mul_2`. For raster images, this updates density metadata without changing
|
|
208
|
+
# dimensions. For vector images, it controls the DPI used during rasterization.
|
|
209
|
+
# Cannot be used inside layers. See
|
|
210
|
+
# [Density](https://imagekit.io/docs/image-optimization#density---dn).
|
|
211
|
+
#
|
|
212
|
+
# @return [Integer, String, nil]
|
|
213
|
+
optional :density, union: -> { Imagekitio::Transformation::Density }
|
|
214
|
+
|
|
204
215
|
# @!attribute distort
|
|
205
216
|
# Distorts the shape of an image. Supports two modes:
|
|
206
217
|
#
|
|
@@ -510,7 +521,7 @@ module Imagekitio
|
|
|
510
521
|
# @return [Float, nil]
|
|
511
522
|
optional :zoom, Float
|
|
512
523
|
|
|
513
|
-
# @!method initialize(ai_change_background: nil, ai_drop_shadow: nil, ai_edit: nil, ai_remove_background: nil, ai_remove_background_external: nil, ai_retouch: nil, ai_upscale: nil, ai_variation: nil, aspect_ratio: nil, audio_codec: nil, background: nil, blur: nil, border: nil, colorize: nil, color_profile: nil, color_replace: nil, contrast_stretch: nil, crop: nil, crop_mode: nil, default_image: nil, distort: nil, dpr: nil, duration: nil, end_offset: nil, flip: nil, focus: nil, format_: nil, gradient: nil, grayscale: nil, height: nil, lossless: nil, metadata: nil, named: nil, opacity: nil, original: nil, overlay: nil, page: nil, progressive: nil, quality: nil, radius: nil, raw: nil, rotation: nil, shadow: nil, sharpen: nil, start_offset: nil, streaming_resolutions: nil, trim: nil, unsharp_mask: nil, video_codec: nil, width: nil, x: nil, x_center: nil, y_: nil, y_center: nil, zoom: nil)
|
|
524
|
+
# @!method initialize(ai_change_background: nil, ai_drop_shadow: nil, ai_edit: nil, ai_remove_background: nil, ai_remove_background_external: nil, ai_retouch: nil, ai_upscale: nil, ai_variation: nil, aspect_ratio: nil, audio_codec: nil, background: nil, blur: nil, border: nil, colorize: nil, color_profile: nil, color_replace: nil, contrast_stretch: nil, crop: nil, crop_mode: nil, default_image: nil, density: nil, distort: nil, dpr: nil, duration: nil, end_offset: nil, flip: nil, focus: nil, format_: nil, gradient: nil, grayscale: nil, height: nil, lossless: nil, metadata: nil, named: nil, opacity: nil, original: nil, overlay: nil, page: nil, progressive: nil, quality: nil, radius: nil, raw: nil, rotation: nil, shadow: nil, sharpen: nil, start_offset: nil, streaming_resolutions: nil, trim: nil, unsharp_mask: nil, video_codec: nil, width: nil, x: nil, x_center: nil, y_: nil, y_center: nil, zoom: nil)
|
|
514
525
|
# Some parameter documentations has been truncated, see
|
|
515
526
|
# {Imagekitio::Models::Transformation} for more details.
|
|
516
527
|
#
|
|
@@ -561,6 +572,8 @@ module Imagekitio
|
|
|
561
572
|
#
|
|
562
573
|
# @param default_image [String] Specifies a fallback image if the resource is not found, e.g., a URL or file pat
|
|
563
574
|
#
|
|
575
|
+
# @param density [Integer, String] Sets the output image density in dots per inch (DPI). Accepts an integer from 1
|
|
576
|
+
#
|
|
564
577
|
# @param distort [String] Distorts the shape of an image. Supports two modes:
|
|
565
578
|
#
|
|
566
579
|
# @param dpr [Float] Accepts values between 0.1 and 5, or `auto` for automatic device pixel ratio (DP
|
|
@@ -802,6 +815,25 @@ module Imagekitio
|
|
|
802
815
|
# @return [Array<Symbol>]
|
|
803
816
|
end
|
|
804
817
|
|
|
818
|
+
# Sets the output image density in dots per inch (DPI). Accepts an integer from 1
|
|
819
|
+
# to 1200 or an arithmetic expression using the `idn` variable, such as
|
|
820
|
+
# `idn_mul_2`. For raster images, this updates density metadata without changing
|
|
821
|
+
# dimensions. For vector images, it controls the DPI used during rasterization.
|
|
822
|
+
# Cannot be used inside layers. See
|
|
823
|
+
# [Density](https://imagekit.io/docs/image-optimization#density---dn).
|
|
824
|
+
#
|
|
825
|
+
# @see Imagekitio::Models::Transformation#density
|
|
826
|
+
module Density
|
|
827
|
+
extend Imagekitio::Internal::Type::Union
|
|
828
|
+
|
|
829
|
+
variant Integer
|
|
830
|
+
|
|
831
|
+
variant String
|
|
832
|
+
|
|
833
|
+
# @!method self.variants
|
|
834
|
+
# @return [Array(Integer, String)]
|
|
835
|
+
end
|
|
836
|
+
|
|
805
837
|
# Specifies the duration (in seconds) for trimming videos, e.g., `5` or `10.5`.
|
|
806
838
|
# Typically used with startOffset to indicate the length from the start offset.
|
|
807
839
|
# Arithmetic expressions are supported. See
|
|
@@ -46,8 +46,17 @@ module Imagekitio
|
|
|
46
46
|
# Triggered when a file version is deleted.
|
|
47
47
|
variant -> { Imagekitio::FileVersionDeleteEvent }
|
|
48
48
|
|
|
49
|
+
# Triggered when a folder is created, whether explicitly, by copying or moving a folder, or implicitly when an upload creates missing parent folders. Copying or moving a folder tree sends one event per folder in the tree.
|
|
50
|
+
variant -> { Imagekitio::FolderCreateEvent }
|
|
51
|
+
|
|
52
|
+
# Triggered when a folder is updated, for example when its custom metadata changes or it is renamed. Renaming a folder sends one event per folder in the tree, each with its new `folderPath`.
|
|
53
|
+
variant -> { Imagekitio::FolderUpdateEvent }
|
|
54
|
+
|
|
55
|
+
# Triggered when a folder is deleted. Deleting a folder tree sends one event per folder in the tree; the files inside it send `file.deleted` events and their versions send `file-version.deleted` events. Moving a folder sends this event for the old `folderId` and `folder.created` for the new one.
|
|
56
|
+
variant -> { Imagekitio::FolderDeleteEvent }
|
|
57
|
+
|
|
49
58
|
# @!method self.variants
|
|
50
|
-
# @return [Array(Imagekitio::Models::VideoTransformationAcceptedEvent, Imagekitio::Models::VideoTransformationReadyEvent, Imagekitio::Models::VideoTransformationErrorEvent, Imagekitio::Models::UploadPreTransformSuccessEvent, Imagekitio::Models::UploadPreTransformErrorEvent, Imagekitio::Models::UploadPostTransformSuccessEvent, Imagekitio::Models::UploadPostTransformErrorEvent, Imagekitio::Models::FileCreateEvent, Imagekitio::Models::FileUpdateEvent, Imagekitio::Models::FileDeleteEvent, Imagekitio::Models::FileVersionCreateEvent, Imagekitio::Models::FileVersionDeleteEvent)]
|
|
59
|
+
# @return [Array(Imagekitio::Models::VideoTransformationAcceptedEvent, Imagekitio::Models::VideoTransformationReadyEvent, Imagekitio::Models::VideoTransformationErrorEvent, Imagekitio::Models::UploadPreTransformSuccessEvent, Imagekitio::Models::UploadPreTransformErrorEvent, Imagekitio::Models::UploadPostTransformSuccessEvent, Imagekitio::Models::UploadPostTransformErrorEvent, Imagekitio::Models::FileCreateEvent, Imagekitio::Models::FileUpdateEvent, Imagekitio::Models::FileDeleteEvent, Imagekitio::Models::FileVersionCreateEvent, Imagekitio::Models::FileVersionDeleteEvent, Imagekitio::Models::FolderCreateEvent, Imagekitio::Models::FolderUpdateEvent, Imagekitio::Models::FolderDeleteEvent)]
|
|
51
60
|
end
|
|
52
61
|
end
|
|
53
62
|
end
|
|
@@ -46,8 +46,17 @@ module Imagekitio
|
|
|
46
46
|
# Triggered when a file version is deleted.
|
|
47
47
|
variant -> { Imagekitio::FileVersionDeleteEvent }
|
|
48
48
|
|
|
49
|
+
# Triggered when a folder is created, whether explicitly, by copying or moving a folder, or implicitly when an upload creates missing parent folders. Copying or moving a folder tree sends one event per folder in the tree.
|
|
50
|
+
variant -> { Imagekitio::FolderCreateEvent }
|
|
51
|
+
|
|
52
|
+
# Triggered when a folder is updated, for example when its custom metadata changes or it is renamed. Renaming a folder sends one event per folder in the tree, each with its new `folderPath`.
|
|
53
|
+
variant -> { Imagekitio::FolderUpdateEvent }
|
|
54
|
+
|
|
55
|
+
# Triggered when a folder is deleted. Deleting a folder tree sends one event per folder in the tree; the files inside it send `file.deleted` events and their versions send `file-version.deleted` events. Moving a folder sends this event for the old `folderId` and `folder.created` for the new one.
|
|
56
|
+
variant -> { Imagekitio::FolderDeleteEvent }
|
|
57
|
+
|
|
49
58
|
# @!method self.variants
|
|
50
|
-
# @return [Array(Imagekitio::Models::VideoTransformationAcceptedEvent, Imagekitio::Models::VideoTransformationReadyEvent, Imagekitio::Models::VideoTransformationErrorEvent, Imagekitio::Models::UploadPreTransformSuccessEvent, Imagekitio::Models::UploadPreTransformErrorEvent, Imagekitio::Models::UploadPostTransformSuccessEvent, Imagekitio::Models::UploadPostTransformErrorEvent, Imagekitio::Models::FileCreateEvent, Imagekitio::Models::FileUpdateEvent, Imagekitio::Models::FileDeleteEvent, Imagekitio::Models::FileVersionCreateEvent, Imagekitio::Models::FileVersionDeleteEvent)]
|
|
59
|
+
# @return [Array(Imagekitio::Models::VideoTransformationAcceptedEvent, Imagekitio::Models::VideoTransformationReadyEvent, Imagekitio::Models::VideoTransformationErrorEvent, Imagekitio::Models::UploadPreTransformSuccessEvent, Imagekitio::Models::UploadPreTransformErrorEvent, Imagekitio::Models::UploadPostTransformSuccessEvent, Imagekitio::Models::UploadPostTransformErrorEvent, Imagekitio::Models::FileCreateEvent, Imagekitio::Models::FileUpdateEvent, Imagekitio::Models::FileDeleteEvent, Imagekitio::Models::FileVersionCreateEvent, Imagekitio::Models::FileVersionDeleteEvent, Imagekitio::Models::FolderCreateEvent, Imagekitio::Models::FolderUpdateEvent, Imagekitio::Models::FolderDeleteEvent)]
|
|
51
60
|
end
|
|
52
61
|
end
|
|
53
62
|
end
|
|
@@ -23,6 +23,11 @@ module Imagekitio
|
|
|
23
23
|
# value for that key. Before setting any custom metadata on an asset you have to
|
|
24
24
|
# create the field using custom metadata fields API.
|
|
25
25
|
#
|
|
26
|
+
# To preserve the original creation date of an asset migrated from another system,
|
|
27
|
+
# set the reserved `_internal_original_created_datetime` key to an ISO 8601 date
|
|
28
|
+
# string. This key is available once the original creation date setting is enabled
|
|
29
|
+
# in the media library settings.
|
|
30
|
+
#
|
|
26
31
|
# @return [Hash{Symbol=>Object}, nil]
|
|
27
32
|
optional :custom_metadata,
|
|
28
33
|
Imagekitio::Internal::Type::HashOf[Imagekitio::Internal::Type::Unknown],
|
data/lib/imagekitio/models.rb
CHANGED
|
@@ -108,8 +108,12 @@ module Imagekitio
|
|
|
108
108
|
|
|
109
109
|
FolderCopyParams = Imagekitio::Models::FolderCopyParams
|
|
110
110
|
|
|
111
|
+
FolderCreateEvent = Imagekitio::Models::FolderCreateEvent
|
|
112
|
+
|
|
111
113
|
FolderCreateParams = Imagekitio::Models::FolderCreateParams
|
|
112
114
|
|
|
115
|
+
FolderDeleteEvent = Imagekitio::Models::FolderDeleteEvent
|
|
116
|
+
|
|
113
117
|
FolderDeleteParams = Imagekitio::Models::FolderDeleteParams
|
|
114
118
|
|
|
115
119
|
FolderMoveParams = Imagekitio::Models::FolderMoveParams
|
|
@@ -118,6 +122,8 @@ module Imagekitio
|
|
|
118
122
|
|
|
119
123
|
Folders = Imagekitio::Models::Folders
|
|
120
124
|
|
|
125
|
+
FolderUpdateEvent = Imagekitio::Models::FolderUpdateEvent
|
|
126
|
+
|
|
121
127
|
GetImageAttributesOptions = Imagekitio::Models::GetImageAttributesOptions
|
|
122
128
|
|
|
123
129
|
ImageOverlay = Imagekitio::Models::ImageOverlay
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Imagekitio
|
|
4
|
+
module Resources
|
|
5
|
+
class Accounts
|
|
6
|
+
class Webhooks
|
|
7
|
+
# Some parameter documentations has been truncated, see
|
|
8
|
+
# {Imagekitio::Models::Accounts::WebhookCreateParams} for more details.
|
|
9
|
+
#
|
|
10
|
+
# Creates a new webhook and returns the created object, including the generated
|
|
11
|
+
# signing `secret`.
|
|
12
|
+
#
|
|
13
|
+
# ImageKit sends a `POST` request to the webhook `endpoint` whenever one of the
|
|
14
|
+
# subscribed `events` occurs. Use the `secret` to verify the signature of each
|
|
15
|
+
# request. Learn more about [webhooks](https://imagekit.io/docs/webhooks).
|
|
16
|
+
#
|
|
17
|
+
# You can create up to 3 webhooks per account.
|
|
18
|
+
#
|
|
19
|
+
# @overload create(endpoint:, events:, enabled: nil, request_options: {})
|
|
20
|
+
#
|
|
21
|
+
# @param endpoint [String] The URL where ImageKit sends webhook events as `POST` requests. Must use the `ht
|
|
22
|
+
#
|
|
23
|
+
# @param events [Array<Symbol, Imagekitio::Models::Accounts::WebhookEventType>] The event types this webhook is subscribed to. ImageKit sends a request to the `
|
|
24
|
+
#
|
|
25
|
+
# @param enabled [Boolean] Whether the webhook is enabled. When `false`, ImageKit doesn't send any events t
|
|
26
|
+
#
|
|
27
|
+
# @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
28
|
+
#
|
|
29
|
+
# @return [Imagekitio::Models::Accounts::Webhook]
|
|
30
|
+
#
|
|
31
|
+
# @see Imagekitio::Models::Accounts::WebhookCreateParams
|
|
32
|
+
def create(params)
|
|
33
|
+
parsed, options = Imagekitio::Accounts::WebhookCreateParams.dump_request(params)
|
|
34
|
+
@client.request(
|
|
35
|
+
method: :post,
|
|
36
|
+
path: "v1/accounts/webhooks",
|
|
37
|
+
body: parsed,
|
|
38
|
+
model: Imagekitio::Accounts::Webhook,
|
|
39
|
+
options: options
|
|
40
|
+
)
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
# Some parameter documentations has been truncated, see
|
|
44
|
+
# {Imagekitio::Models::Accounts::WebhookUpdateParams} for more details.
|
|
45
|
+
#
|
|
46
|
+
# Updates the webhook identified by `id` and returns the updated object. Only the
|
|
47
|
+
# fields included in the request body are changed.
|
|
48
|
+
#
|
|
49
|
+
# When `events` is provided, it replaces the existing list of subscribed events.
|
|
50
|
+
# The signing `secret` can't be changed.
|
|
51
|
+
#
|
|
52
|
+
# @overload update(id, enabled: nil, endpoint: nil, events: nil, request_options: {})
|
|
53
|
+
#
|
|
54
|
+
# @param id [String] Unique identifier for a webhook.
|
|
55
|
+
#
|
|
56
|
+
# @param enabled [Boolean] Whether the webhook is enabled. Omit to leave the current value unchanged.
|
|
57
|
+
#
|
|
58
|
+
# @param endpoint [String] The URL where ImageKit sends webhook events as `POST` requests. Must use the `ht
|
|
59
|
+
#
|
|
60
|
+
# @param events [Array<Symbol, Imagekitio::Models::Accounts::WebhookEventType>] The event types this webhook is subscribed to. Replaces the existing list. Omit
|
|
61
|
+
#
|
|
62
|
+
# @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
63
|
+
#
|
|
64
|
+
# @return [Imagekitio::Models::Accounts::Webhook]
|
|
65
|
+
#
|
|
66
|
+
# @see Imagekitio::Models::Accounts::WebhookUpdateParams
|
|
67
|
+
def update(id, params = {})
|
|
68
|
+
parsed, options = Imagekitio::Accounts::WebhookUpdateParams.dump_request(params)
|
|
69
|
+
@client.request(
|
|
70
|
+
method: :patch,
|
|
71
|
+
path: ["v1/accounts/webhooks/%1$s", id],
|
|
72
|
+
body: parsed,
|
|
73
|
+
model: Imagekitio::Accounts::Webhook,
|
|
74
|
+
options: options
|
|
75
|
+
)
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
# Returns an array of all webhooks configured for your account.
|
|
79
|
+
#
|
|
80
|
+
# @overload list(request_options: {})
|
|
81
|
+
#
|
|
82
|
+
# @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
83
|
+
#
|
|
84
|
+
# @return [Array<Imagekitio::Models::Accounts::Webhook>]
|
|
85
|
+
#
|
|
86
|
+
# @see Imagekitio::Models::Accounts::WebhookListParams
|
|
87
|
+
def list(params = {})
|
|
88
|
+
@client.request(
|
|
89
|
+
method: :get,
|
|
90
|
+
path: "v1/accounts/webhooks",
|
|
91
|
+
model: Imagekitio::Internal::Type::ArrayOf[Imagekitio::Accounts::Webhook],
|
|
92
|
+
options: params[:request_options]
|
|
93
|
+
)
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
# Permanently deletes the webhook identified by `id`. ImageKit stops sending
|
|
97
|
+
# events to its endpoint.
|
|
98
|
+
#
|
|
99
|
+
# @overload delete(id, request_options: {})
|
|
100
|
+
#
|
|
101
|
+
# @param id [String] Unique identifier for a webhook.
|
|
102
|
+
#
|
|
103
|
+
# @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
104
|
+
#
|
|
105
|
+
# @return [nil]
|
|
106
|
+
#
|
|
107
|
+
# @see Imagekitio::Models::Accounts::WebhookDeleteParams
|
|
108
|
+
def delete(id, params = {})
|
|
109
|
+
@client.request(
|
|
110
|
+
method: :delete,
|
|
111
|
+
path: ["v1/accounts/webhooks/%1$s", id],
|
|
112
|
+
model: NilClass,
|
|
113
|
+
options: params[:request_options]
|
|
114
|
+
)
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
# Retrieves the webhook identified by `id`.
|
|
118
|
+
#
|
|
119
|
+
# @overload get(id, request_options: {})
|
|
120
|
+
#
|
|
121
|
+
# @param id [String] Unique identifier for a webhook.
|
|
122
|
+
#
|
|
123
|
+
# @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
124
|
+
#
|
|
125
|
+
# @return [Imagekitio::Models::Accounts::Webhook]
|
|
126
|
+
#
|
|
127
|
+
# @see Imagekitio::Models::Accounts::WebhookGetParams
|
|
128
|
+
def get(id, params = {})
|
|
129
|
+
@client.request(
|
|
130
|
+
method: :get,
|
|
131
|
+
path: ["v1/accounts/webhooks/%1$s", id],
|
|
132
|
+
model: Imagekitio::Accounts::Webhook,
|
|
133
|
+
options: params[:request_options]
|
|
134
|
+
)
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
# @api private
|
|
138
|
+
#
|
|
139
|
+
# @param client [Imagekitio::Client]
|
|
140
|
+
def initialize(client:)
|
|
141
|
+
@client = client
|
|
142
|
+
end
|
|
143
|
+
end
|
|
144
|
+
end
|
|
145
|
+
end
|
|
146
|
+
end
|
|
@@ -15,6 +15,9 @@ module Imagekitio
|
|
|
15
15
|
# @return [Imagekitio::Resources::Accounts::URLEndpoints]
|
|
16
16
|
attr_reader :url_endpoints
|
|
17
17
|
|
|
18
|
+
# @return [Imagekitio::Resources::Accounts::Webhooks]
|
|
19
|
+
attr_reader :webhooks
|
|
20
|
+
|
|
18
21
|
# @api private
|
|
19
22
|
#
|
|
20
23
|
# @param client [Imagekitio::Client]
|
|
@@ -24,6 +27,7 @@ module Imagekitio
|
|
|
24
27
|
@usage_analytics = Imagekitio::Resources::Accounts::UsageAnalytics.new(client: client)
|
|
25
28
|
@origins = Imagekitio::Resources::Accounts::Origins.new(client: client)
|
|
26
29
|
@url_endpoints = Imagekitio::Resources::Accounts::URLEndpoints.new(client: client)
|
|
30
|
+
@webhooks = Imagekitio::Resources::Accounts::Webhooks.new(client: client)
|
|
27
31
|
end
|
|
28
32
|
end
|
|
29
33
|
end
|
|
@@ -116,14 +116,14 @@ module Imagekitio
|
|
|
116
116
|
#
|
|
117
117
|
# @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
118
118
|
#
|
|
119
|
-
# @return [
|
|
119
|
+
# @return [nil]
|
|
120
120
|
#
|
|
121
121
|
# @see Imagekitio::Models::CustomMetadataFieldDeleteParams
|
|
122
122
|
def delete(id, params = {})
|
|
123
123
|
@client.request(
|
|
124
124
|
method: :delete,
|
|
125
125
|
path: ["v1/customMetadataFields/%1$s", id],
|
|
126
|
-
model:
|
|
126
|
+
model: NilClass,
|
|
127
127
|
options: params[:request_options]
|
|
128
128
|
)
|
|
129
129
|
end
|
|
@@ -43,7 +43,7 @@ module Imagekitio
|
|
|
43
43
|
#
|
|
44
44
|
# @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
45
45
|
#
|
|
46
|
-
# @return [
|
|
46
|
+
# @return [nil]
|
|
47
47
|
#
|
|
48
48
|
# @see Imagekitio::Models::Files::VersionDeleteParams
|
|
49
49
|
def delete(version_id, params)
|
|
@@ -55,7 +55,7 @@ module Imagekitio
|
|
|
55
55
|
@client.request(
|
|
56
56
|
method: :delete,
|
|
57
57
|
path: ["v1/files/%1$s/versions/%2$s", file_id, version_id],
|
|
58
|
-
model:
|
|
58
|
+
model: NilClass,
|
|
59
59
|
options: options
|
|
60
60
|
)
|
|
61
61
|
end
|
|
@@ -87,18 +87,12 @@ module Imagekitio
|
|
|
87
87
|
#
|
|
88
88
|
# @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
89
89
|
#
|
|
90
|
-
# @return [
|
|
90
|
+
# @return [nil]
|
|
91
91
|
#
|
|
92
92
|
# @see Imagekitio::Models::FileCopyParams
|
|
93
93
|
def copy(params)
|
|
94
94
|
parsed, options = Imagekitio::FileCopyParams.dump_request(params)
|
|
95
|
-
@client.request(
|
|
96
|
-
method: :post,
|
|
97
|
-
path: "v1/files/copy",
|
|
98
|
-
body: parsed,
|
|
99
|
-
model: Imagekitio::Models::FileCopyResponse,
|
|
100
|
-
options: options
|
|
101
|
-
)
|
|
95
|
+
@client.request(method: :post, path: "v1/files/copy", body: parsed, model: NilClass, options: options)
|
|
102
96
|
end
|
|
103
97
|
|
|
104
98
|
# Some parameter documentations has been truncated, see
|
|
@@ -141,18 +135,12 @@ module Imagekitio
|
|
|
141
135
|
#
|
|
142
136
|
# @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
143
137
|
#
|
|
144
|
-
# @return [
|
|
138
|
+
# @return [nil]
|
|
145
139
|
#
|
|
146
140
|
# @see Imagekitio::Models::FileMoveParams
|
|
147
141
|
def move(params)
|
|
148
142
|
parsed, options = Imagekitio::FileMoveParams.dump_request(params)
|
|
149
|
-
@client.request(
|
|
150
|
-
method: :post,
|
|
151
|
-
path: "v1/files/move",
|
|
152
|
-
body: parsed,
|
|
153
|
-
model: Imagekitio::Models::FileMoveResponse,
|
|
154
|
-
options: options
|
|
155
|
-
)
|
|
143
|
+
@client.request(method: :post, path: "v1/files/move", body: parsed, model: NilClass, options: options)
|
|
156
144
|
end
|
|
157
145
|
|
|
158
146
|
# Some parameter documentations has been truncated, see
|
|
@@ -46,18 +46,12 @@ module Imagekitio
|
|
|
46
46
|
#
|
|
47
47
|
# @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
48
48
|
#
|
|
49
|
-
# @return [
|
|
49
|
+
# @return [nil]
|
|
50
50
|
#
|
|
51
51
|
# @see Imagekitio::Models::FolderDeleteParams
|
|
52
52
|
def delete(params)
|
|
53
53
|
parsed, options = Imagekitio::FolderDeleteParams.dump_request(params)
|
|
54
|
-
@client.request(
|
|
55
|
-
method: :delete,
|
|
56
|
-
path: "v1/folder",
|
|
57
|
-
body: parsed,
|
|
58
|
-
model: Imagekitio::Models::FolderDeleteResponse,
|
|
59
|
-
options: options
|
|
60
|
-
)
|
|
54
|
+
@client.request(method: :delete, path: "v1/folder", body: parsed, model: NilClass, options: options)
|
|
61
55
|
end
|
|
62
56
|
|
|
63
57
|
# Some parameter documentations has been truncated, see
|
|
@@ -5,7 +5,7 @@ module Imagekitio
|
|
|
5
5
|
class Webhooks
|
|
6
6
|
# @param payload [String] The raw webhook payload as a string
|
|
7
7
|
#
|
|
8
|
-
# @return [Imagekitio::Models::VideoTransformationAcceptedEvent, Imagekitio::Models::VideoTransformationReadyEvent, Imagekitio::Models::VideoTransformationErrorEvent, Imagekitio::Models::UploadPreTransformSuccessEvent, Imagekitio::Models::UploadPreTransformErrorEvent, Imagekitio::Models::UploadPostTransformSuccessEvent, Imagekitio::Models::UploadPostTransformErrorEvent, Imagekitio::Models::FileCreateEvent, Imagekitio::Models::FileUpdateEvent, Imagekitio::Models::FileDeleteEvent, Imagekitio::Models::FileVersionCreateEvent, Imagekitio::Models::FileVersionDeleteEvent]
|
|
8
|
+
# @return [Imagekitio::Models::VideoTransformationAcceptedEvent, Imagekitio::Models::VideoTransformationReadyEvent, Imagekitio::Models::VideoTransformationErrorEvent, Imagekitio::Models::UploadPreTransformSuccessEvent, Imagekitio::Models::UploadPreTransformErrorEvent, Imagekitio::Models::UploadPostTransformSuccessEvent, Imagekitio::Models::UploadPostTransformErrorEvent, Imagekitio::Models::FileCreateEvent, Imagekitio::Models::FileUpdateEvent, Imagekitio::Models::FileDeleteEvent, Imagekitio::Models::FileVersionCreateEvent, Imagekitio::Models::FileVersionDeleteEvent, Imagekitio::Models::FolderCreateEvent, Imagekitio::Models::FolderUpdateEvent, Imagekitio::Models::FolderDeleteEvent]
|
|
9
9
|
def unsafe_unwrap(payload)
|
|
10
10
|
parsed = JSON.parse(payload, symbolize_names: true)
|
|
11
11
|
Imagekitio::Internal::Type::Converter.coerce(Imagekitio::Models::UnsafeUnwrapWebhookEvent, parsed)
|
|
@@ -17,7 +17,7 @@ module Imagekitio
|
|
|
17
17
|
#
|
|
18
18
|
# @param key [String, nil] The webhook signing key
|
|
19
19
|
#
|
|
20
|
-
# @return [Imagekitio::Models::VideoTransformationAcceptedEvent, Imagekitio::Models::VideoTransformationReadyEvent, Imagekitio::Models::VideoTransformationErrorEvent, Imagekitio::Models::UploadPreTransformSuccessEvent, Imagekitio::Models::UploadPreTransformErrorEvent, Imagekitio::Models::UploadPostTransformSuccessEvent, Imagekitio::Models::UploadPostTransformErrorEvent, Imagekitio::Models::FileCreateEvent, Imagekitio::Models::FileUpdateEvent, Imagekitio::Models::FileDeleteEvent, Imagekitio::Models::FileVersionCreateEvent, Imagekitio::Models::FileVersionDeleteEvent]
|
|
20
|
+
# @return [Imagekitio::Models::VideoTransformationAcceptedEvent, Imagekitio::Models::VideoTransformationReadyEvent, Imagekitio::Models::VideoTransformationErrorEvent, Imagekitio::Models::UploadPreTransformSuccessEvent, Imagekitio::Models::UploadPreTransformErrorEvent, Imagekitio::Models::UploadPostTransformSuccessEvent, Imagekitio::Models::UploadPostTransformErrorEvent, Imagekitio::Models::FileCreateEvent, Imagekitio::Models::FileUpdateEvent, Imagekitio::Models::FileDeleteEvent, Imagekitio::Models::FileVersionCreateEvent, Imagekitio::Models::FileVersionDeleteEvent, Imagekitio::Models::FolderCreateEvent, Imagekitio::Models::FolderUpdateEvent, Imagekitio::Models::FolderDeleteEvent]
|
|
21
21
|
def unwrap(payload, headers:, key: @client.webhook_secret)
|
|
22
22
|
if key.nil?
|
|
23
23
|
raise ArgumentError.new("Cannot verify a webhook without a key on either the client's webhook_secret or passed in as an argument")
|
data/lib/imagekitio/version.rb
CHANGED
data/lib/imagekitio.rb
CHANGED
|
@@ -79,6 +79,14 @@ require_relative "imagekitio/models/accounts/usage_analytics_get_params"
|
|
|
79
79
|
require_relative "imagekitio/models/accounts/usage_analytics_response"
|
|
80
80
|
require_relative "imagekitio/models/accounts/usage_get_params"
|
|
81
81
|
require_relative "imagekitio/models/accounts/usage_get_response"
|
|
82
|
+
require_relative "imagekitio/models/accounts/webhook"
|
|
83
|
+
require_relative "imagekitio/models/accounts/webhook_create_params"
|
|
84
|
+
require_relative "imagekitio/models/accounts/webhook_delete_params"
|
|
85
|
+
require_relative "imagekitio/models/accounts/webhook_event_type"
|
|
86
|
+
require_relative "imagekitio/models/accounts/webhook_get_params"
|
|
87
|
+
require_relative "imagekitio/models/accounts/webhook_list_params"
|
|
88
|
+
require_relative "imagekitio/models/accounts/webhook_list_response"
|
|
89
|
+
require_relative "imagekitio/models/accounts/webhook_update_params"
|
|
82
90
|
require_relative "imagekitio/models/ai_tag"
|
|
83
91
|
require_relative "imagekitio/models/asset_list_params"
|
|
84
92
|
require_relative "imagekitio/models/asset_list_response"
|
|
@@ -92,7 +100,6 @@ require_relative "imagekitio/models/custom_metadata"
|
|
|
92
100
|
require_relative "imagekitio/models/custom_metadata_field"
|
|
93
101
|
require_relative "imagekitio/models/custom_metadata_field_create_params"
|
|
94
102
|
require_relative "imagekitio/models/custom_metadata_field_delete_params"
|
|
95
|
-
require_relative "imagekitio/models/custom_metadata_field_delete_response"
|
|
96
103
|
require_relative "imagekitio/models/custom_metadata_field_list_params"
|
|
97
104
|
require_relative "imagekitio/models/custom_metadata_field_list_response"
|
|
98
105
|
require_relative "imagekitio/models/custom_metadata_field_update_params"
|
|
@@ -101,13 +108,11 @@ require_relative "imagekitio/models/extension_config"
|
|
|
101
108
|
require_relative "imagekitio/models/extension_item"
|
|
102
109
|
require_relative "imagekitio/models/extensions"
|
|
103
110
|
require_relative "imagekitio/models/file_copy_params"
|
|
104
|
-
require_relative "imagekitio/models/file_copy_response"
|
|
105
111
|
require_relative "imagekitio/models/file_create_event"
|
|
106
112
|
require_relative "imagekitio/models/file_delete_event"
|
|
107
113
|
require_relative "imagekitio/models/file_delete_params"
|
|
108
114
|
require_relative "imagekitio/models/file_get_params"
|
|
109
115
|
require_relative "imagekitio/models/file_move_params"
|
|
110
|
-
require_relative "imagekitio/models/file_move_response"
|
|
111
116
|
require_relative "imagekitio/models/file_rename_params"
|
|
112
117
|
require_relative "imagekitio/models/file_rename_response"
|
|
113
118
|
require_relative "imagekitio/models/files/bulk_add_tags_params"
|
|
@@ -121,7 +126,6 @@ require_relative "imagekitio/models/files/bulk_remove_tags_response"
|
|
|
121
126
|
require_relative "imagekitio/models/files/metadata_get_from_url_params"
|
|
122
127
|
require_relative "imagekitio/models/files/metadata_get_params"
|
|
123
128
|
require_relative "imagekitio/models/files/version_delete_params"
|
|
124
|
-
require_relative "imagekitio/models/files/version_delete_response"
|
|
125
129
|
require_relative "imagekitio/models/files/version_get_params"
|
|
126
130
|
require_relative "imagekitio/models/files/version_list_params"
|
|
127
131
|
require_relative "imagekitio/models/files/version_list_response"
|
|
@@ -136,16 +140,18 @@ require_relative "imagekitio/models/file_version_delete_event"
|
|
|
136
140
|
require_relative "imagekitio/models/folder"
|
|
137
141
|
require_relative "imagekitio/models/folder_copy_params"
|
|
138
142
|
require_relative "imagekitio/models/folder_copy_response"
|
|
143
|
+
require_relative "imagekitio/models/folder_create_event"
|
|
139
144
|
require_relative "imagekitio/models/folder_create_params"
|
|
140
145
|
require_relative "imagekitio/models/folder_create_response"
|
|
146
|
+
require_relative "imagekitio/models/folder_delete_event"
|
|
141
147
|
require_relative "imagekitio/models/folder_delete_params"
|
|
142
|
-
require_relative "imagekitio/models/folder_delete_response"
|
|
143
148
|
require_relative "imagekitio/models/folder_move_params"
|
|
144
149
|
require_relative "imagekitio/models/folder_move_response"
|
|
145
150
|
require_relative "imagekitio/models/folder_rename_params"
|
|
146
151
|
require_relative "imagekitio/models/folder_rename_response"
|
|
147
152
|
require_relative "imagekitio/models/folders/job_get_params"
|
|
148
153
|
require_relative "imagekitio/models/folders/job_get_response"
|
|
154
|
+
require_relative "imagekitio/models/folder_update_event"
|
|
149
155
|
require_relative "imagekitio/models/get_image_attributes_options"
|
|
150
156
|
require_relative "imagekitio/models/image_overlay"
|
|
151
157
|
require_relative "imagekitio/models/metadata"
|
|
@@ -196,6 +202,7 @@ require_relative "imagekitio/resources/accounts/origins"
|
|
|
196
202
|
require_relative "imagekitio/resources/accounts/url_endpoints"
|
|
197
203
|
require_relative "imagekitio/resources/accounts/usage"
|
|
198
204
|
require_relative "imagekitio/resources/accounts/usage_analytics"
|
|
205
|
+
require_relative "imagekitio/resources/accounts/webhooks"
|
|
199
206
|
require_relative "imagekitio/resources/assets"
|
|
200
207
|
require_relative "imagekitio/resources/beta"
|
|
201
208
|
require_relative "imagekitio/resources/beta/v2"
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Imagekitio
|
|
4
|
+
module Models
|
|
5
|
+
module Accounts
|
|
6
|
+
class Webhook < Imagekitio::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(Imagekitio::Accounts::Webhook, Imagekitio::Internal::AnyHash)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Unique identifier for a webhook.
|
|
13
|
+
sig { returns(String) }
|
|
14
|
+
attr_accessor :id
|
|
15
|
+
|
|
16
|
+
# ISO 8601 timestamp of when the webhook was created.
|
|
17
|
+
sig { returns(Time) }
|
|
18
|
+
attr_accessor :created_at
|
|
19
|
+
|
|
20
|
+
# Whether the webhook is enabled. When `false`, ImageKit doesn't send any events
|
|
21
|
+
# to the `endpoint`.
|
|
22
|
+
sig { returns(T::Boolean) }
|
|
23
|
+
attr_accessor :enabled
|
|
24
|
+
|
|
25
|
+
# The URL where ImageKit sends webhook events as `POST` requests. Must use the
|
|
26
|
+
# `http` or `https` protocol, and must be unique across all webhooks for your
|
|
27
|
+
# account.
|
|
28
|
+
sig { returns(String) }
|
|
29
|
+
attr_accessor :endpoint
|
|
30
|
+
|
|
31
|
+
# The event types this webhook is subscribed to. ImageKit sends a request to the
|
|
32
|
+
# `endpoint` only for these events.
|
|
33
|
+
sig do
|
|
34
|
+
returns(
|
|
35
|
+
T::Array[Imagekitio::Accounts::WebhookEventType::TaggedSymbol]
|
|
36
|
+
)
|
|
37
|
+
end
|
|
38
|
+
attr_accessor :events
|
|
39
|
+
|
|
40
|
+
# Signing secret generated by ImageKit, used to verify that webhook requests come
|
|
41
|
+
# from ImageKit. Starts with `whsec_`. This value can't be set or changed through
|
|
42
|
+
# the API. Learn more about
|
|
43
|
+
# [verifying webhook signatures](https://imagekit.io/docs/webhooks#verify-webhook-signature).
|
|
44
|
+
sig { returns(String) }
|
|
45
|
+
attr_accessor :secret
|
|
46
|
+
|
|
47
|
+
# ISO 8601 timestamp of when the webhook was last updated.
|
|
48
|
+
sig { returns(Time) }
|
|
49
|
+
attr_accessor :updated_at
|
|
50
|
+
|
|
51
|
+
# A webhook is an HTTP endpoint that ImageKit notifies when subscribed events
|
|
52
|
+
# occur in your account. Learn more about
|
|
53
|
+
# [webhooks](https://imagekit.io/docs/webhooks).
|
|
54
|
+
sig do
|
|
55
|
+
params(
|
|
56
|
+
id: String,
|
|
57
|
+
created_at: Time,
|
|
58
|
+
enabled: T::Boolean,
|
|
59
|
+
endpoint: String,
|
|
60
|
+
events: T::Array[Imagekitio::Accounts::WebhookEventType::OrSymbol],
|
|
61
|
+
secret: String,
|
|
62
|
+
updated_at: Time
|
|
63
|
+
).returns(T.attached_class)
|
|
64
|
+
end
|
|
65
|
+
def self.new(
|
|
66
|
+
# Unique identifier for a webhook.
|
|
67
|
+
id:,
|
|
68
|
+
# ISO 8601 timestamp of when the webhook was created.
|
|
69
|
+
created_at:,
|
|
70
|
+
# Whether the webhook is enabled. When `false`, ImageKit doesn't send any events
|
|
71
|
+
# to the `endpoint`.
|
|
72
|
+
enabled:,
|
|
73
|
+
# The URL where ImageKit sends webhook events as `POST` requests. Must use the
|
|
74
|
+
# `http` or `https` protocol, and must be unique across all webhooks for your
|
|
75
|
+
# account.
|
|
76
|
+
endpoint:,
|
|
77
|
+
# The event types this webhook is subscribed to. ImageKit sends a request to the
|
|
78
|
+
# `endpoint` only for these events.
|
|
79
|
+
events:,
|
|
80
|
+
# Signing secret generated by ImageKit, used to verify that webhook requests come
|
|
81
|
+
# from ImageKit. Starts with `whsec_`. This value can't be set or changed through
|
|
82
|
+
# the API. Learn more about
|
|
83
|
+
# [verifying webhook signatures](https://imagekit.io/docs/webhooks#verify-webhook-signature).
|
|
84
|
+
secret:,
|
|
85
|
+
# ISO 8601 timestamp of when the webhook was last updated.
|
|
86
|
+
updated_at:
|
|
87
|
+
)
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
sig do
|
|
91
|
+
override.returns(
|
|
92
|
+
{
|
|
93
|
+
id: String,
|
|
94
|
+
created_at: Time,
|
|
95
|
+
enabled: T::Boolean,
|
|
96
|
+
endpoint: String,
|
|
97
|
+
events:
|
|
98
|
+
T::Array[Imagekitio::Accounts::WebhookEventType::TaggedSymbol],
|
|
99
|
+
secret: String,
|
|
100
|
+
updated_at: Time
|
|
101
|
+
}
|
|
102
|
+
)
|
|
103
|
+
end
|
|
104
|
+
def to_hash
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
end
|
|
109
|
+
end
|