stripe 12.7.0.pre.beta.2 → 13.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (255) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +725 -1359
  3. data/OPENAPI_VERSION +1 -1
  4. data/README.md +4 -3
  5. data/VERSION +1 -1
  6. data/examples/README.md +16 -0
  7. data/examples/example_template.rb +36 -0
  8. data/examples/meter_event_stream.rb +57 -0
  9. data/examples/thinevent_webhook_handler.rb +39 -0
  10. data/lib/stripe/api_operations/nested_resource.rb +1 -21
  11. data/lib/stripe/api_operations/request.rb +19 -70
  12. data/lib/stripe/api_operations/save.rb +4 -3
  13. data/lib/stripe/api_operations/singleton_save.rb +5 -2
  14. data/lib/stripe/api_requestor.rb +1131 -0
  15. data/lib/stripe/api_resource.rb +22 -14
  16. data/lib/stripe/api_version.rb +1 -2
  17. data/lib/stripe/connection_manager.rb +1 -1
  18. data/lib/stripe/errors.rb +8 -2
  19. data/lib/stripe/event_types.rb +14 -0
  20. data/lib/stripe/events/v1_billing_meter_error_report_triggered_event.rb +23 -0
  21. data/lib/stripe/events/v1_billing_meter_no_meter_found_event.rb +13 -0
  22. data/lib/stripe/list_object.rb +2 -3
  23. data/lib/stripe/oauth.rb +8 -15
  24. data/lib/stripe/object_types.rb +16 -20
  25. data/lib/stripe/request_options.rb +128 -0
  26. data/lib/stripe/resources/billing/credit_balance_summary.rb +14 -0
  27. data/lib/stripe/resources/billing/credit_balance_transaction.rb +26 -0
  28. data/lib/stripe/resources/billing/credit_grant.rb +88 -0
  29. data/lib/stripe/resources/customer.rb +2 -3
  30. data/lib/stripe/resources/file.rb +7 -5
  31. data/lib/stripe/resources/financial_connections/account.rb +0 -3
  32. data/lib/stripe/resources/invoice.rb +0 -81
  33. data/lib/stripe/resources/payment_intent.rb +0 -50
  34. data/lib/stripe/resources/quote.rb +4 -108
  35. data/lib/stripe/resources/source.rb +3 -2
  36. data/lib/stripe/resources/subscription.rb +6 -6
  37. data/lib/stripe/resources/subscription_schedule.rb +0 -20
  38. data/lib/stripe/resources/terminal/reader.rb +0 -60
  39. data/lib/stripe/resources/v2/billing/meter_event.rb +16 -0
  40. data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +15 -0
  41. data/lib/stripe/resources/v2/billing/meter_event_session.rb +15 -0
  42. data/lib/stripe/resources/v2/event.rb +13 -0
  43. data/lib/stripe/resources.rb +9 -18
  44. data/lib/stripe/search_result_object.rb +1 -1
  45. data/lib/stripe/services/account_capability_service.rb +39 -0
  46. data/lib/stripe/services/account_external_account_service.rb +68 -0
  47. data/lib/stripe/services/account_link_service.rb +17 -0
  48. data/lib/stripe/services/account_login_link_service.rb +19 -0
  49. data/lib/stripe/services/account_person_service.rb +61 -0
  50. data/lib/stripe/services/account_service.rb +100 -0
  51. data/lib/stripe/services/account_session_service.rb +17 -0
  52. data/lib/stripe/services/apple_pay_domain_service.rb +50 -0
  53. data/lib/stripe/services/application_fee_refund_service.rb +60 -0
  54. data/lib/stripe/services/application_fee_service.rb +35 -0
  55. data/lib/stripe/services/apps/secret_service.rb +52 -0
  56. data/lib/stripe/services/apps_service.rb +13 -0
  57. data/lib/stripe/services/balance_service.rb +12 -0
  58. data/lib/stripe/services/balance_transaction_service.rb +32 -0
  59. data/lib/stripe/services/billing/alert_service.rb +74 -0
  60. data/lib/stripe/services/billing/credit_balance_summary_service.rb +19 -0
  61. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +30 -0
  62. data/lib/stripe/services/billing/credit_grant_service.rb +74 -0
  63. data/lib/stripe/services/billing/meter_event_adjustment_service.rb +19 -0
  64. data/lib/stripe/services/billing/meter_event_service.rb +19 -0
  65. data/lib/stripe/services/billing/meter_event_summary_service.rb +19 -0
  66. data/lib/stripe/services/billing/meter_service.rb +81 -0
  67. data/lib/stripe/services/billing_portal/configuration_service.rb +52 -0
  68. data/lib/stripe/services/billing_portal/session_service.rb +19 -0
  69. data/lib/stripe/services/billing_portal_service.rb +14 -0
  70. data/lib/stripe/services/billing_service.rb +20 -0
  71. data/lib/stripe/services/charge_service.rb +69 -0
  72. data/lib/stripe/services/checkout/session_line_item_service.rb +19 -0
  73. data/lib/stripe/services/checkout/session_service.rb +72 -0
  74. data/lib/stripe/services/checkout_service.rb +13 -0
  75. data/lib/stripe/services/climate/order_service.rb +68 -0
  76. data/lib/stripe/services/climate/product_service.rb +30 -0
  77. data/lib/stripe/services/climate/supplier_service.rb +30 -0
  78. data/lib/stripe/services/climate_service.rb +15 -0
  79. data/lib/stripe/services/confirmation_token_service.rb +17 -0
  80. data/lib/stripe/services/country_spec_service.rb +28 -0
  81. data/lib/stripe/services/coupon_service.rb +51 -0
  82. data/lib/stripe/services/credit_note_line_item_service.rb +17 -0
  83. data/lib/stripe/services/credit_note_preview_lines_service.rb +17 -0
  84. data/lib/stripe/services/credit_note_service.rb +93 -0
  85. data/lib/stripe/services/customer_balance_transaction_service.rb +50 -0
  86. data/lib/stripe/services/customer_cash_balance_service.rb +28 -0
  87. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +28 -0
  88. data/lib/stripe/services/customer_funding_instructions_service.rb +19 -0
  89. data/lib/stripe/services/customer_payment_method_service.rb +28 -0
  90. data/lib/stripe/services/customer_payment_source_service.rb +76 -0
  91. data/lib/stripe/services/customer_service.rb +89 -0
  92. data/lib/stripe/services/customer_session_service.rb +17 -0
  93. data/lib/stripe/services/customer_tax_id_service.rb +50 -0
  94. data/lib/stripe/services/dispute_service.rb +48 -0
  95. data/lib/stripe/services/entitlements/active_entitlement_service.rb +30 -0
  96. data/lib/stripe/services/entitlements/feature_service.rb +52 -0
  97. data/lib/stripe/services/entitlements_service.rb +14 -0
  98. data/lib/stripe/services/ephemeral_key_service.rb +28 -0
  99. data/lib/stripe/services/event_service.rb +22 -0
  100. data/lib/stripe/services/exchange_rate_service.rb +28 -0
  101. data/lib/stripe/services/file_link_service.rb +38 -0
  102. data/lib/stripe/services/file_service.rb +35 -0
  103. data/lib/stripe/services/financial_connections/account_owner_service.rb +19 -0
  104. data/lib/stripe/services/financial_connections/account_service.rb +81 -0
  105. data/lib/stripe/services/financial_connections/session_service.rb +30 -0
  106. data/lib/stripe/services/financial_connections/transaction_service.rb +30 -0
  107. data/lib/stripe/services/financial_connections_service.rb +15 -0
  108. data/lib/stripe/services/forwarding/request_service.rb +41 -0
  109. data/lib/stripe/services/forwarding_service.rb +13 -0
  110. data/lib/stripe/services/identity/verification_report_service.rb +30 -0
  111. data/lib/stripe/services/identity/verification_session_service.rb +106 -0
  112. data/lib/stripe/services/identity_service.rb +14 -0
  113. data/lib/stripe/services/invoice_item_service.rb +61 -0
  114. data/lib/stripe/services/invoice_line_item_service.rb +31 -0
  115. data/lib/stripe/services/invoice_rendering_template_service.rb +50 -0
  116. data/lib/stripe/services/invoice_service.rb +202 -0
  117. data/lib/stripe/services/invoice_upcoming_lines_service.rb +17 -0
  118. data/lib/stripe/services/issuing/authorization_service.rb +65 -0
  119. data/lib/stripe/services/issuing/card_service.rb +52 -0
  120. data/lib/stripe/services/issuing/cardholder_service.rb +52 -0
  121. data/lib/stripe/services/issuing/dispute_service.rb +63 -0
  122. data/lib/stripe/services/issuing/personalization_design_service.rb +52 -0
  123. data/lib/stripe/services/issuing/physical_bundle_service.rb +30 -0
  124. data/lib/stripe/services/issuing/token_service.rb +41 -0
  125. data/lib/stripe/services/issuing/transaction_service.rb +41 -0
  126. data/lib/stripe/services/issuing_service.rb +20 -0
  127. data/lib/stripe/services/mandate_service.rb +17 -0
  128. data/lib/stripe/services/oauth_service.rb +63 -0
  129. data/lib/stripe/services/payment_intent_service.rb +204 -0
  130. data/lib/stripe/services/payment_link_line_item_service.rb +17 -0
  131. data/lib/stripe/services/payment_link_service.rb +57 -0
  132. data/lib/stripe/services/payment_method_configuration_service.rb +50 -0
  133. data/lib/stripe/services/payment_method_domain_service.rb +66 -0
  134. data/lib/stripe/services/payment_method_service.rb +86 -0
  135. data/lib/stripe/services/payout_service.rb +66 -0
  136. data/lib/stripe/services/plan_service.rb +49 -0
  137. data/lib/stripe/services/price_service.rb +52 -0
  138. data/lib/stripe/services/product_feature_service.rb +50 -0
  139. data/lib/stripe/services/product_service.rb +70 -0
  140. data/lib/stripe/services/promotion_code_service.rb +50 -0
  141. data/lib/stripe/services/quote_computed_upfront_line_items_service.rb +17 -0
  142. data/lib/stripe/services/quote_line_item_service.rb +17 -0
  143. data/lib/stripe/services/quote_service.rb +92 -0
  144. data/lib/stripe/services/radar/early_fraud_warning_service.rb +32 -0
  145. data/lib/stripe/services/radar/value_list_item_service.rb +52 -0
  146. data/lib/stripe/services/radar/value_list_service.rb +63 -0
  147. data/lib/stripe/services/radar_service.rb +15 -0
  148. data/lib/stripe/services/refund_service.rb +63 -0
  149. data/lib/stripe/services/reporting/report_run_service.rb +41 -0
  150. data/lib/stripe/services/reporting/report_type_service.rb +30 -0
  151. data/lib/stripe/services/reporting_service.rb +14 -0
  152. data/lib/stripe/services/review_service.rb +33 -0
  153. data/lib/stripe/services/setup_attempt_service.rb +17 -0
  154. data/lib/stripe/services/setup_intent_service.rb +105 -0
  155. data/lib/stripe/services/shipping_rate_service.rb +50 -0
  156. data/lib/stripe/services/sigma/scheduled_query_run_service.rb +30 -0
  157. data/lib/stripe/services/sigma_service.rb +13 -0
  158. data/lib/stripe/services/source_service.rb +64 -0
  159. data/lib/stripe/services/source_transaction_service.rb +17 -0
  160. data/lib/stripe/services/subscription_item_service.rb +69 -0
  161. data/lib/stripe/services/subscription_item_usage_record_service.rb +23 -0
  162. data/lib/stripe/services/subscription_item_usage_record_summary_service.rb +19 -0
  163. data/lib/stripe/services/subscription_schedule_service.rb +72 -0
  164. data/lib/stripe/services/subscription_service.rb +127 -0
  165. data/lib/stripe/services/tax/calculation_line_item_service.rb +19 -0
  166. data/lib/stripe/services/tax/calculation_service.rb +37 -0
  167. data/lib/stripe/services/tax/registration_service.rb +54 -0
  168. data/lib/stripe/services/tax/settings_service.rb +30 -0
  169. data/lib/stripe/services/tax/transaction_line_item_service.rb +19 -0
  170. data/lib/stripe/services/tax/transaction_service.rb +48 -0
  171. data/lib/stripe/services/tax_code_service.rb +22 -0
  172. data/lib/stripe/services/tax_id_service.rb +38 -0
  173. data/lib/stripe/services/tax_rate_service.rb +38 -0
  174. data/lib/stripe/services/tax_service.rb +16 -0
  175. data/lib/stripe/services/terminal/configuration_service.rb +63 -0
  176. data/lib/stripe/services/terminal/connection_token_service.rb +19 -0
  177. data/lib/stripe/services/terminal/location_service.rb +64 -0
  178. data/lib/stripe/services/terminal/reader_service.rb +118 -0
  179. data/lib/stripe/services/terminal_service.rb +16 -0
  180. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +19 -0
  181. data/lib/stripe/services/test_helpers/customer_service.rb +19 -0
  182. data/lib/stripe/services/test_helpers/issuing/authorization_service.rb +76 -0
  183. data/lib/stripe/services/test_helpers/issuing/card_service.rb +54 -0
  184. data/lib/stripe/services/test_helpers/issuing/personalization_design_service.rb +43 -0
  185. data/lib/stripe/services/test_helpers/issuing/transaction_service.rb +43 -0
  186. data/lib/stripe/services/test_helpers/issuing_service.rb +19 -0
  187. data/lib/stripe/services/test_helpers/refund_service.rb +19 -0
  188. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +21 -0
  189. data/lib/stripe/services/test_helpers/terminal_service.rb +15 -0
  190. data/lib/stripe/services/test_helpers/test_clock_service.rb +63 -0
  191. data/lib/stripe/services/test_helpers/treasury/inbound_transfer_service.rb +43 -0
  192. data/lib/stripe/services/test_helpers/treasury/outbound_payment_service.rb +54 -0
  193. data/lib/stripe/services/test_helpers/treasury/outbound_transfer_service.rb +54 -0
  194. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +21 -0
  195. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +21 -0
  196. data/lib/stripe/services/test_helpers/treasury_service.rb +19 -0
  197. data/lib/stripe/services/test_helpers_service.rb +19 -0
  198. data/lib/stripe/services/token_service.rb +23 -0
  199. data/lib/stripe/services/topup_service.rb +49 -0
  200. data/lib/stripe/services/transfer_reversal_service.rb +56 -0
  201. data/lib/stripe/services/transfer_service.rb +47 -0
  202. data/lib/stripe/services/treasury/credit_reversal_service.rb +41 -0
  203. data/lib/stripe/services/treasury/debit_reversal_service.rb +41 -0
  204. data/lib/stripe/services/treasury/financial_account_features_service.rb +30 -0
  205. data/lib/stripe/services/treasury/financial_account_service.rb +59 -0
  206. data/lib/stripe/services/treasury/inbound_transfer_service.rb +52 -0
  207. data/lib/stripe/services/treasury/outbound_payment_service.rb +52 -0
  208. data/lib/stripe/services/treasury/outbound_transfer_service.rb +52 -0
  209. data/lib/stripe/services/treasury/received_credit_service.rb +30 -0
  210. data/lib/stripe/services/treasury/received_debit_service.rb +30 -0
  211. data/lib/stripe/services/treasury/transaction_entry_service.rb +30 -0
  212. data/lib/stripe/services/treasury/transaction_service.rb +30 -0
  213. data/lib/stripe/services/treasury_service.rb +22 -0
  214. data/lib/stripe/services/v1_services.rb +89 -0
  215. data/lib/stripe/services/v2/billing/meter_event_adjustment_service.rb +21 -0
  216. data/lib/stripe/services/v2/billing/meter_event_service.rb +21 -0
  217. data/lib/stripe/services/v2/billing/meter_event_session_service.rb +21 -0
  218. data/lib/stripe/services/v2/billing/meter_event_stream_service.rb +23 -0
  219. data/lib/stripe/services/v2/billing_service.rb +18 -0
  220. data/lib/stripe/services/v2/core/event_service.rb +32 -0
  221. data/lib/stripe/services/v2/core_service.rb +15 -0
  222. data/lib/stripe/services/v2_services.rb +14 -0
  223. data/lib/stripe/services/webhook_endpoint_service.rb +61 -0
  224. data/lib/stripe/services.rb +181 -0
  225. data/lib/stripe/singleton_api_resource.rb +1 -18
  226. data/lib/stripe/stripe_client.rb +51 -1067
  227. data/lib/stripe/stripe_configuration.rb +32 -20
  228. data/lib/stripe/stripe_object.rb +37 -18
  229. data/lib/stripe/stripe_service.rb +32 -0
  230. data/lib/stripe/thin_event.rb +17 -0
  231. data/lib/stripe/util.rb +69 -46
  232. data/lib/stripe/v2_list_object.rb +84 -0
  233. data/lib/stripe/version.rb +1 -1
  234. data/lib/stripe/webhook.rb +1 -1
  235. data/lib/stripe.rb +15 -54
  236. metadata +203 -23
  237. data/lib/stripe/request_signing_authenticator.rb +0 -79
  238. data/lib/stripe/resources/account_notice.rb +0 -32
  239. data/lib/stripe/resources/capital/financing_offer.rb +0 -49
  240. data/lib/stripe/resources/capital/financing_summary.rb +0 -15
  241. data/lib/stripe/resources/capital/financing_transaction.rb +0 -27
  242. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +0 -14
  243. data/lib/stripe/resources/financial_connections/institution.rb +0 -26
  244. data/lib/stripe/resources/gift_cards/card.rb +0 -59
  245. data/lib/stripe/resources/gift_cards/transaction.rb +0 -93
  246. data/lib/stripe/resources/invoice_payment.rb +0 -12
  247. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +0 -88
  248. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +0 -26
  249. data/lib/stripe/resources/margin.rb +0 -37
  250. data/lib/stripe/resources/order.rb +0 -120
  251. data/lib/stripe/resources/quote_preview_invoice.rb +0 -43
  252. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +0 -11
  253. data/lib/stripe/resources/tax/association.rb +0 -24
  254. data/lib/stripe/resources/tax/form.rb +0 -49
  255. data/lib/stripe/resources/terminal/reader_collected_data.rb +0 -14
