dodopayments 1.49.0 → 1.51.1

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 (71) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +22 -0
  3. data/README.md +17 -51
  4. data/lib/dodopayments/client.rb +4 -4
  5. data/lib/dodopayments/internal/transport/base_client.rb +1 -4
  6. data/lib/dodopayments/internal/transport/pooled_net_requester.rb +1 -9
  7. data/lib/dodopayments/internal/type/base_model.rb +6 -11
  8. data/lib/dodopayments/internal/util.rb +1 -1
  9. data/lib/dodopayments/models/checkout_session_create_params.rb +14 -0
  10. data/lib/dodopayments/models/checkout_session_request.rb +347 -0
  11. data/lib/dodopayments/models/checkout_session_response.rb +25 -0
  12. data/lib/dodopayments/models/on_demand_subscription.rb +58 -0
  13. data/lib/dodopayments/models/payment_create_params.rb +1 -4
  14. data/lib/dodopayments/models/subscription.rb +9 -1
  15. data/lib/dodopayments/models/subscription_create_params.rb +3 -56
  16. data/lib/dodopayments/models/subscription_update_params.rb +9 -1
  17. data/lib/dodopayments/models/webhook_create_params.rb +1 -4
  18. data/lib/dodopayments/models/{webhook_create_response.rb → webhook_details.rb} +2 -2
  19. data/lib/dodopayments/models.rb +10 -2
  20. data/lib/dodopayments/resources/checkout_sessions.rb +61 -0
  21. data/lib/dodopayments/resources/subscriptions.rb +2 -2
  22. data/lib/dodopayments/resources/webhooks.rb +8 -8
  23. data/lib/dodopayments/version.rb +1 -1
  24. data/lib/dodopayments.rb +7 -7
  25. data/rbi/dodopayments/client.rbi +3 -3
  26. data/rbi/dodopayments/errors.rbi +2 -2
  27. data/rbi/dodopayments/models/checkout_session_create_params.rbi +32 -0
  28. data/rbi/dodopayments/models/checkout_session_request.rbi +652 -0
  29. data/rbi/dodopayments/models/checkout_session_response.rbi +40 -0
  30. data/rbi/dodopayments/models/dispute.rbi +4 -4
  31. data/rbi/dodopayments/models/get_dispute.rbi +4 -4
  32. data/rbi/dodopayments/models/license_key.rbi +2 -2
  33. data/rbi/dodopayments/models/on_demand_subscription.rbi +86 -0
  34. data/rbi/dodopayments/models/payment.rbi +8 -8
  35. data/rbi/dodopayments/models/refund.rbi +4 -4
  36. data/rbi/dodopayments/models/subscription.rbi +21 -11
  37. data/rbi/dodopayments/models/subscription_create_params.rbi +4 -90
  38. data/rbi/dodopayments/models/subscription_update_params.rbi +2 -0
  39. data/rbi/dodopayments/models/{webhook_list_response.rbi → webhook_details.rbi} +2 -5
  40. data/rbi/dodopayments/models.rbi +11 -2
  41. data/rbi/dodopayments/resources/checkout_sessions.rbi +80 -0
  42. data/rbi/dodopayments/resources/subscriptions.rbi +2 -2
  43. data/rbi/dodopayments/resources/webhooks.rbi +4 -4
  44. data/sig/dodopayments/client.rbs +2 -2
  45. data/sig/dodopayments/models/checkout_session_create_params.rbs +15 -0
  46. data/sig/dodopayments/models/checkout_session_request.rbs +277 -0
  47. data/sig/dodopayments/models/checkout_session_response.rbs +16 -0
  48. data/sig/dodopayments/models/on_demand_subscription.rbs +40 -0
  49. data/sig/dodopayments/models/subscription.rbs +8 -3
  50. data/sig/dodopayments/models/subscription_create_params.rbs +4 -41
  51. data/sig/dodopayments/models/{webhook_list_response.rbs → webhook_details.rbs} +2 -2
  52. data/sig/dodopayments/models.rbs +10 -2
  53. data/sig/dodopayments/resources/checkout_sessions.rbs +24 -0
  54. data/sig/dodopayments/resources/subscriptions.rbs +1 -1
  55. data/sig/dodopayments/resources/webhooks.rbs +4 -4
  56. metadata +20 -20
  57. data/lib/dodopayments/models/webhook_list_response.rb +0 -88
  58. data/lib/dodopayments/models/webhook_retrieve_response.rb +0 -88
  59. data/lib/dodopayments/models/webhook_update_response.rb +0 -88
  60. data/lib/dodopayments/models/your_webhook_url_create_params.rb +0 -32
  61. data/lib/dodopayments/resources/your_webhook_url.rb +0 -56
  62. data/rbi/dodopayments/models/webhook_create_response.rbi +0 -112
  63. data/rbi/dodopayments/models/webhook_retrieve_response.rbi +0 -112
  64. data/rbi/dodopayments/models/webhook_update_response.rbi +0 -112
  65. data/rbi/dodopayments/models/your_webhook_url_create_params.rbi +0 -56
  66. data/rbi/dodopayments/resources/your_webhook_url.rbi +0 -51
  67. data/sig/dodopayments/models/webhook_create_response.rbs +0 -60
  68. data/sig/dodopayments/models/webhook_retrieve_response.rbs +0 -60
  69. data/sig/dodopayments/models/webhook_update_response.rbs +0 -60
  70. data/sig/dodopayments/models/your_webhook_url_create_params.rbs +0 -42
  71. data/sig/dodopayments/resources/your_webhook_url.rbs +0 -18
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dodopayments
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.49.0
4
+ version: 1.51.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dodo Payments
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-08-13 00:00:00.000000000 Z
11
+ date: 2025-08-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: connection_pool
@@ -76,6 +76,9 @@ files:
76
76
  - lib/dodopayments/models/brand_update_images_params.rb
