stripe 5.38.0 → 15.2.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +742 -0
- data/CONTRIBUTING.md +25 -0
- data/Gemfile +12 -4
- data/Makefile +22 -0
- data/OPENAPI_VERSION +1 -0
- data/README.md +137 -27
- data/Rakefile +3 -6
- data/VERSION +1 -1
- data/examples/README.md +16 -0
- data/examples/example_template.rb +36 -0
- data/examples/meter_event_stream.rb +57 -0
- data/examples/thinevent_webhook_handler.rb +39 -0
- data/{bin → exe}/stripe-console +1 -1
- data/justfile +43 -0
- data/lib/data/ca-certificates.crt +1241 -1937
- data/lib/stripe/api_operations/create.rb +6 -2
- data/lib/stripe/api_operations/delete.rb +12 -7
- data/lib/stripe/api_operations/list.rb +6 -9
- data/lib/stripe/api_operations/nested_resource.rb +59 -31
- data/lib/stripe/api_operations/request.rb +30 -65
- data/lib/stripe/api_operations/save.rb +20 -10
- data/lib/stripe/api_operations/search.rb +21 -0
- data/lib/stripe/api_operations/singleton_save.rb +90 -0
- data/lib/stripe/api_requestor.rb +1136 -0
- data/lib/stripe/api_resource.rb +49 -34
- data/lib/stripe/api_resource_test_helpers.rb +53 -0
- data/lib/stripe/{resources/usage_record.rb → api_version.rb} +2 -2
- data/lib/stripe/connection_manager.rb +28 -11
- data/lib/stripe/errors.rb +11 -20
- data/lib/stripe/event_types.rb +15 -0
- data/lib/stripe/events/v1_billing_meter_error_report_triggered_event.rb +23 -0
- data/lib/stripe/events/v1_billing_meter_no_meter_found_event.rb +13 -0
- data/lib/stripe/events/v2_core_event_destination_ping_event.rb +21 -0
- data/lib/stripe/instrumentation.rb +37 -15
- data/lib/stripe/list_object.rb +5 -3
- data/lib/stripe/multipart_encoder.rb +7 -7
- data/lib/stripe/oauth.rb +14 -21
- data/lib/stripe/object_types.rb +157 -91
- data/lib/stripe/request_options.rb +129 -0
- data/lib/stripe/request_params.rb +24 -0
- data/lib/stripe/resources/account.rb +4854 -30
- data/lib/stripe/resources/account_link.rb +66 -0
- data/lib/stripe/resources/account_session.rb +868 -0
- data/lib/stripe/resources/alipay_account.rb +1 -1
- data/lib/stripe/resources/apple_pay_domain.rb +91 -0
- data/lib/stripe/resources/application.rb +20 -0
- data/lib/stripe/resources/application_fee.rb +96 -2
- data/lib/stripe/resources/application_fee_refund.rb +26 -2
- data/lib/stripe/resources/apps/secret.rb +196 -0
- data/lib/stripe/resources/balance.rb +178 -0
- data/lib/stripe/resources/balance_transaction.rb +124 -0
- data/lib/stripe/resources/bank_account.rb +137 -6
- data/lib/stripe/resources/billing/alert.rb +222 -0
- data/lib/stripe/resources/billing/alert_triggered.rb +26 -0
- data/lib/stripe/resources/billing/credit_balance_summary.rb +54 -0
- data/lib/stripe/resources/billing/credit_balance_transaction.rb +133 -0
- data/lib/stripe/resources/billing/credit_grant.rb +307 -0
- data/lib/stripe/resources/billing/meter.rb +254 -0
- data/lib/stripe/resources/billing/meter_event.rb +61 -0
- data/lib/stripe/resources/billing/meter_event_adjustment.rb +69 -0
- data/lib/stripe/resources/billing/meter_event_summary.rb +32 -0
- data/lib/stripe/resources/billing_portal/configuration.rb +587 -0
- data/lib/stripe/resources/billing_portal/session.rb +298 -0
- data/lib/stripe/resources/capability.rb +91 -2
- data/lib/stripe/resources/card.rb +111 -3
- data/lib/stripe/resources/cash_balance.rb +43 -0
- data/lib/stripe/resources/charge.rb +1682 -2
- data/lib/stripe/resources/checkout/session.rb +3666 -2
- data/lib/stripe/resources/climate/order.rb +234 -0
- data/lib/stripe/resources/climate/product.rb +74 -0
- data/lib/stripe/resources/climate/supplier.rb +71 -0
- data/lib/stripe/resources/confirmation_token.rb +1498 -0
- data/lib/stripe/resources/connect_collection_transfer.rb +24 -0
- data/lib/stripe/resources/country_spec.rb +68 -0
- data/lib/stripe/resources/coupon.rb +236 -0
- data/lib/stripe/resources/credit_note.rb +709 -9
- data/lib/stripe/resources/credit_note_line_item.rb +71 -0
- data/lib/stripe/resources/customer.rb +1015 -16
- data/lib/stripe/resources/customer_balance_transaction.rb +38 -1
- data/lib/stripe/resources/customer_cash_balance_transaction.rb +124 -0
- data/lib/stripe/resources/customer_session.rb +188 -0
- data/lib/stripe/resources/discount.rb +37 -0
- data/lib/stripe/resources/dispute.rb +650 -2
- data/lib/stripe/resources/entitlements/active_entitlement.rb +63 -0
- data/lib/stripe/resources/entitlements/active_entitlement_summary.rb +23 -0
- data/lib/stripe/resources/entitlements/feature.rb +130 -0
- data/lib/stripe/resources/ephemeral_key.rb +44 -0
- data/lib/stripe/resources/event.rb +130 -0
- data/lib/stripe/resources/exchange_rate.rb +58 -0
- data/lib/stripe/resources/file.rb +139 -15
- data/lib/stripe/resources/file_link.rb +129 -0
- data/lib/stripe/resources/financial_connections/account.rb +363 -0
- data/lib/stripe/resources/financial_connections/account_owner.rb +31 -0
- data/lib/stripe/resources/financial_connections/account_ownership.rb +23 -0
- data/lib/stripe/resources/financial_connections/session.rb +121 -0
- data/lib/stripe/resources/financial_connections/transaction.rb +118 -0
- data/lib/stripe/resources/forwarding/request.rb +208 -0
- data/lib/stripe/resources/funding_instructions.rb +332 -0
- data/lib/stripe/resources/identity/verification_report.rb +287 -0
- data/lib/stripe/resources/identity/verification_session.rb +474 -4
- data/lib/stripe/resources/invoice.rb +3525 -17
- data/lib/stripe/resources/invoice_item.rb +453 -0
- data/lib/stripe/resources/invoice_line_item.rb +372 -1
- data/lib/stripe/resources/invoice_payment.rb +112 -0
- data/lib/stripe/resources/invoice_rendering_template.rb +120 -0
- data/lib/stripe/resources/issuing/authorization.rb +1313 -4
- data/lib/stripe/resources/issuing/card.rb +785 -4
- data/lib/stripe/resources/issuing/cardholder.rb +684 -0
- data/lib/stripe/resources/issuing/dispute.rb +828 -2
- data/lib/stripe/resources/issuing/personalization_design.rb +395 -0
- data/lib/stripe/resources/issuing/physical_bundle.rb +80 -0
- data/lib/stripe/resources/issuing/token.rb +198 -0
- data/lib/stripe/resources/issuing/transaction.rb +991 -0
- data/lib/stripe/resources/line_item.rb +51 -0
- data/lib/stripe/resources/login_link.rb +12 -0
- data/lib/stripe/resources/mandate.rb +146 -0
- data/lib/stripe/resources/payment_intent.rb +8876 -6
- data/lib/stripe/resources/payment_link.rb +1692 -0
- data/lib/stripe/resources/payment_method.rb +1570 -4
- data/lib/stripe/resources/payment_method_configuration.rb +3189 -0
- data/lib/stripe/resources/payment_method_domain.rb +236 -0
- data/lib/stripe/resources/payout.rb +271 -4
- data/lib/stripe/resources/person.rb +295 -1
- data/lib/stripe/resources/plan.rb +352 -0
- data/lib/stripe/resources/price.rb +642 -0
- data/lib/stripe/resources/product.rb +534 -0
- data/lib/stripe/resources/product_feature.rb +25 -0
- data/lib/stripe/resources/promotion_code.rb +237 -0
- data/lib/stripe/resources/quote.rb +1015 -38
- data/lib/stripe/resources/radar/early_fraud_warning.rb +85 -0
- data/lib/stripe/resources/radar/value_list.rb +171 -0
- data/lib/stripe/resources/radar/value_list_item.rb +131 -0
- data/lib/stripe/resources/refund.rb +494 -0
- data/lib/stripe/resources/reporting/report_run.rb +172 -0
- data/lib/stripe/resources/reporting/report_type.rb +48 -1
- data/lib/stripe/resources/reserve_transaction.rb +22 -0
- data/lib/stripe/resources/reversal.rb +38 -2
- data/lib/stripe/resources/review.rb +122 -2
- data/lib/stripe/resources/setup_attempt.rb +380 -0
- data/lib/stripe/resources/setup_intent.rb +3432 -4
- data/lib/stripe/resources/shipping_rate.rb +287 -0
- data/lib/stripe/resources/sigma/scheduled_query_run.rb +62 -0
- data/lib/stripe/resources/source.rb +1250 -10
- data/lib/stripe/resources/source_mandate_notification.rb +66 -0
- data/lib/stripe/resources/source_transaction.rb +93 -0
- data/lib/stripe/resources/subscription.rb +1871 -3
- data/lib/stripe/resources/subscription_item.rb +399 -10
- data/lib/stripe/resources/subscription_schedule.rb +1455 -4
- data/lib/stripe/resources/tax/calculation.rb +430 -0
- data/lib/stripe/resources/tax/calculation_line_item.rb +71 -0
- data/lib/stripe/resources/tax/registration.rb +2667 -0
- data/lib/stripe/resources/tax/settings.rb +134 -0
- data/lib/stripe/resources/tax/transaction.rb +314 -0
- data/lib/stripe/resources/tax/transaction_line_item.rb +44 -0
- data/lib/stripe/resources/tax_code.rb +35 -0
- data/lib/stripe/resources/tax_deducted_at_source.rb +22 -0
- data/lib/stripe/resources/tax_id.rb +144 -11
- data/lib/stripe/resources/tax_rate.rb +217 -0
- data/lib/stripe/resources/terminal/configuration.rb +1328 -0
- data/lib/stripe/resources/terminal/connection_token.rb +34 -0
- data/lib/stripe/resources/terminal/location.rb +222 -0
- data/lib/stripe/resources/terminal/reader.rb +886 -0
- data/lib/stripe/resources/test_helpers/test_clock.rb +156 -0
- data/lib/stripe/resources/token.rb +1249 -0
- data/lib/stripe/resources/topup.rb +204 -2
- data/lib/stripe/resources/transfer.rb +173 -6
- data/lib/stripe/resources/treasury/credit_reversal.rb +120 -0
- data/lib/stripe/resources/treasury/debit_reversal.rb +131 -0
- data/lib/stripe/resources/treasury/financial_account.rb +833 -0
- data/lib/stripe/resources/treasury/financial_account_features.rb +204 -0
- data/lib/stripe/resources/treasury/inbound_transfer.rb +356 -0
- data/lib/stripe/resources/treasury/outbound_payment.rb +638 -0
- data/lib/stripe/resources/treasury/outbound_transfer.rb +493 -0
- data/lib/stripe/resources/treasury/received_credit.rb +284 -0
- data/lib/stripe/resources/treasury/received_debit.rb +243 -0
- data/lib/stripe/resources/treasury/transaction.rb +193 -0
- data/lib/stripe/resources/treasury/transaction_entry.rb +178 -0
- data/lib/stripe/resources/v2/amount.rb +9 -0
- data/lib/stripe/resources/v2/billing/meter_event.rb +34 -0
- data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +36 -0
- data/lib/stripe/resources/v2/billing/meter_event_session.rb +29 -0
- data/lib/stripe/resources/v2/event.rb +41 -0
- data/lib/stripe/resources/v2/event_destination.rb +73 -0
- data/lib/stripe/resources/webhook_endpoint.rb +167 -0
- data/lib/stripe/resources.rb +70 -12
- data/lib/stripe/search_result_object.rb +89 -0
- data/lib/stripe/services/account_capability_service.rb +71 -0
- data/lib/stripe/services/account_external_account_service.rb +317 -0
- data/lib/stripe/services/account_link_service.rb +63 -0
- data/lib/stripe/services/account_login_link_service.rb +28 -0
- data/lib/stripe/services/account_person_service.rb +1019 -0
- data/lib/stripe/services/account_service.rb +4171 -0
- data/lib/stripe/services/account_session_service.rb +569 -0
- data/lib/stripe/services/apple_pay_domain_service.rb +100 -0
- data/lib/stripe/services/application_fee_refund_service.rb +114 -0
- data/lib/stripe/services/application_fee_service.rb +92 -0
- data/lib/stripe/services/apps/secret_service.rb +168 -0
- data/lib/stripe/services/apps_service.rb +13 -0
- data/lib/stripe/services/balance_service.rb +21 -0
- data/lib/stripe/services/balance_transaction_service.rb +101 -0
- data/lib/stripe/services/billing/alert_service.rb +187 -0
- data/lib/stripe/services/billing/credit_balance_summary_service.rb +67 -0
- data/lib/stripe/services/billing/credit_balance_transaction_service.rb +70 -0
- data/lib/stripe/services/billing/credit_grant_service.rb +240 -0
- data/lib/stripe/services/billing/meter_event_adjustment_service.rb +45 -0
- data/lib/stripe/services/billing/meter_event_service.rb +40 -0
- data/lib/stripe/services/billing/meter_event_summary_service.rb +58 -0
- data/lib/stripe/services/billing/meter_service.rb +211 -0
- data/lib/stripe/services/billing_portal/configuration_service.rb +496 -0
- data/lib/stripe/services/billing_portal/session_service.rb +192 -0
- data/lib/stripe/services/billing_portal_service.rb +14 -0
- data/lib/stripe/services/billing_service.rb +20 -0
- data/lib/stripe/services/charge_service.rb +471 -0
- data/lib/stripe/services/checkout/session_line_item_service.rb +37 -0
- data/lib/stripe/services/checkout/session_service.rb +2495 -0
- data/lib/stripe/services/checkout_service.rb +13 -0
- data/lib/stripe/services/climate/order_service.rb +170 -0
- data/lib/stripe/services/climate/product_service.rb +57 -0
- data/lib/stripe/services/climate/supplier_service.rb +57 -0
- data/lib/stripe/services/climate_service.rb +15 -0
- data/lib/stripe/services/confirmation_token_service.rb +26 -0
- data/lib/stripe/services/country_spec_service.rb +55 -0
- data/lib/stripe/services/coupon_service.rb +202 -0
- data/lib/stripe/services/credit_note_line_item_service.rb +35 -0
- data/lib/stripe/services/credit_note_preview_lines_service.rb +169 -0
- data/lib/stripe/services/credit_note_service.rb +457 -0
- data/lib/stripe/services/customer_balance_transaction_service.rb +113 -0
- data/lib/stripe/services/customer_cash_balance_service.rb +57 -0
- data/lib/stripe/services/customer_cash_balance_transaction_service.rb +55 -0
- data/lib/stripe/services/customer_funding_instructions_service.rb +61 -0
- data/lib/stripe/services/customer_payment_method_service.rb +68 -0
- data/lib/stripe/services/customer_payment_source_service.rb +255 -0
- data/lib/stripe/services/customer_service.rb +664 -0
- data/lib/stripe/services/customer_session_service.rb +113 -0
- data/lib/stripe/services/customer_tax_id_service.rb +94 -0
- data/lib/stripe/services/dispute_service.rb +422 -0
- data/lib/stripe/services/entitlements/active_entitlement_service.rb +66 -0
- data/lib/stripe/services/entitlements/feature_service.rb +128 -0
- data/lib/stripe/services/entitlements_service.rb +14 -0
- data/lib/stripe/services/ephemeral_key_service.rb +64 -0
- data/lib/stripe/services/event_service.rb +87 -0
- data/lib/stripe/services/exchange_rate_service.rb +55 -0
- data/lib/stripe/services/file_link_service.rb +132 -0
- data/lib/stripe/services/file_service.rb +124 -0
- data/lib/stripe/services/financial_connections/account_owner_service.rb +46 -0
- data/lib/stripe/services/financial_connections/account_service.rb +177 -0
- data/lib/stripe/services/financial_connections/session_service.rb +98 -0
- data/lib/stripe/services/financial_connections/transaction_service.rb +100 -0
- data/lib/stripe/services/financial_connections_service.rb +15 -0
- data/lib/stripe/services/forwarding/request_service.rb +147 -0
- data/lib/stripe/services/forwarding_service.rb +13 -0
- data/lib/stripe/services/identity/verification_report_service.rb +95 -0
- data/lib/stripe/services/identity/verification_session_service.rb +337 -0
- data/lib/stripe/services/identity_service.rb +14 -0
- data/lib/stripe/services/invoice_item_service.rb +394 -0
- data/lib/stripe/services/invoice_line_item_service.rb +252 -0
- data/lib/stripe/services/invoice_payment_service.rb +83 -0
- data/lib/stripe/services/invoice_rendering_template_service.rb +101 -0
- data/lib/stripe/services/invoice_service.rb +2900 -0
- data/lib/stripe/services/issuing/authorization_service.rb +169 -0
- data/lib/stripe/services/issuing/card_service.rb +507 -0
- data/lib/stripe/services/issuing/cardholder_service.rb +577 -0
- data/lib/stripe/services/issuing/dispute_service.rb +696 -0
- data/lib/stripe/services/issuing/personalization_design_service.rb +245 -0
- data/lib/stripe/services/issuing/physical_bundle_service.rb +70 -0
- data/lib/stripe/services/issuing/token_service.rb +114 -0
- data/lib/stripe/services/issuing/transaction_service.rb +118 -0
- data/lib/stripe/services/issuing_service.rb +20 -0
- data/lib/stripe/services/mandate_service.rb +26 -0
- data/lib/stripe/services/oauth_service.rb +63 -0
- data/lib/stripe/services/payment_intent_service.rb +7202 -0
- data/lib/stripe/services/payment_link_line_item_service.rb +35 -0
- data/lib/stripe/services/payment_link_service.rb +1333 -0
- data/lib/stripe/services/payment_method_configuration_service.rb +2306 -0
- data/lib/stripe/services/payment_method_domain_service.rb +142 -0
- data/lib/stripe/services/payment_method_service.rb +843 -0
- data/lib/stripe/services/payout_service.rb +225 -0
- data/lib/stripe/services/plan_service.rb +297 -0
- data/lib/stripe/services/price_service.rb +545 -0
- data/lib/stripe/services/product_feature_service.rb +91 -0
- data/lib/stripe/services/product_service.rb +494 -0
- data/lib/stripe/services/promotion_code_service.rb +228 -0
- data/lib/stripe/services/quote_computed_upfront_line_items_service.rb +35 -0
- data/lib/stripe/services/quote_line_item_service.rb +35 -0
- data/lib/stripe/services/quote_service.rb +703 -0
- data/lib/stripe/services/radar/early_fraud_warning_service.rb +93 -0
- data/lib/stripe/services/radar/value_list_item_service.rb +130 -0
- data/lib/stripe/services/radar/value_list_service.rb +165 -0
- data/lib/stripe/services/radar_service.rb +15 -0
- data/lib/stripe/services/refund_service.rb +200 -0
- data/lib/stripe/services/reporting/report_run_service.rb +147 -0
- data/lib/stripe/services/reporting/report_type_service.rb +48 -0
- data/lib/stripe/services/reporting_service.rb +14 -0
- data/lib/stripe/services/review_service.rb +89 -0
- data/lib/stripe/services/setup_attempt_service.rb +68 -0
- data/lib/stripe/services/setup_intent_service.rb +3107 -0
- data/lib/stripe/services/shipping_rate_service.rb +250 -0
- data/lib/stripe/services/sigma/scheduled_query_run_service.rb +57 -0
- data/lib/stripe/services/sigma_service.rb +13 -0
- data/lib/stripe/services/source_service.rb +665 -0
- data/lib/stripe/services/source_transaction_service.rb +35 -0
- data/lib/stripe/services/subscription_item_service.rb +372 -0
- data/lib/stripe/services/subscription_schedule_service.rb +1224 -0
- data/lib/stripe/services/subscription_service.rb +1590 -0
- data/lib/stripe/services/tax/calculation_line_item_service.rb +37 -0
- data/lib/stripe/services/tax/calculation_service.rb +246 -0
- data/lib/stripe/services/tax/registration_service.rb +1774 -0
- data/lib/stripe/services/tax/settings_service.rb +104 -0
- data/lib/stripe/services/tax/transaction_line_item_service.rb +37 -0
- data/lib/stripe/services/tax/transaction_service.rb +159 -0
- data/lib/stripe/services/tax_code_service.rb +49 -0
- data/lib/stripe/services/tax_id_service.rb +116 -0
- data/lib/stripe/services/tax_rate_service.rb +193 -0
- data/lib/stripe/services/tax_service.rb +16 -0
- data/lib/stripe/services/terminal/configuration_service.rb +1059 -0
- data/lib/stripe/services/terminal/connection_token_service.rb +31 -0
- data/lib/stripe/services/terminal/location_service.rb +207 -0
- data/lib/stripe/services/terminal/reader_service.rb +488 -0
- data/lib/stripe/services/terminal_service.rb +16 -0
- data/lib/stripe/services/test_helpers/confirmation_token_service.rb +655 -0
- data/lib/stripe/services/test_helpers/customer_service.rb +37 -0
- data/lib/stripe/services/test_helpers/issuing/authorization_service.rb +832 -0
- data/lib/stripe/services/test_helpers/issuing/card_service.rb +110 -0
- data/lib/stripe/services/test_helpers/issuing/personalization_design_service.rb +84 -0
- data/lib/stripe/services/test_helpers/issuing/transaction_service.rb +675 -0
- data/lib/stripe/services/test_helpers/issuing_service.rb +19 -0
- data/lib/stripe/services/test_helpers/refund_service.rb +28 -0
- data/lib/stripe/services/test_helpers/terminal/reader_service.rb +108 -0
- data/lib/stripe/services/test_helpers/terminal_service.rb +15 -0
- data/lib/stripe/services/test_helpers/test_clock_service.rb +119 -0
- data/lib/stripe/services/test_helpers/treasury/inbound_transfer_service.rb +81 -0
- data/lib/stripe/services/test_helpers/treasury/outbound_payment_service.rb +141 -0
- data/lib/stripe/services/test_helpers/treasury/outbound_transfer_service.rb +141 -0
- data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +81 -0
- data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +81 -0
- data/lib/stripe/services/test_helpers/treasury_service.rb +19 -0
- data/lib/stripe/services/test_helpers_service.rb +19 -0
- data/lib/stripe/services/token_service.rb +1224 -0
- data/lib/stripe/services/topup_service.rb +191 -0
- data/lib/stripe/services/transfer_reversal_service.rb +122 -0
- data/lib/stripe/services/transfer_service.rb +166 -0
- data/lib/stripe/services/treasury/credit_reversal_service.rb +100 -0
- data/lib/stripe/services/treasury/debit_reversal_service.rb +104 -0
- data/lib/stripe/services/treasury/financial_account_features_service.rb +196 -0
- data/lib/stripe/services/treasury/financial_account_service.rb +554 -0
- data/lib/stripe/services/treasury/inbound_transfer_service.rb +140 -0
- data/lib/stripe/services/treasury/outbound_payment_service.rb +310 -0
- data/lib/stripe/services/treasury/outbound_transfer_service.rb +176 -0
- data/lib/stripe/services/treasury/received_credit_service.rb +82 -0
- data/lib/stripe/services/treasury/received_debit_service.rb +70 -0
- data/lib/stripe/services/treasury/transaction_entry_service.rb +117 -0
- data/lib/stripe/services/treasury/transaction_service.rb +125 -0
- data/lib/stripe/services/treasury_service.rb +22 -0
- data/lib/stripe/services/v1_services.rb +90 -0
- data/lib/stripe/services/v2/billing/meter_event_adjustment_service.rb +44 -0
- data/lib/stripe/services/v2/billing/meter_event_service.rb +46 -0
- data/lib/stripe/services/v2/billing/meter_event_session_service.rb +23 -0
- data/lib/stripe/services/v2/billing/meter_event_stream_service.rb +56 -0
- data/lib/stripe/services/v2/billing_service.rb +18 -0
- data/lib/stripe/services/v2/core/event_destination_service.rb +235 -0
- data/lib/stripe/services/v2/core/event_service.rb +48 -0
- data/lib/stripe/services/v2/core_service.rb +16 -0
- data/lib/stripe/services/v2_services.rb +14 -0
- data/lib/stripe/services/webhook_endpoint_service.rb +156 -0
- data/lib/stripe/services.rb +180 -0
- data/lib/stripe/singleton_api_resource.rb +3 -3
- data/lib/stripe/stripe_client.rb +56 -1021
- data/lib/stripe/stripe_configuration.rb +63 -42
- data/lib/stripe/stripe_object.rb +75 -39
- data/lib/stripe/stripe_response.rb +1 -3
- data/lib/stripe/stripe_service.rb +32 -0
- data/lib/stripe/thin_event.rb +37 -0
- data/lib/stripe/util.rb +161 -39
- data/lib/stripe/v2_list_object.rb +84 -0
- data/lib/stripe/version.rb +1 -1
- data/lib/stripe/webhook.rb +3 -2
- data/lib/stripe.rb +44 -1
- data/rbi/stripe/resources/account.rbi +4926 -0
- data/rbi/stripe/resources/account_link.rbi +74 -0
- data/rbi/stripe/resources/account_session.rbi +1013 -0
- data/rbi/stripe/resources/apple_pay_domain.rbi +88 -0
- data/rbi/stripe/resources/application.rbi +20 -0
- data/rbi/stripe/resources/application_fee.rbi +118 -0
- data/rbi/stripe/resources/application_fee_refund.rbi +37 -0
- data/rbi/stripe/resources/apps/secret.rbi +195 -0
- data/rbi/stripe/resources/balance.rbi +235 -0
- data/rbi/stripe/resources/balance_transaction.rbi +147 -0
- data/rbi/stripe/resources/bank_account.rbi +127 -0
- data/rbi/stripe/resources/billing/alert.rbi +201 -0
- data/rbi/stripe/resources/billing/alert_triggered.rbi +28 -0
- data/rbi/stripe/resources/billing/credit_balance_summary.rbi +63 -0
- data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +147 -0
- data/rbi/stripe/resources/billing/credit_grant.rbi +291 -0
- data/rbi/stripe/resources/billing/meter.rbi +226 -0
- data/rbi/stripe/resources/billing/meter_event.rbi +64 -0
- data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +64 -0
- data/rbi/stripe/resources/billing/meter_event_summary.rbi +35 -0
- data/rbi/stripe/resources/billing_portal/configuration.rbi +645 -0
- data/rbi/stripe/resources/billing_portal/session.rbi +345 -0
- data/rbi/stripe/resources/capability.rbi +125 -0
- data/rbi/stripe/resources/card.rbi +125 -0
- data/rbi/stripe/resources/cash_balance.rbi +32 -0
- data/rbi/stripe/resources/charge.rbi +2069 -0
- data/rbi/stripe/resources/checkout/session.rbi +4004 -0
- data/rbi/stripe/resources/climate/order.rbi +245 -0
- data/rbi/stripe/resources/climate/product.rbi +75 -0
- data/rbi/stripe/resources/climate/supplier.rbi +72 -0
- data/rbi/stripe/resources/confirmation_token.rbi +1807 -0
- data/rbi/stripe/resources/connect_collection_transfer.rbi +26 -0
- data/rbi/stripe/resources/country_spec.rbi +85 -0
- data/rbi/stripe/resources/coupon.rbi +250 -0
- data/rbi/stripe/resources/credit_note.rbi +752 -0
- data/rbi/stripe/resources/credit_note_line_item.rbi +101 -0
- data/rbi/stripe/resources/customer.rbi +1005 -0
- data/rbi/stripe/resources/customer_balance_transaction.rbi +56 -0
- data/rbi/stripe/resources/customer_cash_balance_transaction.rbi +151 -0
- data/rbi/stripe/resources/customer_session.rbi +200 -0
- data/rbi/stripe/resources/discount.rbi +53 -0
- data/rbi/stripe/resources/dispute.rbi +761 -0
- data/rbi/stripe/resources/entitlements/active_entitlement.rbi +58 -0
- data/rbi/stripe/resources/entitlements/active_entitlement_summary.rbi +23 -0
- data/rbi/stripe/resources/entitlements/feature.rbi +117 -0
- data/rbi/stripe/resources/ephemeral_key.rbi +44 -0
- data/rbi/stripe/resources/event.rbi +149 -0
- data/rbi/stripe/resources/exchange_rate.rbi +66 -0
- data/rbi/stripe/resources/file.rbi +143 -0
- data/rbi/stripe/resources/file_link.rbi +141 -0
- data/rbi/stripe/resources/financial_connections/account.rbi +339 -0
- data/rbi/stripe/resources/financial_connections/account_owner.rbi +35 -0
- data/rbi/stripe/resources/financial_connections/account_ownership.rbi +23 -0
- data/rbi/stripe/resources/financial_connections/session.rbi +123 -0
- data/rbi/stripe/resources/financial_connections/transaction.rbi +124 -0
- data/rbi/stripe/resources/forwarding/request.rbi +216 -0
- data/rbi/stripe/resources/funding_instructions.rbi +437 -0
- data/rbi/stripe/resources/identity/verification_report.rbi +360 -0
- data/rbi/stripe/resources/identity/verification_session.rbi +526 -0
- data/rbi/stripe/resources/invoice.rbi +3812 -0
- data/rbi/stripe/resources/invoice_item.rbi +473 -0
- data/rbi/stripe/resources/invoice_line_item.rbi +432 -0
- data/rbi/stripe/resources/invoice_payment.rbi +121 -0
- data/rbi/stripe/resources/invoice_rendering_template.rbi +104 -0
- data/rbi/stripe/resources/issuing/authorization.rbi +1283 -0
- data/rbi/stripe/resources/issuing/card.rbi +741 -0
- data/rbi/stripe/resources/issuing/cardholder.rbi +744 -0
- data/rbi/stripe/resources/issuing/dispute.rbi +913 -0
- data/rbi/stripe/resources/issuing/personalization_design.rbi +338 -0
- data/rbi/stripe/resources/issuing/physical_bundle.rbi +79 -0
- data/rbi/stripe/resources/issuing/token.rbi +226 -0
- data/rbi/stripe/resources/issuing/transaction.rbi +1061 -0
- data/rbi/stripe/resources/line_item.rbi +72 -0
- data/rbi/stripe/resources/login_link.rbi +19 -0
- data/rbi/stripe/resources/mandate.rbi +187 -0
- data/rbi/stripe/resources/payment_intent.rbi +9647 -0
- data/rbi/stripe/resources/payment_link.rbi +1801 -0
- data/rbi/stripe/resources/payment_method.rbi +1761 -0
- data/rbi/stripe/resources/payment_method_configuration.rbi +3550 -0
- data/rbi/stripe/resources/payment_method_domain.rbi +228 -0
- data/rbi/stripe/resources/payout.rbi +300 -0
- data/rbi/stripe/resources/person.rbi +401 -0
- data/rbi/stripe/resources/plan.rbi +371 -0
- data/rbi/stripe/resources/price.rbi +694 -0
- data/rbi/stripe/resources/product.rbi +555 -0
- data/rbi/stripe/resources/product_feature.rbi +26 -0
- data/rbi/stripe/resources/promotion_code.rbi +261 -0
- data/rbi/stripe/resources/quote.rbi +1126 -0
- data/rbi/stripe/resources/radar/early_fraud_warning.rbi +98 -0
- data/rbi/stripe/resources/radar/value_list.rbi +168 -0
- data/rbi/stripe/resources/radar/value_list_item.rbi +129 -0
- data/rbi/stripe/resources/refund.rbi +523 -0
- data/rbi/stripe/resources/reporting/report_run.rbi +191 -0
- data/rbi/stripe/resources/reporting/report_type.rbi +57 -0
- data/rbi/stripe/resources/reserve_transaction.rbi +23 -0
- data/rbi/stripe/resources/reversal.rbi +51 -0
- data/rbi/stripe/resources/review.rbi +154 -0
- data/rbi/stripe/resources/setup_attempt.rbi +477 -0
- data/rbi/stripe/resources/setup_intent.rbi +3655 -0
- data/rbi/stripe/resources/shipping_rate.rbi +305 -0
- data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +75 -0
- data/rbi/stripe/resources/source.rbi +1496 -0
- data/rbi/stripe/resources/source_mandate_notification.rbi +77 -0
- data/rbi/stripe/resources/source_transaction.rbi +127 -0
- data/rbi/stripe/resources/subscription.rbi +2027 -0
- data/rbi/stripe/resources/subscription_item.rbi +404 -0
- data/rbi/stripe/resources/subscription_schedule.rbi +1623 -0
- data/rbi/stripe/resources/tax/calculation.rbi +478 -0
- data/rbi/stripe/resources/tax/calculation_line_item.rbi +91 -0
- data/rbi/stripe/resources/tax/registration.rbi +2713 -0
- data/rbi/stripe/resources/tax/settings.rbi +141 -0
- data/rbi/stripe/resources/tax/transaction.rbi +351 -0
- data/rbi/stripe/resources/tax/transaction_line_item.rbi +54 -0
- data/rbi/stripe/resources/tax_code.rbi +44 -0
- data/rbi/stripe/resources/tax_deducted_at_source.rbi +23 -0
- data/rbi/stripe/resources/tax_id.rbi +165 -0
- data/rbi/stripe/resources/tax_rate.rbi +239 -0
- data/rbi/stripe/resources/terminal/configuration.rbi +1386 -0
- data/rbi/stripe/resources/terminal/connection_token.rbi +37 -0
- data/rbi/stripe/resources/terminal/location.rbi +222 -0
- data/rbi/stripe/resources/terminal/reader.rbi +847 -0
- data/rbi/stripe/resources/test_helpers/test_clock.rbi +132 -0
- data/rbi/stripe/resources/token.rbi +1283 -0
- data/rbi/stripe/resources/topup.rbi +222 -0
- data/rbi/stripe/resources/transfer.rbi +199 -0
- data/rbi/stripe/resources/treasury/credit_reversal.rbi +119 -0
- data/rbi/stripe/resources/treasury/debit_reversal.rbi +131 -0
- data/rbi/stripe/resources/treasury/financial_account.rbi +865 -0
- data/rbi/stripe/resources/treasury/financial_account_features.rbi +260 -0
- data/rbi/stripe/resources/treasury/inbound_transfer.rbi +295 -0
- data/rbi/stripe/resources/treasury/outbound_payment.rbi +592 -0
- data/rbi/stripe/resources/treasury/outbound_transfer.rbi +431 -0
- data/rbi/stripe/resources/treasury/received_credit.rbi +302 -0
- data/rbi/stripe/resources/treasury/received_debit.rbi +256 -0
- data/rbi/stripe/resources/treasury/transaction.rbi +215 -0
- data/rbi/stripe/resources/treasury/transaction_entry.rbi +192 -0
- data/rbi/stripe/resources/v2/amount.rbi +14 -0
- data/rbi/stripe/resources/v2/billing/meter_event.rbi +37 -0
- data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +41 -0
- data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +31 -0
- data/rbi/stripe/resources/v2/event.rbi +48 -0
- data/rbi/stripe/resources/v2/event_destination.rbi +91 -0
- data/rbi/stripe/resources/webhook_endpoint.rbi +168 -0
- data/rbi/stripe/services/account_capability_service.rbi +51 -0
- data/rbi/stripe/services/account_external_account_service.rbi +304 -0
- data/rbi/stripe/services/account_link_service.rbi +58 -0
- data/rbi/stripe/services/account_login_link_service.rbi +22 -0
- data/rbi/stripe/services/account_person_service.rbi +1011 -0
- data/rbi/stripe/services/account_service.rbi +4213 -0
- data/rbi/stripe/services/account_session_service.rbi +646 -0
- data/rbi/stripe/services/apple_pay_domain_service.rbi +76 -0
- data/rbi/stripe/services/application_fee_refund_service.rbi +93 -0
- data/rbi/stripe/services/application_fee_service.rbi +78 -0
- data/rbi/stripe/services/apps/secret_service.rbi +151 -0
- data/{lib/stripe/resources/usage_record_summary.rb → rbi/stripe/services/apps_service.rbi} +4 -3
- data/rbi/stripe/services/balance_service.rbi +21 -0
- data/rbi/stripe/services/balance_transaction_service.rbi +93 -0
- data/rbi/stripe/services/billing/alert_service.rbi +152 -0
- data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +68 -0
- data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +59 -0
- data/rbi/stripe/services/billing/credit_grant_service.rbi +211 -0
- data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +42 -0
- data/rbi/stripe/services/billing/meter_event_service.rbi +42 -0
- data/rbi/stripe/services/billing/meter_event_summary_service.rbi +54 -0
- data/rbi/stripe/services/billing/meter_service.rbi +163 -0
- data/rbi/stripe/services/billing_portal/configuration_service.rbi +511 -0
- data/rbi/stripe/services/billing_portal/session_service.rbi +204 -0
- data/rbi/stripe/services/billing_portal_service.rbi +10 -0
- data/rbi/stripe/services/billing_service.rbi +15 -0
- data/rbi/stripe/services/charge_service.rbi +448 -0
- data/rbi/stripe/services/checkout/session_line_item_service.rbi +33 -0
- data/rbi/stripe/services/checkout/session_service.rbi +2614 -0
- data/rbi/stripe/services/checkout_service.rbi +9 -0
- data/rbi/stripe/services/climate/order_service.rbi +142 -0
- data/rbi/stripe/services/climate/product_service.rbi +46 -0
- data/rbi/stripe/services/climate/supplier_service.rbi +46 -0
- data/rbi/stripe/services/climate_service.rbi +11 -0
- data/rbi/stripe/services/confirmation_token_service.rbi +20 -0
- data/rbi/stripe/services/country_spec_service.rbi +44 -0
- data/rbi/stripe/services/coupon_service.rbi +194 -0
- data/rbi/stripe/services/credit_note_line_item_service.rbi +31 -0
- data/rbi/stripe/services/credit_note_preview_lines_service.rbi +167 -0
- data/rbi/stripe/services/credit_note_service.rbi +415 -0
- data/rbi/stripe/services/customer_balance_transaction_service.rbi +92 -0
- data/rbi/stripe/services/customer_cash_balance_service.rbi +45 -0
- data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +44 -0
- data/rbi/stripe/services/customer_funding_instructions_service.rbi +59 -0
- data/rbi/stripe/services/customer_payment_method_service.rbi +57 -0
- data/rbi/stripe/services/customer_payment_source_service.rbi +232 -0
- data/rbi/stripe/services/customer_service.rbi +647 -0
- data/rbi/stripe/services/customer_session_service.rbi +116 -0
- data/rbi/stripe/services/customer_tax_id_service.rbi +70 -0
- data/rbi/stripe/services/dispute_service.rbi +424 -0
- data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +55 -0
- data/rbi/stripe/services/entitlements/feature_service.rbi +107 -0
- data/rbi/stripe/services/entitlements_service.rbi +10 -0
- data/rbi/stripe/services/ephemeral_key_service.rbi +53 -0
- data/rbi/stripe/services/event_service.rbi +83 -0
- data/rbi/stripe/services/exchange_rate_service.rbi +44 -0
- data/rbi/stripe/services/file_link_service.rbi +124 -0
- data/rbi/stripe/services/file_service.rbi +116 -0
- data/rbi/stripe/services/financial_connections/account_owner_service.rbi +42 -0
- data/rbi/stripe/services/financial_connections/account_service.rbi +133 -0
- data/rbi/stripe/services/financial_connections/session_service.rbi +88 -0
- data/rbi/stripe/services/financial_connections/transaction_service.rbi +92 -0
- data/rbi/stripe/services/financial_connections_service.rbi +11 -0
- data/rbi/stripe/services/forwarding/request_service.rbi +134 -0
- data/rbi/stripe/services/forwarding_service.rbi +9 -0
- data/rbi/stripe/services/identity/verification_report_service.rbi +87 -0
- data/rbi/stripe/services/identity/verification_session_service.rbi +323 -0
- data/rbi/stripe/services/identity_service.rbi +10 -0
- data/rbi/stripe/services/invoice_item_service.rbi +366 -0
- data/rbi/stripe/services/invoice_line_item_service.rbi +259 -0
- data/rbi/stripe/services/invoice_payment_service.rbi +71 -0
- data/rbi/stripe/services/invoice_rendering_template_service.rbi +82 -0
- data/rbi/stripe/services/invoice_service.rbi +2981 -0
- data/rbi/stripe/services/issuing/authorization_service.rbi +146 -0
- data/rbi/stripe/services/issuing/card_service.rbi +495 -0
- data/rbi/stripe/services/issuing/cardholder_service.rbi +587 -0
- data/rbi/stripe/services/issuing/dispute_service.rbi +707 -0
- data/rbi/stripe/services/issuing/personalization_design_service.rbi +243 -0
- data/rbi/stripe/services/issuing/physical_bundle_service.rbi +59 -0
- data/rbi/stripe/services/issuing/token_service.rbi +99 -0
- data/rbi/stripe/services/issuing/transaction_service.rbi +105 -0
- data/rbi/stripe/services/issuing_service.rbi +16 -0
- data/rbi/stripe/services/mandate_service.rbi +20 -0
- data/rbi/stripe/services/payment_intent_service.rbi +7659 -0
- data/rbi/stripe/services/payment_link_line_item_service.rbi +31 -0
- data/rbi/stripe/services/payment_link_service.rbi +1352 -0
- data/rbi/stripe/services/payment_method_configuration_service.rbi +2487 -0
- data/rbi/stripe/services/payment_method_domain_service.rbi +112 -0
- data/rbi/stripe/services/payment_method_service.rbi +776 -0
- data/rbi/stripe/services/payout_service.rbi +205 -0
- data/rbi/stripe/services/plan_service.rbi +282 -0
- data/rbi/stripe/services/price_service.rbi +546 -0
- data/rbi/stripe/services/product_feature_service.rbi +67 -0
- data/rbi/stripe/services/product_service.rbi +477 -0
- data/rbi/stripe/services/promotion_code_service.rbi +214 -0
- data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +31 -0
- data/rbi/stripe/services/quote_line_item_service.rbi +31 -0
- data/rbi/stripe/services/quote_service.rbi +686 -0
- data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +85 -0
- data/rbi/stripe/services/radar/value_list_item_service.rbi +109 -0
- data/rbi/stripe/services/radar/value_list_service.rbi +141 -0
- data/rbi/stripe/services/radar_service.rbi +11 -0
- data/rbi/stripe/services/refund_service.rbi +185 -0
- data/rbi/stripe/services/reporting/report_run_service.rbi +135 -0
- data/rbi/stripe/services/reporting/report_type_service.rbi +35 -0
- data/rbi/stripe/services/reporting_service.rbi +10 -0
- data/rbi/stripe/services/review_service.rbi +84 -0
- data/rbi/stripe/services/setup_attempt_service.rbi +65 -0
- data/rbi/stripe/services/setup_intent_service.rbi +3391 -0
- data/rbi/stripe/services/shipping_rate_service.rbi +241 -0
- data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +46 -0
- data/rbi/stripe/services/sigma_service.rbi +9 -0
- data/rbi/stripe/services/source_service.rbi +663 -0
- data/rbi/stripe/services/source_transaction_service.rbi +31 -0
- data/rbi/stripe/services/subscription_item_service.rbi +350 -0
- data/rbi/stripe/services/subscription_schedule_service.rbi +1290 -0
- data/rbi/stripe/services/subscription_service.rbi +1648 -0
- data/rbi/stripe/services/tax/calculation_line_item_service.rbi +33 -0
- data/rbi/stripe/services/tax/calculation_service.rbi +234 -0
- data/rbi/stripe/services/tax/registration_service.rbi +1845 -0
- data/rbi/stripe/services/tax/settings_service.rbi +93 -0
- data/rbi/stripe/services/tax/transaction_line_item_service.rbi +33 -0
- data/rbi/stripe/services/tax/transaction_service.rbi +146 -0
- data/rbi/stripe/services/tax_code_service.rbi +44 -0
- data/rbi/stripe/services/tax_id_service.rbi +110 -0
- data/rbi/stripe/services/tax_rate_service.rbi +185 -0
- data/rbi/stripe/services/tax_service.rbi +12 -0
- data/rbi/stripe/services/terminal/configuration_service.rbi +1118 -0
- data/rbi/stripe/services/terminal/connection_token_service.rbi +25 -0
- data/rbi/stripe/services/terminal/location_service.rbi +182 -0
- data/rbi/stripe/services/terminal/reader_service.rbi +455 -0
- data/rbi/stripe/services/terminal_service.rbi +12 -0
- data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +739 -0
- data/rbi/stripe/services/test_helpers/customer_service.rbi +33 -0
- data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +848 -0
- data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +76 -0
- data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +69 -0
- data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +711 -0
- data/rbi/stripe/services/test_helpers/issuing_service.rbi +14 -0
- data/rbi/stripe/services/test_helpers/refund_service.rbi +22 -0
- data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +93 -0
- data/rbi/stripe/services/test_helpers/terminal_service.rbi +11 -0
- data/rbi/stripe/services/test_helpers/test_clock_service.rbi +90 -0
- data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +64 -0
- data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +125 -0
- data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +125 -0
- data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +87 -0
- data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +87 -0
- data/rbi/stripe/services/test_helpers/treasury_service.rbi +15 -0
- data/rbi/stripe/services/test_helpers_service.rbi +15 -0
- data/rbi/stripe/services/token_service.rbi +1257 -0
- data/rbi/stripe/services/topup_service.rbi +176 -0
- data/rbi/stripe/services/transfer_reversal_service.rbi +101 -0
- data/rbi/stripe/services/transfer_service.rbi +152 -0
- data/rbi/stripe/services/treasury/credit_reversal_service.rbi +84 -0
- data/rbi/stripe/services/treasury/debit_reversal_service.rbi +88 -0
- data/rbi/stripe/services/treasury/financial_account_features_service.rbi +198 -0
- data/rbi/stripe/services/treasury/financial_account_service.rbi +562 -0
- data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +117 -0
- data/rbi/stripe/services/treasury/outbound_payment_service.rbi +304 -0
- data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +157 -0
- data/rbi/stripe/services/treasury/received_credit_service.rbi +72 -0
- data/rbi/stripe/services/treasury/received_debit_service.rbi +59 -0
- data/rbi/stripe/services/treasury/transaction_entry_service.rbi +111 -0
- data/rbi/stripe/services/treasury/transaction_service.rbi +122 -0
- data/rbi/stripe/services/treasury_service.rbi +18 -0
- data/rbi/stripe/services/v1_services.rbi +77 -0
- data/rbi/stripe/services/v2/billing/meter_event_adjustment_service.rbi +39 -0
- data/rbi/stripe/services/v2/billing/meter_event_service.rbi +42 -0
- data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +18 -0
- data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +55 -0
- data/rbi/stripe/services/v2/billing_service.rbi +14 -0
- data/rbi/stripe/services/v2/core/event_destination_service.rbi +192 -0
- data/rbi/stripe/services/v2/core/event_service.rbi +36 -0
- data/rbi/stripe/services/v2/core_service.rbi +12 -0
- data/rbi/stripe/services/v2_services.rbi +10 -0
- data/rbi/stripe/services/webhook_endpoint_service.rbi +129 -0
- data/stripe.gemspec +10 -7
- metadata +599 -18
- data/lib/stripe/resources/bitcoin_receiver.rb +0 -24
- data/lib/stripe/resources/bitcoin_transaction.rb +0 -16
- data/lib/stripe/resources/issuing/card_details.rb +0 -9
- data/lib/stripe/resources/order.rb +0 -33
- data/lib/stripe/resources/order_return.rb +0 -10
- data/lib/stripe/resources/recipient.rb +0 -14
- data/lib/stripe/resources/sku.rb +0 -13
- data/lib/stripe/resources/three_d_secure.rb +0 -14
@@ -25,26 +25,11 @@ module Stripe
|
|
25
25
|
# If `.logger` is set, the value of `.log_level` is ignored. The decision on
|
26
26
|
# what levels to print is entirely deferred to the logger.
|
27
27
|
class StripeConfiguration
|
28
|
-
attr_accessor :api_key
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
attr_accessor :stripe_account
|
34
|
-
|
35
|
-
attr_reader :api_base
|
36
|
-
attr_reader :uploads_base
|
37
|
-
attr_reader :connect_base
|
38
|
-
attr_reader :ca_bundle_path
|
39
|
-
attr_reader :log_level
|
40
|
-
attr_reader :initial_network_retry_delay
|
41
|
-
attr_reader :max_network_retries
|
42
|
-
attr_reader :max_network_retry_delay
|
43
|
-
attr_reader :open_timeout
|
44
|
-
attr_reader :read_timeout
|
45
|
-
attr_reader :write_timeout
|
46
|
-
attr_reader :proxy
|
47
|
-
attr_reader :verify_ssl_certs
|
28
|
+
attr_accessor :api_key, :api_version, :client_id, :enable_telemetry, :logger, :stripe_account, :stripe_context
|
29
|
+
|
30
|
+
attr_reader :api_base, :uploads_base, :connect_base, :meter_events_base, :base_addresses, :ca_bundle_path,
|
31
|
+
:log_level, :initial_network_retry_delay, :max_network_retries, :max_network_retry_delay,
|
32
|
+
:open_timeout, :read_timeout, :write_timeout, :proxy, :verify_ssl_certs
|
48
33
|
|
49
34
|
def self.setup
|
50
35
|
new.tap do |instance|
|
@@ -52,6 +37,25 @@ module Stripe
|
|
52
37
|
end
|
53
38
|
end
|
54
39
|
|
40
|
+
# Set options to the StripeClient configured options, if valid as a client option and provided
|
41
|
+
# Otherwise, for user configurable global options, set them to the global configuration
|
42
|
+
# For all other options, set them to the StripeConfiguration default value
|
43
|
+
def self.client_init(config_opts)
|
44
|
+
global_config = Stripe.config
|
45
|
+
imported_options = USER_CONFIGURABLE_GLOBAL_OPTIONS - StripeClient::CLIENT_OPTIONS
|
46
|
+
client_config = StripeConfiguration.setup do |instance|
|
47
|
+
imported_options.each do |key|
|
48
|
+
begin
|
49
|
+
instance.public_send("#{key}=", global_config.public_send(key)) if global_config.respond_to?(key)
|
50
|
+
rescue NotImplementedError => e
|
51
|
+
# In Ruby <= 2.5, we can't set write_timeout on Net::HTTP, log an error and continue
|
52
|
+
Util.log_error("Failed to set #{key} on client configuration: #{e}")
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
client_config.reverse_duplicate_merge(config_opts)
|
57
|
+
end
|
58
|
+
|
55
59
|
# Create a new config based off an existing one. This is useful when the
|
56
60
|
# caller wants to override the global configuration
|
57
61
|
def reverse_duplicate_merge(hash)
|
@@ -59,25 +63,32 @@ module Stripe
|
|
59
63
|
hash.each do |option, value|
|
60
64
|
instance.public_send("#{option}=", value)
|
61
65
|
end
|
66
|
+
instance.send("instance_variable_set", "@base_addresses",
|
67
|
+
{ api: instance.api_base, connect: instance.connect_base,
|
68
|
+
files: instance.uploads_base, meter_events: instance.meter_events_base, })
|
62
69
|
end
|
63
70
|
end
|
64
71
|
|
65
72
|
def initialize
|
73
|
+
@api_version = ApiVersion::CURRENT
|
66
74
|
@ca_bundle_path = Stripe::DEFAULT_CA_BUNDLE_PATH
|
67
75
|
@enable_telemetry = true
|
68
76
|
@verify_ssl_certs = true
|
69
77
|
|
70
|
-
@max_network_retries =
|
78
|
+
@max_network_retries = 2
|
71
79
|
@initial_network_retry_delay = 0.5
|
72
|
-
@max_network_retry_delay =
|
80
|
+
@max_network_retry_delay = 5
|
73
81
|
|
74
82
|
@open_timeout = 30
|
75
83
|
@read_timeout = 80
|
76
84
|
@write_timeout = 30
|
77
85
|
|
78
|
-
@api_base =
|
79
|
-
@connect_base =
|
80
|
-
@uploads_base =
|
86
|
+
@api_base = DEFAULT_API_BASE
|
87
|
+
@connect_base = DEFAULT_CONNECT_BASE
|
88
|
+
@uploads_base = DEFAULT_UPLOAD_BASE
|
89
|
+
@meter_events_base = DEFAULT_METER_EVENTS_BASE
|
90
|
+
@base_addresses = { api: @api_base, connect: @connect_base, files: @uploads_base,
|
91
|
+
meter_events: @meter_events_base, }
|
81
92
|
end
|
82
93
|
|
83
94
|
def log_level=(val)
|
@@ -86,13 +97,16 @@ module Stripe
|
|
86
97
|
val = Stripe::LEVEL_DEBUG
|
87
98
|
elsif val == "info"
|
88
99
|
val = Stripe::LEVEL_INFO
|
100
|
+
elsif val == "error"
|
101
|
+
val = Stripe::LEVEL_ERROR
|
89
102
|
end
|
90
103
|
|
91
104
|
levels = [Stripe::LEVEL_INFO, Stripe::LEVEL_DEBUG, Stripe::LEVEL_ERROR]
|
92
105
|
|
93
106
|
if !val.nil? && !levels.include?(val)
|
94
107
|
raise ArgumentError,
|
95
|
-
"log_level should only be set to `nil`, `debug
|
108
|
+
"log_level should only be set to `nil`, `debug`, `info`, " \
|
109
|
+
"or `error`"
|
96
110
|
end
|
97
111
|
@log_level = val
|
98
112
|
end
|
@@ -111,46 +125,53 @@ module Stripe
|
|
111
125
|
|
112
126
|
def open_timeout=(open_timeout)
|
113
127
|
@open_timeout = open_timeout
|
114
|
-
|
128
|
+
APIRequestor.clear_all_connection_managers(config: self)
|
115
129
|
end
|
116
130
|
|
117
131
|
def read_timeout=(read_timeout)
|
118
132
|
@read_timeout = read_timeout
|
119
|
-
|
133
|
+
APIRequestor.clear_all_connection_managers(config: self)
|
120
134
|
end
|
121
135
|
|
122
136
|
def write_timeout=(write_timeout)
|
123
|
-
unless Net::HTTP.instance_methods.include?(:write_timeout=)
|
124
|
-
raise NotImplementedError
|
125
|
-
end
|
137
|
+
raise NotImplementedError unless Net::HTTP.instance_methods.include?(:write_timeout=)
|
126
138
|
|
127
139
|
@write_timeout = write_timeout
|
128
|
-
|
140
|
+
APIRequestor.clear_all_connection_managers(config: self)
|
129
141
|
end
|
130
142
|
|
131
143
|
def proxy=(proxy)
|
132
144
|
@proxy = proxy
|
133
|
-
|
145
|
+
APIRequestor.clear_all_connection_managers(config: self)
|
134
146
|
end
|
135
147
|
|
136
148
|
def verify_ssl_certs=(verify_ssl_certs)
|
137
149
|
@verify_ssl_certs = verify_ssl_certs
|
138
|
-
|
150
|
+
APIRequestor.clear_all_connection_managers(config: self)
|
151
|
+
end
|
152
|
+
|
153
|
+
def meter_events_base=(meter_events_base)
|
154
|
+
@meter_events_base = meter_events_base
|
155
|
+
@base_addresses[:meter_events] = meter_events_base
|
156
|
+
APIRequestor.clear_all_connection_managers(config: self)
|
139
157
|
end
|
140
158
|
|
141
159
|
def uploads_base=(uploads_base)
|
142
160
|
@uploads_base = uploads_base
|
143
|
-
|
161
|
+
@base_addresses[:files] = uploads_base
|
162
|
+
APIRequestor.clear_all_connection_managers(config: self)
|
144
163
|
end
|
145
164
|
|
146
165
|
def connect_base=(connect_base)
|
147
166
|
@connect_base = connect_base
|
148
|
-
|
167
|
+
@base_addresses[:connect] = connect_base
|
168
|
+
APIRequestor.clear_all_connection_managers(config: self)
|
149
169
|
end
|
150
170
|
|
151
171
|
def api_base=(api_base)
|
152
172
|
@api_base = api_base
|
153
|
-
|
173
|
+
@base_addresses[:api] = api_base
|
174
|
+
APIRequestor.clear_all_connection_managers(config: self)
|
154
175
|
end
|
155
176
|
|
156
177
|
def ca_bundle_path=(path)
|
@@ -159,7 +180,7 @@ module Stripe
|
|
159
180
|
# empty this field so a new store is initialized
|
160
181
|
@ca_store = nil
|
161
182
|
|
162
|
-
|
183
|
+
APIRequestor.clear_all_connection_managers(config: self)
|
163
184
|
end
|
164
185
|
|
165
186
|
# A certificate store initialized from the the bundle in #ca_bundle_path and
|
@@ -173,10 +194,10 @@ module Stripe
|
|
173
194
|
# and is itself not thread safe.
|
174
195
|
def ca_store
|
175
196
|
@ca_store ||= begin
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
197
|
+
store = OpenSSL::X509::Store.new
|
198
|
+
store.add_file(ca_bundle_path)
|
199
|
+
store
|
200
|
+
end
|
180
201
|
end
|
181
202
|
|
182
203
|
def enable_telemetry?
|
data/lib/stripe/stripe_object.rb
CHANGED
@@ -4,6 +4,8 @@ module Stripe
|
|
4
4
|
class StripeObject
|
5
5
|
include Enumerable
|
6
6
|
|
7
|
+
attr_reader :last_response
|
8
|
+
|
7
9
|
@@permanent_attributes = Set.new([:id]) # rubocop:disable Style/ClassVars
|
8
10
|
|
9
11
|
# The default :id method is deprecated and isn't useful to us
|
@@ -70,7 +72,8 @@ module Stripe
|
|
70
72
|
@additive_params.include?(name)
|
71
73
|
end
|
72
74
|
|
73
|
-
def initialize(id = nil, opts = {})
|
75
|
+
def initialize(id = nil, opts = {}, api_mode = :v1, requestor = nil)
|
76
|
+
@api_mode = api_mode
|
74
77
|
id, @retrieve_params = Util.normalize_id(id)
|
75
78
|
@opts = Util.normalize_opts(opts)
|
76
79
|
@original_values = {}
|
@@ -80,13 +83,16 @@ module Stripe
|
|
80
83
|
@unsaved_values = Set.new
|
81
84
|
@transient_values = Set.new
|
82
85
|
@values[:id] = id if id
|
86
|
+
@id = id
|
87
|
+
@last_response = nil
|
88
|
+
@requestor = requestor || APIRequestor.active_requestor
|
83
89
|
end
|
84
90
|
|
85
|
-
def self.construct_from(values, opts = {})
|
91
|
+
def self.construct_from(values, opts = {}, last_response = nil, api_mode = :v1, requestor = nil)
|
86
92
|
values = Stripe::Util.symbolize_names(values)
|
87
93
|
|
88
94
|
# work around protected #initialize_from for now
|
89
|
-
new(values[:id]).send(:initialize_from, values, opts)
|
95
|
+
new(values[:id]).send(:initialize_from, values, opts, last_response, api_mode: api_mode, requestor: requestor)
|
90
96
|
end
|
91
97
|
|
92
98
|
# Determines the equality of two Stripe objects. Stripe objects are
|
@@ -148,7 +154,7 @@ module Stripe
|
|
148
154
|
def update_attributes(values, opts = {}, dirty: true)
|
149
155
|
values.each do |k, v|
|
150
156
|
add_accessors([k], values) unless metaclass.method_defined?(k.to_sym)
|
151
|
-
@values[k] = Util.convert_to_stripe_object(v, opts)
|
157
|
+
@values[k] = Util.convert_to_stripe_object(v, opts, api_mode: @api_mode, requestor: @requestor)
|
152
158
|
dirty_value!(@values[k]) if dirty
|
153
159
|
@unsaved_values.add(k)
|
154
160
|
end
|
@@ -217,20 +223,22 @@ module Stripe
|
|
217
223
|
# This allows us to remove certain features that cannot or should not be
|
218
224
|
# serialized.
|
219
225
|
def marshal_dump
|
220
|
-
# The
|
226
|
+
# The APIRequestor instance in @opts is not serializable and is not
|
221
227
|
# really a property of the StripeObject, so we exclude it when
|
222
228
|
# dumping
|
223
229
|
opts = @opts.clone
|
230
|
+
|
231
|
+
# TODO: (major) Remove the :client option. This is not explicitly supported as a user-specified option.
|
224
232
|
opts.delete(:client)
|
225
233
|
[@values, opts]
|
226
234
|
end
|
227
235
|
|
228
236
|
# Implements custom decoding for Ruby's Marshal. Consumes data that's
|
229
237
|
# produced by #marshal_dump.
|
230
|
-
def marshal_load(data)
|
238
|
+
def marshal_load(data, api_mode: :v1)
|
231
239
|
values, opts = data
|
232
|
-
initialize(values[:id])
|
233
|
-
initialize_from(values, opts)
|
240
|
+
initialize(values[:id], api_mode: api_mode)
|
241
|
+
initialize_from(values, opts, api_mode: api_mode, requestor: @requestor)
|
234
242
|
end
|
235
243
|
|
236
244
|
def serialize_params(options = {})
|
@@ -320,15 +328,15 @@ module Stripe
|
|
320
328
|
# Here we swallow that error and issue a warning so at least
|
321
329
|
# the program doesn't crash.
|
322
330
|
warn("WARNING: Unable to remove method `#{method_name}`; " \
|
323
|
-
|
324
|
-
|
331
|
+
"if custom, please consider renaming to a name that doesn't " \
|
332
|
+
"collide with an API property name.")
|
325
333
|
end
|
326
334
|
end
|
327
335
|
end
|
328
336
|
end
|
329
337
|
end
|
330
338
|
|
331
|
-
protected def add_accessors(keys, values)
|
339
|
+
protected def add_accessors(keys, values) # rubocop:todo Metrics/PerceivedComplexity
|
332
340
|
# not available in the #instance_eval below
|
333
341
|
protected_fields = self.class.protected_fields
|
334
342
|
|
@@ -351,17 +359,28 @@ module Stripe
|
|
351
359
|
define_method(:"#{k}=") do |v|
|
352
360
|
if v == ""
|
353
361
|
raise ArgumentError, "You cannot set #{k} to an empty string. " \
|
354
|
-
|
355
|
-
|
362
|
+
"We interpret empty strings as nil in requests. " \
|
363
|
+
"You may set (object).#{k} = nil to delete the property."
|
356
364
|
end
|
357
|
-
@values[k] = Util.convert_to_stripe_object(v, @opts)
|
365
|
+
@values[k] = Util.convert_to_stripe_object(v, @opts, api_mode: @api_mode, requestor: @requestor)
|
358
366
|
dirty_value!(@values[k])
|
359
367
|
@unsaved_values.add(k)
|
360
368
|
end
|
361
369
|
|
362
|
-
if [FalseClass, TrueClass].include?(values[k].class)
|
363
|
-
|
364
|
-
|
370
|
+
define_method(:"#{k}?") { @values[k] } if [FalseClass, TrueClass].include?(values[k].class)
|
371
|
+
end
|
372
|
+
end
|
373
|
+
|
374
|
+
keys.each do |k|
|
375
|
+
if Util.valid_variable_name?(k)
|
376
|
+
instance_variable_set(:"@#{k}", values[k])
|
377
|
+
else
|
378
|
+
Util.log_info(<<~LOG
|
379
|
+
The variable name '#{k}' is not a valid Ruby variable name.
|
380
|
+
Use ["#{k}"] to access this field, skipping instance variable instantiation...
|
381
|
+
LOG
|
382
|
+
)
|
383
|
+
|
365
384
|
end
|
366
385
|
end
|
367
386
|
end
|
@@ -369,7 +388,6 @@ module Stripe
|
|
369
388
|
# Disabling the cop because it's confused by the fact that the methods are
|
370
389
|
# protected, but we do define `#respond_to_missing?` just below. Hopefully
|
371
390
|
# this is fixed in more recent Rubocop versions.
|
372
|
-
# rubocop:disable Style/MissingRespondToMissing
|
373
391
|
protected def method_missing(name, *args)
|
374
392
|
# TODO: only allow setting in updateable classes.
|
375
393
|
if name.to_s.end_with?("=")
|
@@ -405,16 +423,14 @@ module Stripe
|
|
405
423
|
|
406
424
|
raise NoMethodError,
|
407
425
|
e.message + ". HINT: The '#{name}' attribute was set in the " \
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
426
|
+
"past, however. It was then wiped when refreshing the object " \
|
427
|
+
"with the result returned by Stripe's API, probably as a " \
|
428
|
+
"result of a save(). The attributes currently available on " \
|
429
|
+
"this object are: #{@values.keys.join(', ')}"
|
412
430
|
end
|
413
431
|
end
|
414
|
-
# rubocop:enable Style/MissingRespondToMissing
|
415
|
-
|
416
432
|
protected def respond_to_missing?(symbol, include_private = false)
|
417
|
-
@values && @values.key?(symbol) || super
|
433
|
+
(@values && @values.key?(symbol)) || super
|
418
434
|
end
|
419
435
|
|
420
436
|
# Re-initializes the object based on a hash of values (usually one that's
|
@@ -429,13 +445,17 @@ module Stripe
|
|
429
445
|
# * +:opts:+ Options for StripeObject like an API key.
|
430
446
|
# * +:partial:+ Indicates that the re-initialization should not attempt to
|
431
447
|
# remove accessors.
|
432
|
-
protected def initialize_from(values, opts,
|
448
|
+
protected def initialize_from(values, opts, last_response = nil, api_mode:, requestor: nil)
|
449
|
+
@api_mode = api_mode
|
450
|
+
@last_response = last_response
|
451
|
+
@requestor = requestor
|
452
|
+
|
433
453
|
@opts = Util.normalize_opts(opts)
|
434
454
|
|
435
455
|
# the `#send` is here so that we can keep this method private
|
436
|
-
@original_values = self.class.send(:deep_copy, values)
|
456
|
+
@original_values = self.class.send(:deep_copy, values, api_mode: api_mode)
|
437
457
|
|
438
|
-
removed =
|
458
|
+
removed = Set.new(@values.keys - values.keys)
|
439
459
|
added = Set.new(values.keys - @values.keys)
|
440
460
|
|
441
461
|
# Wipe old state before setting new. This is useful for e.g. updating a
|
@@ -460,7 +480,21 @@ module Stripe
|
|
460
480
|
self
|
461
481
|
end
|
462
482
|
|
463
|
-
|
483
|
+
# Should only be for v2 events and lists, for now.
|
484
|
+
protected def _request(method:, path:, base_address:, params: {}, opts: {})
|
485
|
+
req_opts = RequestOptions.extract_opts_from_hash(opts)
|
486
|
+
req_opts = RequestOptions.combine_opts(@opts, req_opts)
|
487
|
+
@requestor.execute_request(
|
488
|
+
method,
|
489
|
+
path,
|
490
|
+
base_address,
|
491
|
+
params: params,
|
492
|
+
opts: req_opts
|
493
|
+
)
|
494
|
+
end
|
495
|
+
|
496
|
+
# rubocop:todo Metrics/PerceivedComplexity
|
497
|
+
protected def serialize_params_value(value, original, unsaved, force, # rubocop:todo Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
|
464
498
|
key: nil)
|
465
499
|
if value.nil?
|
466
500
|
""
|
@@ -494,8 +528,8 @@ module Stripe
|
|
494
528
|
value
|
495
529
|
else
|
496
530
|
raise ArgumentError, "Cannot save property `#{key}` containing " \
|
497
|
-
|
498
|
-
|
531
|
+
"an API resource. It doesn't appear to be persisted and is " \
|
532
|
+
"not marked as `save_with_parent`."
|
499
533
|
end
|
500
534
|
|
501
535
|
elsif value.is_a?(Array)
|
@@ -515,7 +549,7 @@ module Stripe
|
|
515
549
|
# example by appending a new hash onto `additional_owners` for an
|
516
550
|
# account.
|
517
551
|
elsif value.is_a?(Hash)
|
518
|
-
Util.convert_to_stripe_object(value, @opts).serialize_params
|
552
|
+
Util.convert_to_stripe_object(value, @opts, api_mode: @api_mode, requestor: @requestor).serialize_params
|
519
553
|
|
520
554
|
elsif value.is_a?(StripeObject)
|
521
555
|
update = value.serialize_params(force: force)
|
@@ -535,24 +569,26 @@ module Stripe
|
|
535
569
|
value
|
536
570
|
end
|
537
571
|
end
|
572
|
+
# rubocop:enable Metrics/PerceivedComplexity
|
538
573
|
|
539
574
|
# Produces a deep copy of the given object including support for arrays,
|
540
575
|
# hashes, and StripeObjects.
|
541
|
-
private_class_method def self.deep_copy(obj)
|
576
|
+
private_class_method def self.deep_copy(obj, api_mode:)
|
542
577
|
case obj
|
543
578
|
when Array
|
544
|
-
obj.map { |e| deep_copy(e) }
|
579
|
+
obj.map { |e| deep_copy(e, api_mode: api_mode) }
|
545
580
|
when Hash
|
546
581
|
obj.each_with_object({}) do |(k, v), copy|
|
547
|
-
copy[k] = deep_copy(v)
|
582
|
+
copy[k] = deep_copy(v, api_mode: api_mode)
|
548
583
|
copy
|
549
584
|
end
|
550
585
|
when StripeObject
|
551
586
|
obj.class.construct_from(
|
552
|
-
deep_copy(obj.instance_variable_get(:@values)),
|
553
|
-
obj.instance_variable_get(:@opts)
|
554
|
-
|
555
|
-
|
587
|
+
deep_copy(obj.instance_variable_get(:@values), api_mode: api_mode),
|
588
|
+
RequestOptions.copyable(obj.instance_variable_get(:@opts)),
|
589
|
+
nil,
|
590
|
+
api_mode,
|
591
|
+
obj.instance_variable_get(:@requestor)
|
556
592
|
)
|
557
593
|
else
|
558
594
|
obj
|
@@ -41,9 +41,7 @@ module Stripe
|
|
41
41
|
|
42
42
|
def [](name)
|
43
43
|
values = @hash[name.downcase]
|
44
|
-
if values && values.count > 1
|
45
|
-
warn("Duplicate header values for `#{name}`; returning only first")
|
46
|
-
end
|
44
|
+
warn("Duplicate header values for `#{name}`; returning only first") if values && values.count > 1
|
47
45
|
values ? values.first : nil
|
48
46
|
end
|
49
47
|
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# typed: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
class StripeService
|
6
|
+
# Initializes a new StripeService
|
7
|
+
def initialize(requestor)
|
8
|
+
@requestor = requestor
|
9
|
+
end
|
10
|
+
|
11
|
+
def request(method:, path:, base_address:, params: {}, opts: {})
|
12
|
+
@requestor.execute_request(
|
13
|
+
method,
|
14
|
+
path,
|
15
|
+
base_address,
|
16
|
+
params: params,
|
17
|
+
opts: RequestOptions.extract_opts_from_hash(opts)
|
18
|
+
)
|
19
|
+
end
|
20
|
+
|
21
|
+
def request_stream(method:, path:, base_address:, params: {}, opts: {}, &read_body_chunk_block)
|
22
|
+
@requestor.execute_request_stream(
|
23
|
+
method,
|
24
|
+
path,
|
25
|
+
base_address,
|
26
|
+
params: params,
|
27
|
+
opts: RequestOptions.extract_opts_from_hash(opts),
|
28
|
+
&read_body_chunk_block
|
29
|
+
)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Stripe
|
4
|
+
class EventReasonRequest
|
5
|
+
attr_reader :id, :idempotency_key
|
6
|
+
|
7
|
+
def initialize(event_reason_request_payload = {})
|
8
|
+
@id = event_reason_request_payload[:id]
|
9
|
+
@idempotency_key = event_reason_request_payload[:idempotency_key]
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
class EventReason
|
14
|
+
attr_reader :type, :request
|
15
|
+
|
16
|
+
def initialize(event_reason_payload = {})
|
17
|
+
@type = event_reason_payload[:type]
|
18
|
+
@request = EventReasonRequest.new(event_reason_payload[:request])
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
class ThinEvent
|
23
|
+
attr_reader :id, :type, :created, :context, :related_object, :livemode, :reason
|
24
|
+
|
25
|
+
def initialize(event_payload = {})
|
26
|
+
@id = event_payload[:id]
|
27
|
+
@type = event_payload[:type]
|
28
|
+
@created = event_payload[:created]
|
29
|
+
@context = event_payload[:context]
|
30
|
+
@livemode = event_payload[:livemode]
|
31
|
+
@related_object = event_payload[:related_object]
|
32
|
+
return if event_payload[:reason].nil?
|
33
|
+
|
34
|
+
@reason = EventReason.new(event_payload[:reason])
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|