@@ -6,15 +6,12 @@ module Stripe
6
6
  # A Financial Connections Account represents an account that exists outside of Stripe, to which you have been granted some degree of access.
7
7
  class Account < APIResource
8
8
  extend Stripe::APIOperations::List
9
- extend Stripe::APIOperations::NestedResource
10
9
 
11
10
  OBJECT_NAME = "financial_connections.account"
12
11
  def self.object_name
13
12
  "financial_connections.account"
14
13
  end
15
14
 
16
- nested_resource_class_methods :inferred_balance, operations: %i[list]
17
-
18
15
  # Disables your access to a Financial Connections Account. You will no longer be able to access data associated with the account (e.g. balances, transactions).
19
16
  def disconnect(params = {}, opts = {})
20
17
  request_stripe_object(
@@ -48,7 +48,6 @@ module Stripe
48
48
  end
49
49
 
50
50
  nested_resource_class_methods :line, operations: %i[list]
51
- nested_resource_class_methods :payment, operations: %i[retrieve list]
52
51
 
53
52
  # Adds multiple line items to an invoice. This is only possible when an invoice is still a draft.
54
53
  def add_lines(params = {}, opts = {})
@@ -70,86 +69,6 @@ module Stripe
70
69
  )
71
70
  end
72
71
 