77
77
  - lib/dodopayments/models/brand_update_images_response.rb
78
78
  - lib/dodopayments/models/brand_update_params.rb
79
+ - lib/dodopayments/models/checkout_session_create_params.rb
80
+ - lib/dodopayments/models/checkout_session_request.rb
81
+ - lib/dodopayments/models/checkout_session_response.rb
79
82
  - lib/dodopayments/models/country_code.rb
80
83
  - lib/dodopayments/models/create_new_customer.rb
81
84
  - lib/dodopayments/models/currency.rb
@@ -121,6 +124,7 @@ files:
121
124
  - lib/dodopayments/models/misc_list_supported_countries_params.rb
122
125
  - lib/dodopayments/models/misc_list_supported_countries_response.rb
123
126
  - lib/dodopayments/models/new_customer.rb
127
+ - lib/dodopayments/models/on_demand_subscription.rb
124
128
  - lib/dodopayments/models/one_time_product_cart_item.rb
125
129
  - lib/dodopayments/models/payment.rb
126
130
  - lib/dodopayments/models/payment_create_params.rb
@@ -165,25 +169,22 @@ files:
165
169
  - lib/dodopayments/models/tax_category.rb
166
170
  - lib/dodopayments/models/time_interval.rb
167
171
  - lib/dodopayments/models/webhook_create_params.rb
168
- - lib/dodopayments/models/webhook_create_response.rb
169
172
  - lib/dodopayments/models/webhook_delete_params.rb
173
+ - lib/dodopayments/models/webhook_details.rb
170
174
  - lib/dodopayments/models/webhook_event_type.rb
171
175
  - lib/dodopayments/models/webhook_list_params.rb
172
- - lib/dodopayments/models/webhook_list_response.rb
173
176
  - lib/dodopayments/models/webhook_payload.rb
174
177
  - lib/dodopayments/models/webhook_retrieve_params.rb
175
- - lib/dodopayments/models/webhook_retrieve_response.rb
176
178
  - lib/dodopayments/models/webhook_retrieve_secret_params.rb
177
179
  - lib/dodopayments/models/webhook_retrieve_secret_response.rb
