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
data/lib/stripe/api_resource.rb
CHANGED
@@ -11,11 +11,26 @@ module Stripe
|
|
11
11
|
# for example, where this is allowed.
|
12
12
|
attr_accessor :save_with_parent
|
13
13
|
|
14
|
+
# TODO: (major) Remove OBJECT_NAME and stop using const_get here
|
15
|
+
# This is a workaround to avoid breaking users who have defined their own
|
16
|
+
# APIResource subclasses with a custom OBJECT_NAME. We should never fallback
|
17
|
+
# on this case otherwise.
|
18
|
+
OBJECT_NAME = ""
|
19
|
+
def self.object_name
|
20
|
+
const_get(:OBJECT_NAME)
|
21
|
+
end
|
22
|
+
|
14
23
|
def self.class_name
|
15
24
|
name.split("::")[-1]
|
16
25
|
end
|
17
26
|
|
18
27
|
def self.resource_url
|
28
|
+
if name.include?("Stripe::V2")
|
29
|
+
raise NotImplementedError,
|
30
|
+
"V2 resources do not have a defined URL. Please use the StripeClient " \
|
31
|
+
"to make V2 requests"
|
32
|
+
end
|
33
|
+
|
19
34
|
if self == APIResource
|
20
35
|
raise NotImplementedError,
|
21
36
|
"APIResource is an abstract class. You should perform actions " \
|
@@ -23,7 +38,7 @@ module Stripe
|
|
23
38
|
end
|
24
39
|
# Namespaces are separated in object names with periods (.) and in URLs
|
25
40
|
# with forward slashes (/), so replace the former with the latter.
|
26
|
-
"/v1/#{
|
41
|
+
"/v1/#{object_name.downcase.tr('.', '/')}s"
|
27
42
|
end
|
28
43
|
|
29
44
|
# A metaprogramming call that specifies that a field of a resource can be
|
@@ -63,22 +78,7 @@ module Stripe
|
|
63
78
|
# adds a `capture` class method to the resource class that, when called,
|
64
79
|
# will send a POST request to `/v1/<object_name>/capture`.
|
65
80
|
def self.custom_method(name, http_verb:, http_path: nil)
|
66
|
-
|
67
|
-
raise ArgumentError,
|
68
|
-
"Invalid http_verb value: #{http_verb.inspect}. Should be one " \
|
69
|
-
"of :get, :post or :delete."
|
70
|
-
end
|
71
|
-
http_path ||= name.to_s
|
72
|
-
define_singleton_method(name) do |id, params = {}, opts = {}|
|
73
|
-
unless id.is_a?(String)
|
74
|
-
raise ArgumentError,
|
75
|
-
"id should be a string representing the ID of an API resource"
|
76
|
-
end
|
77
|
-
|
78
|
-
url = "#{resource_url}/#{CGI.escape(id)}/#{CGI.escape(http_path)}"
|
79
|
-
resp, opts = execute_resource_request(http_verb, url, params, opts)
|
80
|
-
Util.convert_to_stripe_object(resp.data, opts)
|
81
|
-
end
|
81
|
+
Util.custom_method self, self, name, http_verb, http_path
|
82
82
|
end
|
83
83
|
|
84
84
|
def resource_url
|
@@ -93,33 +93,48 @@ module Stripe
|
|
93
93
|
end
|
94
94
|
|
95
95
|
def refresh
|
96
|
-
|
97
|
-
|
98
|
-
|
96
|
+
if self.class.name.include?("Stripe::V2")
|
97
|
+
raise NotImplementedError,
|
98
|
+
"It is not possible to refresh v2 objects. Please retrieve the object using the StripeClient instead."
|
99
|
+
end
|
100
|
+
|
101
|
+
opts = RequestOptions.extract_opts_from_hash(@retrieve_opts || {})
|
102
|
+
@retrieve_opts = {} # Make sure to clear the retrieve options
|
103
|
+
@obj = @requestor.execute_request_initialize_from(:get, resource_url, :api, self, params: @retrieve_params,
|
104
|
+
opts: opts)
|
105
|
+
initialize_from(
|
106
|
+
@obj.last_response.data,
|
107
|
+
@obj.instance_variable_get(:@opts),
|
108
|
+
@obj.last_response,
|
109
|
+
api_mode: :v1,
|
110
|
+
requestor: @requestor
|
111
|
+
)
|
99
112
|
end
|
100
113
|
|
101
114
|
def self.retrieve(id, opts = {})
|
102
|
-
|
103
|
-
|
115
|
+
if name.include?("Stripe::V2")
|
116
|
+
raise NotImplementedError,
|
117
|
+
"It is not possible to retrieve v2 objects on the resource. Please use the StripeClient instead."
|
118
|
+
end
|
119
|
+
|
120
|
+
instance = new(id)
|
121
|
+
# Explicitly send options for the retrieve call, to preserve custom headers
|
122
|
+
# This is so we can pass custom headers from this static function
|
123
|
+
# to the instance variable method call
|
124
|
+
# The custom headers will be cleaned up with the rest of the RequestOptions
|
125
|
+
instance.instance_variable_set(:@retrieve_opts, Util.normalize_opts(opts))
|
104
126
|
instance.refresh
|
105
|
-
instance
|
106
127
|
end
|
107
128
|
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
# If we're getting back this thing, update; otherwise, instantiate.
|
112
|
-
if Util.object_name_matches_class?(resp.data[:object], self.class)
|
113
|
-
initialize_from(resp.data, opts)
|
114
|
-
else
|
115
|
-
Util.convert_to_stripe_object(resp.data, opts)
|
116
|
-
end
|
129
|
+
def request_stripe_object(method:, path:, params:, base_address: :api, opts: {})
|
130
|
+
APIRequestor.active_requestor.execute_request_initialize_from(method, path, base_address, self,
|
131
|
+
params: params, opts: opts)
|
117
132
|
end
|
118
133
|
|
119
|
-
protected def request_stream(method:, path:, params:, opts: {},
|
134
|
+
protected def request_stream(method:, path:, params:, base_address: :api, opts: {},
|
120
135
|
&read_body_chunk_block)
|
121
136
|
resp, = execute_resource_request_stream(
|
122
|
-
method, path, params, opts, &read_body_chunk_block
|
137
|
+
method, path, base_address, params, opts, &read_body_chunk_block
|
123
138
|
)
|
124
139
|
resp
|
125
140
|
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Stripe
|
4
|
+
# The base class for nested TestHelpers classes in resource objects.
|
5
|
+
# The APIResourceTestHelpers handles URL generation and custom method
|
6
|
+
# support for test-helper methods.
|
7
|
+
#
|
8
|
+
# class MyAPIResource < APIResource
|
9
|
+
# class TestHelpers < APIResourceTestHelpers
|
10
|
+
class APIResourceTestHelpers
|
11
|
+
include Stripe::APIOperations::Request
|
12
|
+
|
13
|
+
def initialize(resource)
|
14
|
+
@resource = resource
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.resource_class
|
18
|
+
nil
|
19
|
+
end
|
20
|
+
|
21
|
+
# Adds a custom method to a test helper. This is used to add support for
|
22
|
+
# non-CRUDL API requests, e.g. capturing charges. custom_method takes the
|
23
|
+
# following parameters:
|
24
|
+
# - name: the name of the custom method to create (as a symbol)
|
25
|
+
# - http_verb: the HTTP verb for the API request (:get, :post, or :delete)
|
26
|
+
# - http_path: the path to append to the resource's URL. If not provided,
|
27
|
+
# the name is used as the path
|
28
|
+
#
|
29
|
+
# For example, this call:
|
30
|
+
# custom_method :capture, http_verb: post
|
31
|
+
# adds a `capture` class method to the resource class that, when called,
|
32
|
+
# will send a POST request to `/v1/<object_name>/capture`.
|
33
|
+
def self.custom_method(name, http_verb:, http_path: nil)
|
34
|
+
Util.custom_method resource_class, self, name, http_verb, http_path
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.resource_url
|
38
|
+
"/v1/test_helpers/" \
|
39
|
+
"#{resource_class.object_name.downcase.tr('.', '/')}s"
|
40
|
+
end
|
41
|
+
|
42
|
+
def resource_url
|
43
|
+
unless (id = @resource["id"])
|
44
|
+
raise InvalidRequestError.new(
|
45
|
+
"Could not determine which URL to request: #{self.class} instance " \
|
46
|
+
"has invalid ID: #{id.inspect}",
|
47
|
+
"id"
|
48
|
+
)
|
49
|
+
end
|
50
|
+
"#{self.class.resource_url}/#{CGI.escape(id)}"
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -12,7 +12,7 @@ module Stripe
|
|
12
12
|
class ConnectionManager
|
13
13
|
# Timestamp (in seconds procured from the system's monotonic clock)
|
14
14
|
# indicating when the connection manager last made a request. This is used
|
15
|
-
# by `
|
15
|
+
# by `APIRequestor` to determine whether a connection manager should be
|
16
16
|
# garbage collected or not.
|
17
17
|
attr_reader :last_used
|
18
18
|
attr_reader :config
|
@@ -36,9 +36,7 @@ module Stripe
|
|
36
36
|
# clears them from internal tracking.
|
37
37
|
def clear
|
38
38
|
@mutex.synchronize do
|
39
|
-
@active_connections.
|
40
|
-
connection.finish
|
41
|
-
end
|
39
|
+
@active_connections.each_value(&:finish)
|
42
40
|
@active_connections = {}
|
43
41
|
end
|
44
42
|
end
|
@@ -103,13 +101,34 @@ module Stripe
|
|
103
101
|
headers
|
104
102
|
)
|
105
103
|
|
106
|
-
|
104
|
+
Util.log_debug("ConnectionManager starting request",
|
105
|
+
method_name: method_name,
|
106
|
+
path: path,
|
107
|
+
process_id: Process.pid,
|
108
|
+
thread_object_id: Thread.current.object_id,
|
109
|
+
connection_manager_object_id: object_id,
|
110
|
+
connection_object_id: connection.object_id,
|
111
|
+
log_timestamp: Util.monotonic_time)
|
112
|
+
|
113
|
+
resp = @mutex.synchronize do
|
107
114
|
# The block parameter is special here. If a block is provided, the block
|
108
115
|
# is invoked with the Net::HTTPResponse. However, the body will not have
|
109
116
|
# been read yet in the block, and can be streamed by calling
|
110
117
|
# HTTPResponse#read_body.
|
111
118
|
connection.request(request, body, &block)
|
112
119
|
end
|
120
|
+
|
121
|
+
Util.log_debug("ConnectionManager request complete",
|
122
|
+
method_name: method_name,
|
123
|
+
path: path,
|
124
|
+
process_id: Process.pid,
|
125
|
+
thread_object_id: Thread.current.object_id,
|
126
|
+
connection_manager_object_id: object_id,
|
127
|
+
connection_object_id: connection.object_id,
|
128
|
+
response_object_id: resp.object_id,
|
129
|
+
log_timestamp: Util.monotonic_time)
|
130
|
+
|
131
|
+
resp
|
113
132
|
end
|
114
133
|
|
115
134
|
#
|
@@ -136,9 +155,7 @@ module Stripe
|
|
136
155
|
|
137
156
|
connection.open_timeout = config.open_timeout
|
138
157
|
connection.read_timeout = config.read_timeout
|
139
|
-
if connection.respond_to?(:write_timeout=)
|
140
|
-
connection.write_timeout = config.write_timeout
|
141
|
-
end
|
158
|
+
connection.write_timeout = config.write_timeout if connection.respond_to?(:write_timeout=)
|
142
159
|
|
143
160
|
connection.use_ssl = uri.scheme == "https"
|
144
161
|
|
@@ -171,9 +188,9 @@ module Stripe
|
|
171
188
|
|
172
189
|
@verify_ssl_warned = true
|
173
190
|
warn("WARNING: Running without SSL cert verification. " \
|
174
|
-
|
175
|
-
|
176
|
-
|
191
|
+
"You should never do this in production. " \
|
192
|
+
"Execute `Stripe.verify_ssl_certs = true` to enable " \
|
193
|
+
"verification.")
|
177
194
|
end
|
178
195
|
end
|
179
196
|
end
|
data/lib/stripe/errors.rb
CHANGED
@@ -4,22 +4,14 @@ module Stripe
|
|
4
4
|
# StripeError is the base error from which all other more specific Stripe
|
5
5
|
# errors derive.
|
6
6
|
class StripeError < StandardError
|
7
|
-
attr_reader :message
|
7
|
+
attr_reader :message, :code, :error, :http_body, :http_headers, :http_status, :json_body, :request_id
|
8
8
|
|
9
9
|
# Response contains a StripeResponse object that has some basic information
|
10
10
|
# about the response that conveyed the error.
|
11
|
-
attr_accessor :response
|
12
|
-
|
13
|
-
attr_reader :code
|
14
|
-
attr_reader :error
|
15
|
-
attr_reader :http_body
|
16
|
-
attr_reader :http_headers
|
17
|
-
attr_reader :http_status
|
18
|
-
attr_reader :json_body # equivalent to #data
|
19
|
-
attr_reader :request_id
|
11
|
+
attr_accessor :response # equivalent to #data
|
20
12
|
|
21
13
|
# Initializes a StripeError.
|
22
|
-
def initialize(message = nil, http_status: nil, http_body: nil,
|
14
|
+
def initialize(message = nil, http_status: nil, http_body: nil, # rubocop:todo Lint/MissingSuper
|
23
15
|
json_body: nil, http_headers: nil, code: nil)
|
24
16
|
@message = message
|
25
17
|
@http_status = http_status
|
@@ -35,14 +27,8 @@ module Stripe
|
|
35
27
|
def construct_error_object
|
36
28
|
return nil if @json_body.nil? || !@json_body.key?(:error)
|
37
29
|
|
38
|
-
ErrorObject
|
39
|
-
|
40
|
-
|
41
|
-
# Whether the error was the result of an idempotent replay, meaning that it
|
42
|
-
# originally occurred on a previous request and is being replayed back
|
43
|
-
# because the user sent the same idempotency key for this one.
|
44
|
-
def idempotent_replayed?
|
45
|
-
@idempotent_replayed
|
30
|
+
# ErrorObject is shared between v1 and v2, so use original object_classes to find
|
31
|
+
ErrorObject.construct_from(@json_body[:error], {}, nil, :v1)
|
46
32
|
end
|
47
33
|
|
48
34
|
def to_s
|
@@ -138,7 +124,7 @@ module Stripe
|
|
138
124
|
def construct_error_object
|
139
125
|
return nil if @json_body.nil?
|
140
126
|
|
141
|
-
OAuthErrorObject.construct_from(@json_body)
|
127
|
+
OAuthErrorObject.construct_from(@json_body, {}, nil, :v1)
|
142
128
|
end
|
143
129
|
end
|
144
130
|
|
@@ -174,4 +160,9 @@ module Stripe
|
|
174
160
|
class UnsupportedResponseTypeError < OAuthError
|
175
161
|
end
|
176
162
|
end
|
163
|
+
|
164
|
+
# class definitions: The beginning of the section generated from our OpenAPI spec
|
165
|
+
class TemporarySessionExpiredError < StripeError
|
166
|
+
end
|
167
|
+
# class definitions: The end of the section generated from our OpenAPI spec
|
177
168
|
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Stripe
|
4
|
+
module EventTypes
|
5
|
+
def self.thin_event_names_to_classes
|
6
|
+
{
|
7
|
+
# The beginning of the section generated from our OpenAPI spec
|
8
|
+
V1BillingMeterErrorReportTriggeredEvent.lookup_type => V1BillingMeterErrorReportTriggeredEvent,
|
9
|
+
V1BillingMeterNoMeterFoundEvent.lookup_type => V1BillingMeterNoMeterFoundEvent,
|
10
|
+
V2CoreEventDestinationPingEvent.lookup_type => V2CoreEventDestinationPingEvent,
|
11
|
+
# The end of the section generated from our OpenAPI spec
|
12
|
+
}
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
# Occurs when a Meter has invalid async usage events.
|
6
|
+
class V1BillingMeterErrorReportTriggeredEvent < Stripe::V2::Event
|
7
|
+
def self.lookup_type
|
8
|
+
"v1.billing.meter.error_report_triggered"
|
9
|
+
end
|
10
|
+
# There is additional data present for this event, accessible with the `data` property.
|
11
|
+
# See the Stripe API docs for more information.
|
12
|
+
|
13
|
+
# Retrieves the related object from the API. Make an API request on every call.
|
14
|
+
def fetch_related_object
|
15
|
+
_request(
|
16
|
+
method: :get,
|
17
|
+
path: related_object.url,
|
18
|
+
base_address: :api,
|
19
|
+
opts: { stripe_account: context }
|
20
|
+
)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
# Occurs when a Meter's id is missing or invalid in async usage events.
|
6
|
+
class V1BillingMeterNoMeterFoundEvent < Stripe::V2::Event
|
7
|
+
def self.lookup_type
|
8
|
+
"v1.billing.meter.no_meter_found"
|
9
|
+
end
|
10
|
+
# There is additional data present for this event, accessible with the `data` property.
|
11
|
+
# See the Stripe API docs for more information.
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
# A ping event used to test the connection to an event destination.
|
6
|
+
class V2CoreEventDestinationPingEvent < Stripe::V2::Event
|
7
|
+
def self.lookup_type
|
8
|
+
"v2.core.event_destination.ping"
|
9
|
+
end
|
10
|
+
|
11
|
+
# Retrieves the related object from the API. Make an API request on every call.
|
12
|
+
def fetch_related_object
|
13
|
+
_request(
|
14
|
+
method: :get,
|
15
|
+
path: related_object.url,
|
16
|
+
base_address: :api,
|
17
|
+
opts: { stripe_account: context }
|
18
|
+
)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -4,8 +4,7 @@ module Stripe
|
|
4
4
|
class Instrumentation
|
5
5
|
# Event emitted on `request_begin` callback.
|
6
6
|
class RequestBeginEvent
|
7
|
-
attr_reader :method
|
8
|
-
attr_reader :path
|
7
|
+
attr_reader :method, :path
|
9
8
|
|
10
9
|
# Arbitrary user-provided data in the form of a Ruby hash that's passed
|
11
10
|
# from subscribers on `request_begin` to subscribers on `request_end`.
|
@@ -27,12 +26,8 @@ module Stripe
|
|
27
26
|
|
28
27
|
# Event emitted on `request_end` callback.
|
29
28
|
class RequestEndEvent
|
30
|
-
attr_reader :duration
|
31
|
-
|
32
|
-
attr_reader :method
|
33
|
-
attr_reader :num_retries
|
34
|
-
attr_reader :path
|
35
|
-
attr_reader :request_id
|
29
|
+
attr_reader :duration, :http_status, :method, :num_retries, :path, :request_id, :response_header, :response_body,
|
30
|
+
:request_header, :request_body
|
36
31
|
|
37
32
|
# Arbitrary user-provided data in the form of a Ruby hash that's passed
|
38
33
|
# from subscribers on `request_begin` to subscribers on `request_end`.
|
@@ -40,19 +35,46 @@ module Stripe
|
|
40
35
|
# in `request_end`.
|
41
36
|
attr_reader :user_data
|
42
37
|
|
43
|
-
def initialize(
|
44
|
-
|
45
|
-
@duration = duration
|
46
|
-
@http_status = http_status
|
47
|
-
@method = method
|
38
|
+
def initialize(request_context:, response_context:,
|
39
|
+
num_retries:, user_data: nil)
|
40
|
+
@duration = request_context.duration
|
41
|
+
@http_status = response_context.http_status
|
42
|
+
@method = request_context.method
|
48
43
|
@num_retries = num_retries
|
49
|
-
@path = path
|
50
|
-
@request_id = request_id
|
44
|
+
@path = request_context.path
|
45
|
+
@request_id = request_context.request_id
|
51
46
|
@user_data = user_data
|
47
|
+
@response_header = response_context.header
|
48
|
+
@response_body = response_context.body
|
49
|
+
@request_header = request_context.header
|
50
|
+
@request_body = request_context.body
|
52
51
|
freeze
|
53
52
|
end
|
54
53
|
end
|
55
54
|
|
55
|
+
class RequestContext
|
56
|
+
attr_reader :duration, :method, :path, :request_id, :body, :header
|
57
|
+
|
58
|
+
def initialize(duration:, context:, header:)
|
59
|
+
@duration = duration
|
60
|
+
@method = context.method
|
61
|
+
@path = context.path
|
62
|
+
@request_id = context.request_id
|
63
|
+
@body = context.body
|
64
|
+
@header = header
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
class ResponseContext
|
69
|
+
attr_reader :http_status, :body, :header
|
70
|
+
|
71
|
+
def initialize(http_status:, response:)
|
72
|
+
@http_status = http_status
|
73
|
+
@header = response ? response.to_hash : nil
|
74
|
+
@body = response ? response.body : nil
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
56
78
|
# This class was renamed for consistency. This alias is here for backwards
|
57
79
|
# compatibility.
|
58
80
|
RequestEvent = RequestEndEvent
|
data/lib/stripe/list_object.rb
CHANGED
@@ -8,6 +8,9 @@ module Stripe
|
|
8
8
|
include Stripe::APIOperations::Create
|
9
9
|
|
10
10
|
OBJECT_NAME = "list"
|
11
|
+
def self.object_name
|
12
|
+
"list"
|
13
|
+
end
|
11
14
|
|
12
15
|
# This accessor allows a `ListObject` to inherit various filters that were
|
13
16
|
# given to a predecessor. This allows for things like consistent limits,
|
@@ -18,7 +21,7 @@ module Stripe
|
|
18
21
|
# there isn't a next page in order to replicate the behavior of the API
|
19
22
|
# when it attempts to return a page beyond the last.
|
20
23
|
def self.empty_list(opts = {})
|
21
|
-
ListObject.construct_from({ data: [] }, opts)
|
24
|
+
ListObject.construct_from({ data: [] }, opts, nil, :v1)
|
22
25
|
end
|
23
26
|
|
24
27
|
def initialize(*args)
|
@@ -93,8 +96,7 @@ module Stripe
|
|
93
96
|
def retrieve(id, opts = {})
|
94
97
|
id, retrieve_params = Util.normalize_id(id)
|
95
98
|
url = "#{resource_url}/#{CGI.escape(id)}"
|
96
|
-
|
97
|
-
Util.convert_to_stripe_object(resp.data, opts)
|
99
|
+
execute_resource_request(:get, url, :api, retrieve_params, opts)
|
98
100
|
end
|
99
101
|
|
100
102
|
# Fetches the next page in the resource list (if there is one).
|
@@ -106,22 +106,22 @@ module Stripe
|
|
106
106
|
end
|
107
107
|
|
108
108
|
private def write_field(name, data, filename:)
|
109
|
-
if
|
110
|
-
@body << "\r\n"
|
111
|
-
else
|
109
|
+
if @first_field
|
112
110
|
@first_field = false
|
111
|
+
else
|
112
|
+
@body << "\r\n"
|
113
113
|
end
|
114
114
|
|
115
115
|
@body << "--#{@boundary}\r\n"
|
116
116
|
|
117
117
|
if filename
|
118
|
-
@body << %(Content-Disposition: form-data) +
|
118
|
+
@body << (%(Content-Disposition: form-data) +
|
119
119
|
%(; name="#{escape(name.to_s)}") +
|
120
|
-
%(; filename="#{escape(filename)}"\r\n)
|
120
|
+
%(; filename="#{escape(filename)}"\r\n))
|
121
121
|
@body << %(Content-Type: application/octet-stream\r\n)
|
122
122
|
else
|
123
|
-
@body << %(Content-Disposition: form-data) +
|
124
|
-
%(; name="#{escape(name.to_s)}"\r\n)
|
123
|
+
@body << (%(Content-Disposition: form-data) +
|
124
|
+
%(; name="#{escape(name.to_s)}"\r\n))
|
125
125
|
end
|
126
126
|
|
127
127
|
@body << "\r\n"
|
data/lib/stripe/oauth.rb
CHANGED
@@ -5,12 +5,10 @@ module Stripe
|
|
5
5
|
module OAuthOperations
|
6
6
|
extend APIOperations::Request::ClassMethods
|
7
7
|
|
8
|
-
def self.execute_resource_request(method, url, params, opts)
|
8
|
+
def self.execute_resource_request(method, url, base_address, params, opts)
|
9
9
|
opts = Util.normalize_opts(opts)
|
10
|
-
opts[:client] ||= opts[:client] || StripeClient.active_client
|
11
|
-
opts[:api_base] ||= opts[:client].config.connect_base
|
12
10
|
|
13
|
-
super
|
11
|
+
super
|
14
12
|
end
|
15
13
|
end
|
16
14
|
|
@@ -18,26 +16,25 @@ module Stripe
|
|
18
16
|
client_id = params[:client_id] || Stripe.client_id
|
19
17
|
unless client_id
|
20
18
|
raise AuthenticationError, "No client_id provided. " \
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
19
|
+
'Set your client_id using "Stripe.client_id = <CLIENT-ID>". ' \
|
20
|
+
"You can find your client_ids in your Stripe dashboard at " \
|
21
|
+
"https://dashboard.stripe.com/account/applications/settings, " \
|
22
|
+
"after registering your account as a platform. See " \
|
23
|
+
"https://stripe.com/docs/connect/standalone-accounts for details, " \
|
24
|
+
"or email support@stripe.com if you have any questions."
|
27
25
|
end
|
28
26
|
client_id
|
29
27
|
end
|
30
28
|
|
31
29
|
def self.authorize_url(params = {}, opts = {})
|
32
|
-
|
33
|
-
base = opts[:connect_base] || client.config.connect_base
|
30
|
+
base = opts[:connect_base] || APIRequestor.active_requestor.config.connect_base
|
34
31
|
|
35
32
|
path = "/oauth/authorize"
|
36
33
|
path = "/express" + path if opts[:express]
|
37
34
|
|
38
35
|
params[:client_id] = get_client_id(params)
|
39
36
|
params[:response_type] ||= "code"
|
40
|
-
query = Util.encode_parameters(params)
|
37
|
+
query = Util.encode_parameters(params, :v1)
|
41
38
|
|
42
39
|
"#{base}#{path}?#{query}"
|
43
40
|
end
|
@@ -45,21 +42,17 @@ module Stripe
|
|
45
42
|
def self.token(params = {}, opts = {})
|
46
43
|
opts = Util.normalize_opts(opts)
|
47
44
|
opts[:api_key] = params[:client_secret] if params[:client_secret]
|
48
|
-
|
49
|
-
:post, "/oauth/token", params, opts
|
45
|
+
OAuthOperations.execute_resource_request(
|
46
|
+
:post, "/oauth/token", :connect, params, opts
|
50
47
|
)
|
51
|
-
# This is just going to return a generic StripeObject, but that's okay
|
52
|
-
Util.convert_to_stripe_object(resp.data, opts)
|
53
48
|
end
|
54
49
|
|
55
50
|
def self.deauthorize(params = {}, opts = {})
|
56
51
|
opts = Util.normalize_opts(opts)
|
57
52
|
params[:client_id] = get_client_id(params)
|
58
|
-
|
59
|
-
:post, "/oauth/deauthorize", params, opts
|
53
|
+
OAuthOperations.execute_resource_request(
|
54
|
+
:post, "/oauth/deauthorize", :connect, params, opts
|
60
55
|
)
|
61
|
-
# This is just going to return a generic StripeObject, but that's okay
|
62
|
-
Util.convert_to_stripe_object(resp.data, opts)
|
63
56
|
end
|
64
57
|
end
|
65
58
|
end
|