73
- # Attaches a PaymentIntent or an Out of Band Payment to the invoice, adding it to the list of payments.
74
- #
75
- # For Out of Band Payment, the payment is credited to the invoice immediately, increasing the amount_paid
76
- # of the invoice and subsequently transitioning the status of the invoice to paid if necessary.
77
- #
78
- # For the PaymentIntent, when the PaymentIntent's status changes to succeeded, the payment is credited
79
- # to the invoice, increasing its amount_paid. When the invoice is fully paid, the
80
- # invoice's status becomes paid.
81
- #
82
- # If the PaymentIntent's status is already succeeded when it's attached, it's
83
- # credited to the invoice immediately.
84
- #
85
- # See: [Create an invoice payment](https://stripe.com/docs/invoicing/payments/create) to learn more.
86
- def attach_payment(params = {}, opts = {})
87
- request_stripe_object(
88
- method: :post,
89
- path: format("/v1/invoices/%<invoice>s/attach_payment", { invoice: CGI.escape(self["id"]) }),
90
- params: params,
91
- opts: opts
92
- )
93
- end
94
-
95
- # Attaches a PaymentIntent or an Out of Band Payment to the invoice, adding it to the list of payments.
96
- #
97
- # For Out of Band Payment, the payment is credited to the invoice immediately, increasing the amount_paid
98
- # of the invoice and subsequently transitioning the status of the invoice to paid if necessary.
99
- #
100
- # For the PaymentIntent, when the PaymentIntent's status changes to succeeded, the payment is credited
101
- # to the invoice, increasing its amount_paid. When the invoice is fully paid, the
102
- # invoice's status becomes paid.
103
- #
104
- # If the PaymentIntent's status is already succeeded when it's attached, it's
105
- # credited to the invoice immediately.
106
- #
107
- # See: [Create an invoice payment](https://stripe.com/docs/invoicing/payments/create) to learn more.
108
- def self.attach_payment(invoice, params = {}, opts = {})
109
- request_stripe_object(
110
- method: :post,
111
- path: format("/v1/invoices/%<invoice>s/attach_payment", { invoice: CGI.escape(invoice) }),
112
- params: params,
113
- opts: opts
114
- )
115
- end
116
-
117
- # Attaches a PaymentIntent to the invoice, adding it to the list of payments.
118
- # When the PaymentIntent's status changes to succeeded, the payment is credited
119
- # to the invoice, increasing its amount_paid. When the invoice is fully paid, the
120
- # invoice's status becomes paid.
121
- #
122
- # If the PaymentIntent's status is already succeeded when it is attached, it is
123
- # credited to the invoice immediately.
124
- #
125
- # Related guide: [Create an invoice payment](https://stripe.com/docs/invoicing/payments/create)
126
- def attach_payment_intent(params = {}, opts = {})
127
- request_stripe_object(
128
- method: :post,
129
- path: format("/v1/invoices/%<invoice>s/attach_payment_intent", { invoice: CGI.escape(self["id"]) }),
130
- params: params,
131
- opts: opts
132
- )
133
- end
134
-
135
- # Attaches a PaymentIntent to the invoice, adding it to the list of payments.
136
- # When the PaymentIntent's status changes to succeeded, the payment is credited
137
- # to the invoice, increasing its amount_paid. When the invoice is fully paid, the
138
- # invoice's status becomes paid.
139
- #
140
- # If the PaymentIntent's status is already succeeded when it is attached, it is
141
- # credited to the invoice immediately.
142
- #
143
- # Related guide: [Create an invoice payment](https://stripe.com/docs/invoicing/payments/create)
144
- def self.attach_payment_intent(invoice, params = {}, opts = {})
145
- request_stripe_object(
146
- method: :post,
147
- path: format("/v1/invoices/%<invoice>s/attach_payment_intent", { invoice: CGI.escape(invoice) }),
148
- params: params,
149
- opts: opts
150
- )
151
- end
152
-
153
72
  # This endpoint creates a draft invoice for a given customer. The invoice remains a draft until you [finalize the invoice, which allows you to [pay](#pay_invoice) or <a href="#send_invoice">send](https://stripe.com/docs/api#finalize_invoice) the invoice to your customers.