178
180
  - lib/dodopayments/models/webhook_update_params.rb
179
- - lib/dodopayments/models/webhook_update_response.rb
180
181
  - lib/dodopayments/models/webhooks/header_retrieve_params.rb
181
182
  - lib/dodopayments/models/webhooks/header_retrieve_response.rb
182
183
  - lib/dodopayments/models/webhooks/header_update_params.rb
183
- - lib/dodopayments/models/your_webhook_url_create_params.rb
184
184
  - lib/dodopayments/request_options.rb
185
185
  - lib/dodopayments/resources/addons.rb
186
186
  - lib/dodopayments/resources/brands.rb
187
+ - lib/dodopayments/resources/checkout_sessions.rb
187
188
  - lib/dodopayments/resources/customers.rb
188
189
  - lib/dodopayments/resources/customers/customer_portal.rb
189
190
  - lib/dodopayments/resources/discounts.rb
@@ -203,7 +204,6 @@ files:
203
204
  - lib/dodopayments/resources/webhook_events.rb
204
205
  - lib/dodopayments/resources/webhooks.rb
205
206
  - lib/dodopayments/resources/webhooks/headers.rb
206
- - lib/dodopayments/resources/your_webhook_url.rb
207
207
  - lib/dodopayments/version.rb
208
208
  - manifest.yaml
209
209
  - rbi/dodopayments/client.rbi
@@ -246,6 +246,9 @@ files:
246
246
  - rbi/dodopayments/models/brand_update_images_params.rbi
247
247
  - rbi/dodopayments/models/brand_update_images_response.rbi
248
248
  - rbi/dodopayments/models/brand_update_params.rbi
249
+ - rbi/dodopayments/models/checkout_session_create_params.rbi
250
+ - rbi/dodopayments/models/checkout_session_request.rbi
251
+ - rbi/dodopayments/models/checkout_session_response.rbi
249
252
  - rbi/dodopayments/models/country_code.rbi
250
253
  - rbi/dodopayments/models/create_new_customer.rbi
251
254
  - rbi/dodopayments/models/currency.rbi
@@ -291,6 +294,7 @@ files:
291
294
  - rbi/dodopayments/models/misc_list_supported_countries_params.rbi
292
295
  - rbi/dodopayments/models/misc_list_supported_countries_response.rbi
293
296
  - rbi/dodopayments/models/new_customer.rbi
297
+ - rbi/dodopayments/models/on_demand_subscription.rbi
294
298
  - rbi/dodopayments/models/one_time_product_cart_item.rbi
295
299
  - rbi/dodopayments/models/payment.rbi
296
300
  - rbi/dodopayments/models/payment_create_params.rbi
@@ -335,25 +339,22 @@ files:
335
339
  - rbi/dodopayments/models/tax_category.rbi
336
340
  - rbi/dodopayments/models/time_interval.rbi
337
341
  - rbi/dodopayments/models/webhook_create_params.rbi
338
- - rbi/dodopayments/models/webhook_create_response.rbi
339
342
  - rbi/dodopayments/models/webhook_delete_params.rbi
343
+ - rbi/dodopayments/models/webhook_details.rbi
340
344
  - rbi/dodopayments/models/webhook_event_type.rbi
341
345
  - rbi/dodopayments/models/webhook_list_params.rbi
342
- - rbi/dodopayments/models/webhook_list_response.rbi
343
346
  - rbi/dodopayments/models/webhook_payload.rbi
344
347
  - rbi/dodopayments/models/webhook_retrieve_params.rbi
345
- - rbi/dodopayments/models/webhook_retrieve_response.rbi
346
348
  - rbi/dodopayments/models/webhook_retrieve_secret_params.rbi
347
349
  - rbi/dodopayments/models/webhook_retrieve_secret_response.rbi
348
350
  - rbi/dodopayments/models/webhook_update_params.rbi
349
- - rbi/dodopayments/models/webhook_update_response.rbi
350
351
  - rbi/dodopayments/models/webhooks/header_retrieve_params.rbi