154
73
  def self.create(params = {}, opts = {})
155
74
  request_stripe_object(method: :post, path: "/v1/invoices", params: params, opts: opts)
@@ -182,56 +182,6 @@ module Stripe
182
182
  request_stripe_object(method: :post, path: "/v1/payment_intents", params: params, opts: opts)
183
183
  end
184
184
 
185
- # Perform a decremental authorization on an eligible
186
- # [PaymentIntent](https://stripe.com/docs/api/payment_intents/object). To be eligible, the
187
- # PaymentIntent's status must be requires_capture and
188
- # [decremental_authorization.status](https://stripe.com/docs/api/charges/object#charge_object-payment_method_details-card-decremental_authorization)
189
- # must be available.
190
- #
191
- # Decremental authorizations decrease the authorized amount on your customer's card
192
- # to the new, lower amount provided. A single PaymentIntent can call this endpoint multiple times to further decrease the authorized amount.
193
- #
194
- # After decrement, the PaymentIntent object
195
- # returns with the updated
196
- # [amount](https://stripe.com/docs/api/payment_intents/object#payment_intent_object-amount).
197
- # The PaymentIntent will now be capturable up to the new authorized amount.
198
- #
199
- # Each PaymentIntent can have a maximum of 10 decremental or incremental authorization attempts, including declines.
200
- # After it's fully captured, a PaymentIntent can no longer be decremented.
201
- def decrement_authorization(params = {}, opts = {})
202
- request_stripe_object(
203
- method: :post,
204
- path: format("/v1/payment_intents/%<intent>s/decrement_authorization", { intent: CGI.escape(self["id"]) }),
205
- params: params,
206
- opts: opts
207
- )
208
- end
209
-
210
- # Perform a decremental authorization on an eligible
211
- # [PaymentIntent](https://stripe.com/docs/api/payment_intents/object). To be eligible, the
212
- # PaymentIntent's status must be requires_capture and
213
- # [decremental_authorization.status](https://stripe.com/docs/api/charges/object#charge_object-payment_method_details-card-decremental_authorization)
214
- # must be available.
215
- #
216
- # Decremental authorizations decrease the authorized amount on your customer's card
217
- # to the new, lower amount provided. A single PaymentIntent can call this endpoint multiple times to further decrease the authorized amount.
218
- #
219
- # After decrement, the PaymentIntent object
220
- # returns with the updated
221
- # [amount](https://stripe.com/docs/api/payment_intents/object#payment_intent_object-amount).
222
- # The PaymentIntent will now be capturable up to the new authorized amount.
223
- #
224
- # Each PaymentIntent can have a maximum of 10 decremental or incremental authorization attempts, including declines.
225
- # After it's fully captured, a PaymentIntent can no longer be decremented.
226
- def self.decrement_authorization(intent, params = {}, opts = {})
227
- request_stripe_object(
228
- method: :post,
229
- path: format("/v1/payment_intents/%<intent>s/decrement_authorization", { intent: CGI.escape(intent) }),
230
- params: params,
231
- opts: opts
232
- )
233
- end
234
-
235
185
  # Perform an incremental authorization on an eligible
236
186
  # [PaymentIntent](https://stripe.com/docs/api/payment_intents/object). To be eligible, the
237
187
  # PaymentIntent's status must be requires_capture and
@@ -7,7 +7,6 @@ module Stripe
7
7
  class Quote < APIResource
8
8
  extend Stripe::APIOperations::Create
9
9
  extend Stripe::APIOperations::List
10
- extend Stripe::APIOperations::NestedResource
11
10
  include Stripe::APIOperations::Save
12
11
 
13
12
  OBJECT_NAME = "quote"
@@ -15,9 +14,6 @@ module Stripe
15
14
  "quote"
16
15
  end
17
16
 
18
- nested_resource_class_methods :preview_invoice, operations: %i[list]
19
- nested_resource_class_methods :preview_subscription_schedule, operations: %i[list]
20
-
21
17
  # Accepts the specified quote.
22
18
  def accept(params = {}, opts = {})
23
19
  request_stripe_object(
@@ -128,132 +124,32 @@ module Stripe
128
124
  )
129
125
  end
130
126
 
131
- # Retrieves a paginated list of lines for a quote. These lines describe changes that will be used to create new subscription schedules or update existing subscription schedules when the quote is accepted.
132
- def list_lines(params = {}, opts = {})
133
- request_stripe_object(
134
- method: :get,
135
- path: format("/v1/quotes/%<quote>s/lines", { quote: CGI.escape(self["id"]) }),
136
- params: params,
137
- opts: opts
138
- )
139
- end
140
-
141
- # Retrieves a paginated list of lines for a quote. These lines describe changes that will be used to create new subscription schedules or update existing subscription schedules when the quote is accepted.
142
- def self.list_lines(quote, params = {}, opts = {})
143
- request_stripe_object(
144
- method: :get,
145
- path: format("/v1/quotes/%<quote>s/lines", { quote: CGI.escape(quote) }),
146
- params: params,
147
- opts: opts
148
- )
149
- end
150
-
151
- # Preview the invoice line items that would be generated by accepting the quote.
152
- def list_preview_invoice_lines(preview_invoice, params = {}, opts = {})
153
- request_stripe_object(
154
- method: :get,
155
- path: format("/v1/quotes/%<quote>s/preview_invoices/%<preview_invoice>s/lines", { quote: CGI.escape(self["id"]), preview_invoice: CGI.escape(preview_invoice) }),
156
- params: params,
157
- opts: opts
158
- )
159
- end
160
-
161
- # Preview the invoice line items that would be generated by accepting the quote.
162
- def self.list_preview_invoice_lines(quote, preview_invoice, params = {}, opts = {})
163
- request_stripe_object(
164
- method: :get,
165
- path: format("/v1/quotes/%<quote>s/preview_invoices/%<preview_invoice>s/lines", { quote: CGI.escape(quote), preview_invoice: CGI.escape(preview_invoice) }),
166
- params: params,
167
- opts: opts
168
- )
169
- end
170
-
171
- # Converts a stale quote to draft.
172
- def mark_draft(params = {}, opts = {})
173
- request_stripe_object(
174
- method: :post,
175
- path: format("/v1/quotes/%<quote>s/mark_draft", { quote: CGI.escape(self["id"]) }),
176
- params: params,
177
- opts: opts
178
- )
179
- end
180
-
181
- # Converts a stale quote to draft.
182
- def self.mark_draft(quote, params = {}, opts = {})
183
- request_stripe_object(
184
- method: :post,
185
- path: format("/v1/quotes/%<quote>s/mark_draft", { quote: CGI.escape(quote) }),
186
- params: params,
187
- opts: opts
188
- )
189
- end
190
-
191
- # Converts a draft or open quote to stale.
192
- def mark_stale(params = {}, opts = {})
193
- request_stripe_object(
194
- method: :post,
195
- path: format("/v1/quotes/%<quote>s/mark_stale", { quote: CGI.escape(self["id"]) }),
196
- params: params,
197
- opts: opts
198
- )
199
- end
200
-
201
- # Converts a draft or open quote to stale.
202
- def self.mark_stale(quote, params = {}, opts = {})
203
- request_stripe_object(
204
- method: :post,
205
- path: format("/v1/quotes/%<quote>s/mark_stale", { quote: CGI.escape(quote) }),
206
- params: params,
207
- opts: opts
208
- )
209
- end
210
-
211
127
  # Download the PDF for a finalized quote. Explanation for special handling can be found [here](https://docs.stripe.com/quotes/overview#quote_pdf)