351
352
  - rbi/dodopayments/models/webhooks/header_retrieve_response.rbi
352
353
  - rbi/dodopayments/models/webhooks/header_update_params.rbi
353
- - rbi/dodopayments/models/your_webhook_url_create_params.rbi
354
354
  - rbi/dodopayments/request_options.rbi
355
355
  - rbi/dodopayments/resources/addons.rbi
356
356
  - rbi/dodopayments/resources/brands.rbi
357
+ - rbi/dodopayments/resources/checkout_sessions.rbi
357
358
  - rbi/dodopayments/resources/customers.rbi
358
359
  - rbi/dodopayments/resources/customers/customer_portal.rbi
359
360
  - rbi/dodopayments/resources/discounts.rbi
@@ -373,7 +374,6 @@ files:
373
374
  - rbi/dodopayments/resources/webhook_events.rbi
374
375
  - rbi/dodopayments/resources/webhooks.rbi
375
376
  - rbi/dodopayments/resources/webhooks/headers.rbi
376
- - rbi/dodopayments/resources/your_webhook_url.rbi
377
377
  - rbi/dodopayments/version.rbi
378
378
  - sig/dodopayments/client.rbs
379
379
  - sig/dodopayments/errors.rbs
@@ -415,6 +415,9 @@ files:
415
415
  - sig/dodopayments/models/brand_update_images_params.rbs
416
416
  - sig/dodopayments/models/brand_update_images_response.rbs
417
417
  - sig/dodopayments/models/brand_update_params.rbs
418
+ - sig/dodopayments/models/checkout_session_create_params.rbs
419
+ - sig/dodopayments/models/checkout_session_request.rbs
420
+ - sig/dodopayments/models/checkout_session_response.rbs
418
421
  - sig/dodopayments/models/country_code.rbs
419
422
  - sig/dodopayments/models/create_new_customer.rbs
420
423
  - sig/dodopayments/models/currency.rbs
@@ -460,6 +463,7 @@ files:
460
463
  - sig/dodopayments/models/misc_list_supported_countries_params.rbs
461
464
  - sig/dodopayments/models/misc_list_supported_countries_response.rbs
462
465
  - sig/dodopayments/models/new_customer.rbs
466
+ - sig/dodopayments/models/on_demand_subscription.rbs
463
467
  - sig/dodopayments/models/one_time_product_cart_item.rbs
464
468
  - sig/dodopayments/models/payment.rbs
465
469
  - sig/dodopayments/models/payment_create_params.rbs
@@ -504,25 +508,22 @@ files:
504
508
  - sig/dodopayments/models/tax_category.rbs
505
509
  - sig/dodopayments/models/time_interval.rbs
506
510
  - sig/dodopayments/models/webhook_create_params.rbs
507
- - sig/dodopayments/models/webhook_create_response.rbs
508
511
  - sig/dodopayments/models/webhook_delete_params.rbs
512
+ - sig/dodopayments/models/webhook_details.rbs
509
513
  - sig/dodopayments/models/webhook_event_type.rbs
510
514
  - sig/dodopayments/models/webhook_list_params.rbs
511
- - sig/dodopayments/models/webhook_list_response.rbs
512
515
  - sig/dodopayments/models/webhook_payload.rbs
513
516
  - sig/dodopayments/models/webhook_retrieve_params.rbs
514
- - sig/dodopayments/models/webhook_retrieve_response.rbs
515
517
  - sig/dodopayments/models/webhook_retrieve_secret_params.rbs
516
518
  - sig/dodopayments/models/webhook_retrieve_secret_response.rbs
517
519
  - sig/dodopayments/models/webhook_update_params.rbs
518
- - sig/dodopayments/models/webhook_update_response.rbs
519
520
  - sig/dodopayments/models/webhooks/header_retrieve_params.rbs
520
521
  - sig/dodopayments/models/webhooks/header_retrieve_response.rbs
521
522
  - sig/dodopayments/models/webhooks/header_update_params.rbs