212
128
  def pdf(params = {}, opts = {}, &read_body_chunk_block)
213
- config = opts[:client]&.config || Stripe.config
214
- opts = { api_base: config.uploads_base }.merge(opts)
129
+ opts = { api_base: APIRequestor.active_requestor.config.uploads_base }.merge(opts)
215
130
  request_stream(
216
131
  method: :get,
217
132
  path: format("/v1/quotes/%<quote>s/pdf", { quote: CGI.escape(self["id"]) }),
218
133
  params: params,
219
134
  opts: opts,
135
+ base_address: :files,
220
136
  &read_body_chunk_block
221
137
  )
222
138
  end
223
139
 
224
140
  # Download the PDF for a finalized quote. Explanation for special handling can be found [here](https://docs.stripe.com/quotes/overview#quote_pdf)
225
141
  def self.pdf(quote, params = {}, opts = {}, &read_body_chunk_block)
226
- config = opts[:client]&.config || Stripe.config
227
- opts = { api_base: config.uploads_base }.merge(opts)
142
+ opts = { api_base: APIRequestor.active_requestor.config.uploads_base }.merge(opts)
228
143
  execute_resource_request_stream(
229
144
  :get,
230
145
  format("/v1/quotes/%<quote>s/pdf", { quote: CGI.escape(quote) }),
146
+ :files,
231
147
  params,
232
148
  opts,
233
149
  &read_body_chunk_block
234
150
  )
235
151
  end
236
152
 
237
- # Recompute the upcoming invoice estimate for the quote.
238
- def reestimate(params = {}, opts = {})
239
- request_stripe_object(
240
- method: :post,
241
- path: format("/v1/quotes/%<quote>s/reestimate", { quote: CGI.escape(self["id"]) }),
242
- params: params,
243
- opts: opts
244
- )
245
- end
246
-
247
- # Recompute the upcoming invoice estimate for the quote.
248
- def self.reestimate(quote, params = {}, opts = {})
249
- request_stripe_object(
250
- method: :post,
251
- path: format("/v1/quotes/%<quote>s/reestimate", { quote: CGI.escape(quote) }),
252
- params: params,
253
- opts: opts
254
- )
255
- end
256
-
257
153
  # A quote models prices and services for a customer.
258
154
  def self.update(id, params = {}, opts = {})