522
- - sig/dodopayments/models/your_webhook_url_create_params.rbs
523
523
  - sig/dodopayments/request_options.rbs
524
524
  - sig/dodopayments/resources/addons.rbs
525
525
  - sig/dodopayments/resources/brands.rbs
526
+ - sig/dodopayments/resources/checkout_sessions.rbs
526
527
  - sig/dodopayments/resources/customers.rbs
527
528
  - sig/dodopayments/resources/customers/customer_portal.rbs
528
529
  - sig/dodopayments/resources/discounts.rbs
@@ -542,7 +543,6 @@ files:
542
543
  - sig/dodopayments/resources/webhook_events.rbs
543
544
  - sig/dodopayments/resources/webhooks.rbs
544
545
  - sig/dodopayments/resources/webhooks/headers.rbs
545
- - sig/dodopayments/resources/your_webhook_url.rbs
546
546
  - sig/dodopayments/version.rbs
547
547
  homepage: https://gemdocs.org/gems/dodopayments
548
548
  licenses: []
@@ -1,88 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Dodopayments
4
- module Models
5
- # @see Dodopayments::Resources::Webhooks#list
6
- class WebhookListResponse < Dodopayments::Internal::Type::BaseModel
7
- # @!attribute id
8
- # The webhook's ID.
9
- #
10
- # @return [String]
11
- required :id, String
12
-
13
- # @!attribute created_at
14
- # Created at timestamp
15
- #
16
- # @return [String]
17
- required :created_at, String
18
-
19
- # @!attribute description
20
- # An example webhook name.
21
- #
22
- # @return [String]
23
- required :description, String
24
-
25
- # @!attribute metadata
26
- # Metadata of the webhook
27
- #
28
- # @return [Hash{Symbol=>String}]
29
- required :metadata, Dodopayments::Internal::Type::HashOf[String]
30
-
31
- # @!attribute updated_at
32
- # Updated at timestamp
33
- #
34
- # @return [String]
35
- required :updated_at, String
36
-
37
- # @!attribute url
38
- # Url endpoint of the webhook
39
- #
40
- # @return [String]
41
- required :url, String
42
-
43
- # @!attribute disabled
44
- # Status of the webhook.
45
- #
46
- # If true, events are not sent
47
- #
48
- # @return [Boolean, nil]
49
- optional :disabled, Dodopayments::Internal::Type::Boolean, nil?: true
50
-
51
- # @!attribute filter_types
52
- # Filter events to the webhook.
53
- #
54
- # Webhook event will only be sent for events in the list.
55
- #
56
- # @return [Array<String>, nil]
57
- optional :filter_types, Dodopayments::Internal::Type::ArrayOf[String], nil?: true
58
-
59
- # @!attribute rate_limit
60
- # Configured rate limit
61
- #
62
- # @return [Integer, nil]
63
- optional :rate_limit, Integer, nil?: true
64
-
65
- # @!method initialize(id:, created_at:, description:, metadata:, updated_at:, url:, disabled: nil, filter_types: nil, rate_limit: nil)
66
- # Some parameter documentations has been truncated, see
67
- # {Dodopayments::Models::WebhookListResponse} for more details.
68
- #
69
- # @param id [String] The webhook's ID.
70
- #
71
- # @param created_at [String] Created at timestamp
72
- #
73
- # @param description [String] An example webhook name.
74
- #
75
- # @param metadata [Hash{Symbol=>String}] Metadata of the webhook
76
- #
77
- # @param updated_at [String] Updated at timestamp
78
- #
79
- # @param url [String] Url endpoint of the webhook
80
- #
81
- # @param disabled [Boolean, nil] Status of the webhook.
82
- #
83
- # @param filter_types [Array<String>, nil] Filter events to the webhook.
84
- #
85
- # @param rate_limit [Integer, nil] Configured rate limit
86
- end
87
- end
88
- end
@@ -1,88 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Dodopayments
4
- module Models
5
- # @see Dodopayments::Resources::Webhooks#retrieve
6
- class WebhookRetrieveResponse < Dodopayments::Internal::Type::BaseModel
7
- # @!attribute id
8
- # The webhook's ID.
9
- #
10
- # @return [String]
11
- required :id, String
12
-
13
- # @!attribute created_at
14
- # Created at timestamp
15
- #
16
- # @return [String]
17
- required :created_at, String
18
-
19
- # @!attribute description
20
- # An example webhook name.
21
- #
22
- # @return [String]
23
- required :description, String
24
-
25
- # @!attribute metadata
26
- # Metadata of the webhook
27
- #
28
- # @return [Hash{Symbol=>String}]
29
- required :metadata, Dodopayments::Internal::Type::HashOf[String]
30
-
31
- # @!attribute updated_at
32
- # Updated at timestamp
33
- #
34
- # @return [String]
35
- required :updated_at, String
36
-
37
- # @!attribute url
38
- # Url endpoint of the webhook
39
- #
40
- # @return [String]
41
- required :url, String
42
-
43
- # @!attribute disabled
44
- # Status of the webhook.
45
- #
46
- # If true, events are not sent
47
- #
48
- # @return [Boolean, nil]
49
- optional :disabled, Dodopayments::Internal::Type::Boolean, nil?: true
50
-
51
- # @!attribute filter_types
52
- # Filter events to the webhook.
53
- #
54
- # Webhook event will only be sent for events in the list.
55
- #
56
- # @return [Array<String>, nil]
57
- optional :filter_types, Dodopayments::Internal::Type::ArrayOf[String], nil?: true
58
-
59
- # @!attribute rate_limit
60
- # Configured rate limit
61
- #
62
- # @return [Integer, nil]
63
- optional :rate_limit, Integer, nil?: true
64
-
65
- # @!method initialize(id:, created_at:, description:, metadata:, updated_at:, url:, disabled: nil, filter_types: nil, rate_limit: nil)
66
- # Some parameter documentations has been truncated, see
67
- # {Dodopayments::Models::WebhookRetrieveResponse} for more details.
68
- #
69
- # @param id [String] The webhook's ID.
70
- #
71
- # @param created_at [String] Created at timestamp
72
- #
73
- # @param description [String] An example webhook name.
74
- #
75
- # @param metadata [Hash{Symbol=>String}] Metadata of the webhook
76
- #
77
- # @param updated_at [String] Updated at timestamp
78
- #
79
- # @param url [String] Url endpoint of the webhook
80
- #
81
- # @param disabled [Boolean, nil] Status of the webhook.
82
- #
83
- # @param filter_types [Array<String>, nil] Filter events to the webhook.
84
- #
85
- # @param rate_limit [Integer, nil] Configured rate limit
86
- end
87
- end
88
- end
@@ -1,88 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Dodopayments
4
- module Models
5
- # @see Dodopayments::Resources::Webhooks#update
6
- class WebhookUpdateResponse < Dodopayments::Internal::Type::BaseModel
7
- # @!attribute id
8
- # The webhook's ID.
9
- #
10
- # @return [String]
11
- required :id, String
12
-
13
- # @!attribute created_at
14
- # Created at timestamp
15
- #
16
- # @return [String]
17
- required :created_at, String
18
-
19
- # @!attribute description
20
- # An example webhook name.
21
- #
22
- # @return [String]
23
- required :description, String
24
-
25
- # @!attribute metadata
26
- # Metadata of the webhook
27
- #
28
- # @return [Hash{Symbol=>String}]
29
- required :metadata, Dodopayments::Internal::Type::HashOf[String]
30
-
31
- # @!attribute updated_at
32
- # Updated at timestamp
33
- #
34
- # @return [String]
35
- required :updated_at, String
36
-
37
- # @!attribute url
38
- # Url endpoint of the webhook
39
- #
40
- # @return [String]
41
- required :url, String
42
-
43
- # @!attribute disabled
44
- # Status of the webhook.
45
- #
46
- # If true, events are not sent
47
- #
48
- # @return [Boolean, nil]
49
- optional :disabled, Dodopayments::Internal::Type::Boolean, nil?: true
50
-
51
- # @!attribute filter_types
52
- # Filter events to the webhook.
53
- #
54
- # Webhook event will only be sent for events in the list.
55
- #
56
- # @return [Array<String>, nil]
57
- optional :filter_types, Dodopayments::Internal::Type::ArrayOf[String], nil?: true
58
-
59
- # @!attribute rate_limit
60
- # Configured rate limit
61
- #
62
- # @return [Integer, nil]
63
- optional :rate_limit, Integer, nil?: true
64
-
65
- # @!method initialize(id:, created_at:, description:, metadata:, updated_at:, url:, disabled: nil, filter_types: nil, rate_limit: nil)
66
- # Some parameter documentations has been truncated, see
67
- # {Dodopayments::Models::WebhookUpdateResponse} for more details.
68
- #
69
- # @param id [String] The webhook's ID.
70
- #
71
- # @param created_at [String] Created at timestamp
72
- #
73
- # @param description [String] An example webhook name.
74
- #
75
- # @param metadata [Hash{Symbol=>String}] Metadata of the webhook
76
- #
77
- # @param updated_at [String] Updated at timestamp
78
- #
79
- # @param url [String] Url endpoint of the webhook
80
- #
81
- # @param disabled [Boolean, nil] Status of the webhook.
82
- #
83
- # @param filter_types [Array<String>, nil] Filter events to the webhook.
84
- #
85
- # @param rate_limit [Integer, nil] Configured rate limit
86
- end
87
- end
88
- end
@@ -1,32 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Dodopayments
4
- module Models
5
- # @see Dodopayments::Resources::YourWebhookURL#create
6
- class YourWebhookURLCreateParams < Dodopayments::Models::WebhookPayload
7
- extend Dodopayments::Internal::Type::RequestParameters::Converter
8
- include Dodopayments::Internal::Type::RequestParameters
9
-
10
- # @!attribute webhook_id
11
- #
12
- # @return [String]
13
- required :webhook_id, String
14
-
15
- # @!attribute webhook_signature
16
- #
17
- # @return [String]
18
- required :webhook_signature, String
19
-
20
- # @!attribute webhook_timestamp
21
- #
22
- # @return [String]
23
- required :webhook_timestamp, String
24
-
25
- # @!method initialize(webhook_id:, webhook_signature:, webhook_timestamp:, request_options: {})
26
- # @param webhook_id [String]
27
- # @param webhook_signature [String]
28
- # @param webhook_timestamp [String]
29
- # @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}]
30
- end
31
- end
32
- end
@@ -1,56 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Dodopayments
4
- module Resources
5
- class YourWebhookURL
6
- # Some parameter documentations has been truncated, see
7
- # {Dodopayments::Models::YourWebhookURLCreateParams} for more details.
8
- #
9
- # @overload create(business_id:, data:, timestamp:, type:, webhook_id:, webhook_signature:, webhook_timestamp:, request_options: {})
10
- #
11
- # @param business_id [String] Body param:
12
- #
13
- # @param data [Dodopayments::Models::WebhookPayload::Data::Payment, Dodopayments::Models::WebhookPayload::Data::Subscription, Dodopayments::Models::WebhookPayload::Data::Refund, Dodopayments::Models::WebhookPayload::Data::Dispute, Dodopayments::Models::WebhookPayload::Data::LicenseKey] Body param: The latest data at the time of delivery attempt
14
- #
15
- # @param timestamp [Time] Body param: The timestamp of when the event occurred (not necessarily the same o
16
- #
17
- # @param type [Symbol, Dodopayments::Models::WebhookEventType] Body param: Event types for Dodo events
18
- #
19
- # @param webhook_id [String] Header param: Unique identifier for the webhook
20
- #
21
- # @param webhook_signature [String] Header param: Signature of the Webhook
22
- #
23
- # @param webhook_timestamp [String] Header param: Unix timestamp when the webhook was sent
24
- #
25
- # @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
26
- #
27
- # @return [nil]
28
- #
29
- # @see Dodopayments::Models::YourWebhookURLCreateParams
30
- def create(params)
31
- parsed, options = Dodopayments::YourWebhookURLCreateParams.dump_request(params)
32
- header_params =
33
- {
34
- webhook_id: "webhook-id",
35
- webhook_signature: "webhook-signature",
36
- webhook_timestamp: "webhook-timestamp"
37
- }
38
- @client.request(
39
- method: :post,
40
- path: "your-webhook-url",
41
- headers: parsed.slice(*header_params.keys).transform_keys(header_params),
42
- body: parsed.except(*header_params.keys),
43
- model: NilClass,
44
- options: options
45
- )
46
- end
47
-
48
- # @api private
49
- #
50
- # @param client [Dodopayments::Client]
51
- def initialize(client:)
52
- @client = client
53
- end
54
- end
55
- end
56
- end
@@ -1,112 +0,0 @@
1
- # typed: strong
2
-
3
- module Dodopayments
4
- module Models
5
- class WebhookCreateResponse < Dodopayments::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias do
8
- T.any(
9
- Dodopayments::Models::WebhookCreateResponse,
10
- Dodopayments::Internal::AnyHash
11
- )
12
- end
13
-
14
- # The webhook's ID.
15
- sig { returns(String) }
16
- attr_accessor :id
17
-
18
- # Created at timestamp
19
- sig { returns(String) }
20
- attr_accessor :created_at
21
-
22
- # An example webhook name.
23
- sig { returns(String) }
24
- attr_accessor :description
25
-
26
- # Metadata of the webhook
27
- sig { returns(T::Hash[Symbol, String]) }
28
- attr_accessor :metadata
29
-
30
- # Updated at timestamp
31
- sig { returns(String) }
32
- attr_accessor :updated_at
33
-
34
- # Url endpoint of the webhook
35
- sig { returns(String) }
36
- attr_accessor :url
37
-
38
- # Status of the webhook.
39
- #
40
- # If true, events are not sent
41
- sig { returns(T.nilable(T::Boolean)) }
42
- attr_accessor :disabled
43
-
44
- # Filter events to the webhook.
45
- #
46
- # Webhook event will only be sent for events in the list.
47
- sig { returns(T.nilable(T::Array[String])) }
48
- attr_accessor :filter_types
49
-
50
- # Configured rate limit
51
- sig { returns(T.nilable(Integer)) }
52
- attr_accessor :rate_limit
53
-
54
- sig do
55
- params(
56
- id: String,
57
- created_at: String,
58
- description: String,
59
- metadata: T::Hash[Symbol, String],
60
- updated_at: String,
61
- url: String,
62
- disabled: T.nilable(T::Boolean),
63
- filter_types: T.nilable(T::Array[String]),
64
- rate_limit: T.nilable(Integer)
65
- ).returns(T.attached_class)
66
- end
67
- def self.new(
68
- # The webhook's ID.
69
- id:,
70
- # Created at timestamp
71
- created_at:,
72
- # An example webhook name.
73
- description:,
74
- # Metadata of the webhook
75
- metadata:,
76
- # Updated at timestamp
77
- updated_at:,
78
- # Url endpoint of the webhook
79
- url:,
80
- # Status of the webhook.
81
- #
82
- # If true, events are not sent
83
- disabled: nil,
84
- # Filter events to the webhook.
85
- #
86
- # Webhook event will only be sent for events in the list.
87
- filter_types: nil,
88
- # Configured rate limit
89
- rate_limit: nil
90
- )
91
- end
92
-
93
- sig do
94
- override.returns(
95
- {
96
- id: String,
97
- created_at: String,
98
- description: String,
99
- metadata: T::Hash[Symbol, String],
100
- updated_at: String,
101
- url: String,
102
- disabled: T.nilable(T::Boolean),
103
- filter_types: T.nilable(T::Array[String]),
104
- rate_limit: T.nilable(Integer)
105
- }
106
- )
107
- end
108
- def to_hash
109
- end
110
- end
111
- end
112
- end