259
155
  request_stripe_object(
@@ -70,8 +70,9 @@ module Stripe
70
70
 
71
71
  url = "#{Customer.resource_url}/#{CGI.escape(customer)}/sources" \
72
72
  "/#{CGI.escape(id)}"
73
- resp, opts = execute_resource_request(:delete, url, params, opts)
74
- initialize_from(resp.data, opts)
73
+ opts = Util.normalize_opts(opts)
74
+ APIRequestor.active_requestor.execute_request_initialize_from(:delete, url, :api, self,
75
+ params: params, opts: opts)
75
76
  end
76
77
 
77
78
  def source_transactions(params = {}, opts = {})
@@ -16,11 +16,11 @@ module Stripe
16
16
  "subscription"
17
17
  end
18
18
 
19
- # Cancels a customer's subscription immediately. The customer will not be charged again for the subscription.
19
+ # Cancels a customer's subscription immediately. The customer won't be charged again for the subscription. After it's canceled, you can no longer update the subscription or its [metadata](https://stripe.com/metadata).
20
20
  #
21
- # Note, however, that any pending invoice items that you've created will still be charged for at the end of the period, unless manually [deleted](https://stripe.com/docs/api#delete_invoiceitem). If you've set the subscription to cancel at the end of the period, any pending prorations will also be left in place and collected at the end of the period. But if the subscription is set to cancel immediately, pending prorations will be removed.
21
+ # Any pending invoice items that you've created are still charged at the end of the period, unless manually [deleted](https://stripe.com/docs/api#delete_invoiceitem). If you've set the subscription to cancel at the end of the period, any pending prorations are also left in place and collected at the end of the period. But if the subscription is set to cancel immediately, pending prorations are removed.
22
22
  #
23
- # By default, upon subscription cancellation, Stripe will stop automatic collection of all finalized invoices for the customer. This is intended to prevent unexpected payment attempts after the customer has canceled a subscription. However, you can resume automatic collection of the invoices manually after subscription cancellation to have us proceed. Or, you could check for unpaid invoices before allowing the customer to cancel the subscription at all.
23
+ # By default, upon subscription cancellation, Stripe stops automatic collection of all finalized invoices for the customer. This is intended to prevent unexpected payment attempts after the customer has canceled a subscription. However, you can resume automatic collection of the invoices manually after subscription cancellation to have us proceed. Or, you could check for unpaid invoices before allowing the customer to cancel the subscription at all.
24
24
  def cancel(params = {}, opts = {})
25
25
  request_stripe_object(
26
26
  method: :delete,
@@ -30,11 +30,11 @@ module Stripe
30
30
  )
31
31
  end
32
32
 
33
- # Cancels a customer's subscription immediately. The customer will not be charged again for the subscription.
33
+ # Cancels a customer's subscription immediately. The customer won't be charged again for the subscription. After it's canceled, you can no longer update the subscription or its [metadata](https://stripe.com/metadata).
34
34
  #
35
- # Note, however, that any pending invoice items that you've created will still be charged for at the end of the period, unless manually [deleted](https://stripe.com/docs/api#delete_invoiceitem). If you've set the subscription to cancel at the end of the period, any pending prorations will also be left in place and collected at the end of the period. But if the subscription is set to cancel immediately, pending prorations will be removed.
35
+ # Any pending invoice items that you've created are still charged at the end of the period, unless manually [deleted](https://stripe.com/docs/api#delete_invoiceitem). If you've set the subscription to cancel at the end of the period, any pending prorations are also left in place and collected at the end of the period. But if the subscription is set to cancel immediately, pending prorations are removed.
36
36
  #
37
- # By default, upon subscription cancellation, Stripe will stop automatic collection of all finalized invoices for the customer. This is intended to prevent unexpected payment attempts after the customer has canceled a subscription. However, you can resume automatic collection of the invoices manually after subscription cancellation to have us proceed. Or, you could check for unpaid invoices before allowing the customer to cancel the subscription at all.
37
+ # By default, upon subscription cancellation, Stripe stops automatic collection of all finalized invoices for the customer. This is intended to prevent unexpected payment attempts after the customer has canceled a subscription. However, you can resume automatic collection of the invoices manually after subscription cancellation to have us proceed. Or, you could check for unpaid invoices before allowing the customer to cancel the subscription at all.
38
38
  def self.cancel(subscription_exposed_id, params = {}, opts = {})
39
39
  request_stripe_object(
40
40
  method: :delete,
@@ -15,26 +15,6 @@ module Stripe
15
15
  "subscription_schedule"
16
16
  end
17
17
 
18
- # Amends an existing subscription schedule.
19
- def amend(params = {}, opts = {})
20
- request_stripe_object(
21
- method: :post,
22
- path: format("/v1/subscription_schedules/%<schedule>s/amend", { schedule: CGI.escape(self["id"]) }),
23
- params: params,
24
- opts: opts
25
- )
26
- end
27
-
28
- # Amends an existing subscription schedule.
29
- def self.amend(schedule, params = {}, opts = {})
30
- request_stripe_object(
31
- method: :post,
32
- path: format("/v1/subscription_schedules/%<schedule>s/amend", { schedule: CGI.escape(schedule) }),
33
- params: params,
34
- opts: opts
35
- )
36
- end
37
-
38
18
  # Cancels a subscription schedule and its associated subscription immediately (if the subscription schedule has an active subscription). A subscription schedule can only be canceled if its status is not_started or active.
39
19
  def cancel(params = {}, opts = {})
40
20
  request_stripe_object(
@@ -37,66 +37,6 @@ module Stripe
37
37
  )
38
38
  end
39
39
 
40
- # Initiates an input collection flow on a Reader.
41
- def collect_inputs(params = {}, opts = {})
42
- request_stripe_object(
43
- method: :post,
44
- path: format("/v1/terminal/readers/%<reader>s/collect_inputs", { reader: CGI.escape(self["id"]) }),
45
- params: params,
46
- opts: opts
47
- )
48
- end
49
-
50
- # Initiates an input collection flow on a Reader.
51
- def self.collect_inputs(reader, params = {}, opts = {})
52
- request_stripe_object(
53
- method: :post,
54
- path: format("/v1/terminal/readers/%<reader>s/collect_inputs", { reader: CGI.escape(reader) }),
55
- params: params,
56
- opts: opts
57
- )
58
- end
59
-
60
- # Initiates a payment flow on a Reader and updates the PaymentIntent with card details before manual confirmation.
61
- def collect_payment_method(params = {}, opts = {})
62
- request_stripe_object(
63
- method: :post,
64
- path: format("/v1/terminal/readers/%<reader>s/collect_payment_method", { reader: CGI.escape(self["id"]) }),
65
- params: params,
66
- opts: opts
67
- )
68
- end
69
-
70
- # Initiates a payment flow on a Reader and updates the PaymentIntent with card details before manual confirmation.
71
- def self.collect_payment_method(reader, params = {}, opts = {})
72
- request_stripe_object(
73
- method: :post,
74
- path: format("/v1/terminal/readers/%<reader>s/collect_payment_method", { reader: CGI.escape(reader) }),
75
- params: params,
76
- opts: opts
77
- )
78
- end
79
-
80
- # Finalizes a payment on a Reader.
81
- def confirm_payment_intent(params = {}, opts = {})
82
- request_stripe_object(
83
- method: :post,
84
- path: format("/v1/terminal/readers/%<reader>s/confirm_payment_intent", { reader: CGI.escape(self["id"]) }),
85
- params: params,
86
- opts: opts
87
- )
88
- end
89
-
90
- # Finalizes a payment on a Reader.
91
- def self.confirm_payment_intent(reader, params = {}, opts = {})
92
- request_stripe_object(
93
- method: :post,
94
- path: format("/v1/terminal/readers/%<reader>s/confirm_payment_intent", { reader: CGI.escape(reader) }),
95
- params: params,
96
- opts: opts
97
- )
98
- end
99
-
100
40
  # Creates a new Reader object.
101
41
  def self.create(params = {}, opts = {})
102
42
  request_stripe_object(
@@ -0,0 +1,16 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ module V2
6
+ module Billing
7
+ # Fix me empty_doc_string.
8
+ class MeterEvent < APIResource
9
+ OBJECT_NAME = "v2.billing.meter_event"
10
+ def self.object_name
11
+ "v2.billing.meter_event"
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,15 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ module V2
6
+ module Billing
7
+ class MeterEventAdjustment < APIResource
8
+ OBJECT_NAME = "v2.billing.meter_event_adjustment"
9
+ def self.object_name
10
+ "v2.billing.meter_event_adjustment"
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ module V2
6
+ module Billing
7
+ class MeterEventSession < APIResource
8
+ OBJECT_NAME = "v2.billing.meter_event_session"
9
+ def self.object_name
10
+ "v2.billing.meter_event_session"
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,13 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ module V2
6
+ class Event < APIResource
7
+ OBJECT_NAME = "v2.core.event"
8
+ def self.object_name
9
+ "v2.core.event"
10
+ end
11
+ end
12
+ end
13
+ end
@@ -3,7 +3,6 @@
3
3
 
4
4
  require "stripe/resources/account"
5
5
  require "stripe/resources/account_link"
6
- require "stripe/resources/account_notice"
7
6
  require "stripe/resources/account_session"
8
7
  require "stripe/resources/apple_pay_domain"
9
8
  require "stripe/resources/application_fee"
@@ -13,6 +12,9 @@ require "stripe/resources/balance"
13
12
  require "stripe/resources/balance_transaction"
14
13
  require "stripe/resources/bank_account"
15
14
  require "stripe/resources/billing/alert"
15
+ require "stripe/resources/billing/credit_balance_summary"
16
+ require "stripe/resources/billing/credit_balance_transaction"
17
+ require "stripe/resources/billing/credit_grant"
16
18
  require "stripe/resources/billing/meter"
17
19
  require "stripe/resources/billing/meter_event"
18
20
  require "stripe/resources/billing/meter_event_adjustment"
@@ -20,9 +22,6 @@ require "stripe/resources/billing/meter_event_summary"
20
22
  require "stripe/resources/billing_portal/configuration"
21
23
  require "stripe/resources/billing_portal/session"
22
24
  require "stripe/resources/capability"
23
- require "stripe/resources/capital/financing_offer"
24
- require "stripe/resources/capital/financing_summary"
25
- require "stripe/resources/capital/financing_transaction"
26
25
  require "stripe/resources/card"
27
26
  require "stripe/resources/cash_balance"
28
27
  require "stripe/resources/charge"
@@ -49,29 +48,22 @@ require "stripe/resources/exchange_rate"
49
48
  require "stripe/resources/file"
50
49
  require "stripe/resources/file_link"
51
50
  require "stripe/resources/financial_connections/account"
52
- require "stripe/resources/financial_connections/account_inferred_balance"
53
51
  require "stripe/resources/financial_connections/account_owner"
54
52
  require "stripe/resources/financial_connections/account_ownership"
55
- require "stripe/resources/financial_connections/institution"
56
53
  require "stripe/resources/financial_connections/session"
57
54
  require "stripe/resources/financial_connections/transaction"
58
55
  require "stripe/resources/forwarding/request"
59
56
  require "stripe/resources/funding_instructions"
60
- require "stripe/resources/gift_cards/card"
61
- require "stripe/resources/gift_cards/transaction"
62
57
  require "stripe/resources/identity/verification_report"
63
58
  require "stripe/resources/identity/verification_session"
64
59
  require "stripe/resources/invoice"
65
60
  require "stripe/resources/invoice_item"
66
61
  require "stripe/resources/invoice_line_item"
67
- require "stripe/resources/invoice_payment"
68
62
  require "stripe/resources/invoice_rendering_template"
69
63
  require "stripe/resources/issuing/authorization"
70
64
  require "stripe/resources/issuing/card"
71
65
  require "stripe/resources/issuing/cardholder"
72
- require "stripe/resources/issuing/credit_underwriting_record"
73
66
  require "stripe/resources/issuing/dispute"
74
- require "stripe/resources/issuing/dispute_settlement_detail"
75
67
  require "stripe/resources/issuing/personalization_design"
76
68
  require "stripe/resources/issuing/physical_bundle"
77
69
  require "stripe/resources/issuing/token"
@@ -79,8 +71,6 @@ require "stripe/resources/issuing/transaction"
79
71
  require "stripe/resources/line_item"
80
72
  require "stripe/resources/login_link"
81
73
  require "stripe/resources/mandate"
82
- require "stripe/resources/margin"
83
- require "stripe/resources/order"
84
74
  require "stripe/resources/payment_intent"
85
75
  require "stripe/resources/payment_link"
86
76
  require "stripe/resources/payment_method"
@@ -94,8 +84,6 @@ require "stripe/resources/product"
94
84
  require "stripe/resources/product_feature"
95
85
  require "stripe/resources/promotion_code"
96
86
  require "stripe/resources/quote"
97
- require "stripe/resources/quote_preview_invoice"
98
- require "stripe/resources/quote_preview_subscription_schedule"
99
87
  require "stripe/resources/radar/early_fraud_warning"
100
88
  require "stripe/resources/radar/value_list"
101
89
  require "stripe/resources/radar/value_list_item"
@@ -113,10 +101,8 @@ require "stripe/resources/source_transaction"
113
101
  require "stripe/resources/subscription"
114
102
  require "stripe/resources/subscription_item"
115
103
  require "stripe/resources/subscription_schedule"
116
- require "stripe/resources/tax/association"
117
104
  require "stripe/resources/tax/calculation"
118
105
  require "stripe/resources/tax/calculation_line_item"
119
- require "stripe/resources/tax/form"
120
106
  require "stripe/resources/tax/registration"
121
107
  require "stripe/resources/tax/settings"
122
108
  require "stripe/resources/tax/transaction"
@@ -128,7 +114,6 @@ require "stripe/resources/terminal/configuration"
128
114
  require "stripe/resources/terminal/connection_token"
129
115
  require "stripe/resources/terminal/location"
130
116
  require "stripe/resources/terminal/reader"
131
- require "stripe/resources/terminal/reader_collected_data"
132
117
  require "stripe/resources/test_helpers/test_clock"
133
118
  require "stripe/resources/token"
134
119
  require "stripe/resources/topup"
@@ -146,4 +131,10 @@ require "stripe/resources/treasury/transaction"
146
131
  require "stripe/resources/treasury/transaction_entry"
147
132
  require "stripe/resources/usage_record"
148
133
  require "stripe/resources/usage_record_summary"
134
+ require "stripe/resources/v2/billing/meter_event"
135
+ require "stripe/resources/v2/billing/meter_event_adjustment"
136
+ require "stripe/resources/v2/billing/meter_event_session"
137
+ require "stripe/resources/v2/event"
149
138
  require "stripe/resources/webhook_endpoint"
139
+ require "stripe/events/v1_billing_meter_error_report_triggered_event"
140
+ require "stripe/events/v1_billing_meter_no_meter_found_event"
@@ -20,7 +20,7 @@ module Stripe
20
20
  # that there isn't a next page in order to replicate the behavior of the API
21
21
  # when it attempts to return a page beyond the last.
22
22
  def self.empty_search_result(opts = {})
23
- SearchResultObject.construct_from({ data: [] }, opts)
23
+ SearchResultObject.construct_from({ data: [] }, opts, :v1)
24
24
  end
25
25
 
26
26
  def initialize(*args)