Skip to content

Releases: stripe/stripe-ruby

v18.1.0-alpha.4

04 Dec 17:43

Choose a tag to compare

v18.1.0-alpha.4 Pre-release
Pre-release
  • #1740 Update generated code for private-preview
    • Add support for event notifications V2IamApiKeyCreatedEvent, V2IamApiKeyDefaultSecretRevealedEvent, V2IamApiKeyExpiredEvent, V2IamApiKeyPermissionsUpdatedEvent, V2IamApiKeyRotatedEvent, and V2IamApiKeyUpdatedEvent
  • #1739 Update generated code for private-preview
    • Add support for check_scanning on AccountSession::Component
    • Add support for client on V2::Core::Event::Reason::Request
    • Add support for stripe_balance_payment on V2::MoneyManagement::ReceivedCredit and V2::MoneyManagement::ReceivedDebit
    • Add support for balance_transfer on V2::MoneyManagement::ReceivedDebit
    • Add support for include on V2::Core::EventListParams and V2::Core::EventRetrieveParams

See the changelog for more details.

v18.1.0-alpha.3

24 Nov 18:12

Choose a tag to compare

v18.1.0-alpha.3 Pre-release
Pre-release
  • #1737 Update generated code for private-preview
    • Add support for new resource ProductCatalog::TrialOffer
    • Add support for create method on resource ProductCatalog::TrialOffer
    • Remove support for amount_subtotal_after_discount on DelegatedCheckout::RequestedSession::LineItemDetail and DelegatedCheckout::RequestedSession::TotalDetail
    • Remove support for amount_total, unit_amount_after_discount, and unit_discount on DelegatedCheckout::RequestedSession::LineItemDetail
    • Add support for amount_cart_discount and amount_items_discount on DelegatedCheckout::RequestedSession::TotalDetail
    • Remove support for amount_discount on DelegatedCheckout::RequestedSession::TotalDetail
    • Add support for payments_orchestration on PaymentIntentCreateParams and PaymentIntent

See the changelog for more details.

v18.0.1

22 Nov 01:04

Choose a tag to compare

  • #1736 Throw a specific error when accessing payment_intent property on Invoice object to ease debugging.

See the changelog for more details.

v18.1.0-alpha.2

20 Nov 23:24

Choose a tag to compare

v18.1.0-alpha.2 Pre-release
Pre-release

This release changes the pinned API version to 2025-11-17.preview.

  • #1734 Update generated code for private-preview
    • Add support for new resources V2::Core::AccountPersonToken, V2::Core::AccountToken, and V2::MoneyManagement::CurrencyConversion
    • Add support for create, list, and retrieve methods on resource V2::MoneyManagement::CurrencyConversion
    • Add support for create and retrieve methods on resources V2::Core::AccountPersonToken and V2::Core::AccountToken
    • Add support for effective_at on InvoiceCreatePreviewParams::ScheduleDetail::Amendment, InvoiceCreatePreviewParams::ScheduleDetail::Phase, QuoteCreateParams::Line, QuoteLine, QuotePreviewSubscriptionSchedule::Phase, QuoteUpdateParams::Line, SubscriptionSchedule::Phase, SubscriptionScheduleAmendParams::Amendment, SubscriptionScheduleCreateParams::Phase, and SubscriptionScheduleUpdateParams::Phase
    • Add support for trial_offer on InvoiceCreatePreviewParams::ScheduleDetail::Amendment::ItemAction::Add, InvoiceCreatePreviewParams::ScheduleDetail::Amendment::ItemAction::Set, InvoiceCreatePreviewParams::ScheduleDetail::Phase::Item, QuoteCreateParams::Line::Action::AddItem, QuoteCreateParams::Line::Action::SetItem, QuoteLine::Action::AddItem, QuoteLine::Action::SetItem, QuotePreviewSubscriptionSchedule::Phase::Item, QuoteUpdateParams::Line::Action::AddItem, QuoteUpdateParams::Line::Action::SetItem, SubscriptionSchedule::Phase::Item, SubscriptionScheduleAmendParams::Amendment::ItemAction::Add, SubscriptionScheduleAmendParams::Amendment::ItemAction::Set, SubscriptionScheduleCreateParams::Phase::Item, and SubscriptionScheduleUpdateParams::Phase::Item
    • Change type of DelegatedCheckout::RequestedSession.amount_subtotal from longInteger to nullable(longInteger)
    • Change type of DelegatedCheckout::RequestedSession.amount_total from longInteger to nullable(longInteger)
    • Add support for amount_discount, amount_subtotal, amount_total, unit_amount_after_discount, and unit_discount on DelegatedCheckout::RequestedSession::LineItemDetail
    • Add support for amount_subtotal_after_discount on DelegatedCheckout::RequestedSession::LineItemDetail and DelegatedCheckout::RequestedSession::TotalDetail
    • Change type of InvoiceCreatePreviewParams::ScheduleDetail.billing_schedules from array(billing_schedules_update_params) to emptyable(array(billing_schedules_update_params))
    • Add support for current_trial on InvoiceCreatePreviewParams::SubscriptionDetail::Item, SubscriptionCreateParams::Item, SubscriptionItemCreateParams, SubscriptionItemUpdateParams, SubscriptionItem, and SubscriptionUpdateParams::Item
    • Change type of QuoteCreateParams::SubscriptionDataOverride.billing_schedules and QuoteCreateParams::SubscriptionDatum.billing_schedules from emptyable(array(billing_schedules_create_specs)) to array(billing_schedules_create_specs)
    • Change type of Quote::SubscriptionDataOverride.billing_schedules and Quote::SubscriptionDatum.billing_schedules from nullable(array(SubscriptionsResourceBillingSchedules)) to array(QuotesResourceSubscriptionDataBillingSchedules)
    • Change type of Quote::SubscriptionDataOverride.phase_effective_at and Quote::SubscriptionDatum.phase_effective_at from nullable(enum('billing_period_start'|'phase_start')) to enum('billing_period_start'|'line_start')
    • Change type of QuotePreviewSubscriptionSchedule::DefaultSetting.phase_effective_at and SubscriptionSchedule::DefaultSetting.phase_effective_at from nullable(enum('billing_period_start'|'phase_start')) to enum('billing_period_start'|'phase_start')
    • Change type of QuotePreviewSubscriptionSchedule.billing_schedules and SubscriptionSchedule.billing_schedules from nullable(array(SubscriptionsResourceBillingSchedules)) to array(SubscriptionsResourceBillingSchedules)
    • Remove support for amendment_start, line_starts_at, and relative on Subscription::BillingSchedule::BillFrom
    • Change type of Subscription::BillingSchedule::BillFrom.computed_timestamp from nullable(DateTime) to DateTime
    • Change type of Subscription::BillingSchedule::BillFrom.type from enum to literal('timestamp')
    • Remove support for amendment_end and line_ends_at on Subscription::BillingSchedule::BillUntil
    • Change type of V2::Billing::ServiceAction::CreditGrant::Amount.monetary, V2::Billing::ServiceAction::CreditGrantPerTenant::Amount.monetary, V2::Billing::ServiceActionCreateParams::CreditGrant::Amount.monetary, and V2::Billing::ServiceActionCreateParams::CreditGrantPerTenant::Amount.monetary from amount to an object
    • Add support for future_requirements on V2::Core::Account
    • Add support for konbini_payments and script_statement_descriptor on V2::Core::Account::Configuration::Merchant, V2::Core::AccountCreateParams::Configuration::Merchant, and V2::Core::AccountUpdateParams::Configuration::Merchant
    • Add support for eur on V2::Core::Account::Configuration::Storer::Capability::HoldsCurrency, V2::Core::AccountCreateParams::Configuration::Storer::Capability::HoldsCurrency, and V2::Core::AccountUpdateParams::Configuration::Storer::Capability::HoldsCurrency
    • Add support for requirements_collector on V2::Core::Account::Default::Responsibility
    • Remove support for collector on V2::Core::Account::Requirement
    • Remove support for v1_event_id on V2::Core::Event
    • Remove support for amount_details and capture_method on V2::Payments::OffSessionPaymentCreateParams and V2::Payments::OffSessionPayment
    • Change type of V2::Payments::OffSessionPayment.amount_capturable from amount to an object
    • Change type of V2::Payments::OffSessionPayment.amount_requested from amount to an object
    • Change type of V2::Payments::OffSessionPaymentCreateParams.amount from amount to an object
    • Change V2::Payments::OffSessionPaymentCreateParams::RetryDetail.retry_strategy to be optional
    • Remove support for destination on V2::Payments::OffSessionPaymentCaptureParams::TransferDatum
    • Change V2::Payments::OffSessionPaymentCaptureParams.amount_to_capture to be optional
    • Add support for created on V2::Core::EventListParams
    • Remove support for gt, gte, lt, and lte on V2::Core::EventListParams
    • Add support for account_token on V2::Core::AccountCreateParams and V2::Core::AccountUpdateParams
    • Add support for person_token on V2::Core::AccountPersonCreateParams and V2::Core::AccountPersonUpdateParams
    • Add support for impacted_requests_percentage on EventsV2CoreHealthApiErrorFiringEvent, EventsV2CoreHealthApiErrorResolvedEvent, EventsV2CoreHealthApiLatencyFiringEvent, EventsV2CoreHealthApiLatencyResolvedEvent, EventsV2CoreHealthPaymentMethodErrorFiringEvent, and EventsV2CoreHealthPaymentMethodErrorResolvedEvent
    • Add support for context and related_object on EventsV2CoreHealthEventGenerationFailureResolvedEvent
    • Remove support for account, livemode, missing_delivery_attempts, and related_object_id on EventsV2CoreHealthEventGenerationFailureResolvedEvent
    • Change type of EventsV2CoreHealthFraudRateIncreasedEvent.realized_fraud_amount from amount to an object
    • Change type of EventsV2CoreHealthIssuingAuthorizationRequestErrorsFiringEvent.approved_amount, EventsV2CoreHealthIssuingAuthorizationRequestErrorsResolvedEvent.approved_amount, EventsV2CoreHealthIssuingAuthorizationRequestTimeoutFiringEvent.approved_amount, and EventsV2CoreHealthIssuingAuthorizationRequestTimeoutResolvedEvent.approved_amount from amount to an object
    • Change type of EventsV2CoreHealthIssuingAuthorizationRequestErrorsFiringEvent.declined_amount, EventsV2CoreHealthIssuingAuthorizationRequestErrorsResolvedEvent.declined_amount, EventsV2CoreHealthIssuingAuthorizationRequestTimeoutFiringEvent.declined_amount, and EventsV2CoreHealthIssuingAuthorizationRequestTimeoutResolvedEvent.declined_amount from amount to an object
    • Add support for thin events V2PaymentsOffSessionPaymentAttemptFailedEvent and V2PaymentsOffSessionPaymentAttemptStartedEvent with related object V2::Payments::OffSessionPayment
    • Remove support for thin event V1AccountUpdatedEvent with related object Account
    • Remove support for thin events V1ApplicationFeeCreatedEvent and V1ApplicationFeeRefundedEvent with related object ApplicationFee
    • Remove support for thin events V1BillingPortalConfigurationCreatedEvent and V1BillingPortalConfigurationUpdatedEvent with related object BillingPortal::Configuration
    • Remove support for thin event V1CapabilityUpdatedEvent with related object Capability
    • Remove support for thin events V1ChargeCapturedEvent, V1ChargeExpiredEvent, V1ChargeFailedEvent, V1ChargePendingEvent, V1ChargeRefundedEvent, V1ChargeSucceededEvent, and V1ChargeUpdatedEvent with related object Charge
    • Remove support for thin events V1ChargeDisputeClosedEvent, V1ChargeDisputeCreatedEvent, V1ChargeDisputeFundsReinstatedEvent, V1ChargeDisputeFundsWithdrawnEvent, and V1ChargeDisputeUpdatedEvent with related object Dispute
    • Remove support for thin events V1ChargeRefundUpdatedEvent, V1RefundCreatedEvent, V1RefundFailedEvent, and V1RefundUpdatedEvent with related object Refund
    • Remove support for thin events V1CheckoutSessionAsyncPaymentFailedEvent, V1CheckoutSessionAsyncPaymentSucceededEvent, V1CheckoutSessionCompletedEvent, and V1CheckoutSessionExpiredEvent with related object Checkout::Session
    • Remove support for thin events V1ClimateOrderCanceledEvent, V1ClimateOrderCreatedEvent, V1ClimateOrderDelayedEvent, V1ClimateOrderDeliveredEvent, and V1ClimateOrderProductSubstitutedEvent with related object Climate::Order
    • Remove support for thin events `V1Cl...
Read more

v18.1.0-beta.1

18 Nov 19:22

Choose a tag to compare

v18.1.0-beta.1 Pre-release
Pre-release

This release changes the pinned API version to 2025-11-17.preview.

  • #1722 Update generated code for beta
    • Add support for new resources V2::Core::AccountPersonToken and V2::Core::AccountToken
    • Remove support for resource V2::Payments::OffSessionPayment
    • Add support for create and retrieve methods on resources V2::Core::AccountPersonToken and V2::Core::AccountToken
    • Remove support for cancel, capture, create, list, and retrieve methods on resource V2::Payments::OffSessionPayment
    • Change Tax::Association.tax_transaction_attempts to be required
    • Add support for specified_commercial_transactions_act_url on Account::BusinessProfile, AccountCreateParams::BusinessProfile, and AccountUpdateParams::BusinessProfile
    • Add support for paypay_payments on Account::Setting, AccountCreateParams::Setting, and AccountUpdateParams::Setting
    • Change type of Billing::Analytics::MeterUsageRetrieveParams::Meter.dimension_filters from string to array(string)
    • Change type of Billing::Analytics::MeterUsageRetrieveParams::Meter.tenant_filters from string to array(string)
    • Add support for car_rental_data, flight_data, and lodging_data on ChargeCaptureParams::PaymentDetail, ChargeUpdateParams::PaymentDetail, PaymentIntentCaptureParams::PaymentDetail, PaymentIntentConfirmParams::PaymentDetail, PaymentIntentCreateParams::PaymentDetail, and PaymentIntentUpdateParams::PaymentDetail
    • Add support for supplementary_purchase_data on OrderCreateParams::Payment::Setting::PaymentMethodOption::Klarna, OrderUpdateParams::Payment::Setting::PaymentMethodOption::Klarna, PaymentIntentConfirmParams::PaymentMethodOption::Klarna, PaymentIntentCreateParams::PaymentMethodOption::Klarna, and PaymentIntentUpdateParams::PaymentMethodOption::Klarna
    • Add support for allow_redisplay and customer_account on PaymentMethodListParams
    • Add support for future_requirements on V2::Core::Account
    • Add support for konbini_payments and script_statement_descriptor on V2::Core::Account::Configuration::Merchant, V2::Core::AccountCreateParams::Configuration::Merchant, and V2::Core::AccountUpdateParams::Configuration::Merchant
    • Add support for eur on V2::Core::Account::Configuration::Storer::Capability::HoldsCurrency, V2::Core::AccountCreateParams::Configuration::Storer::Capability::HoldsCurrency, and V2::Core::AccountUpdateParams::Configuration::Storer::Capability::HoldsCurrency
    • Add support for requirements_collector on V2::Core::Account::Default::Responsibility
    • Remove support for collector on V2::Core::Account::Requirement
    • Add support for changes on V2::Core::Event
    • Add support for account_token on V2::Core::AccountCreateParams and V2::Core::AccountUpdateParams
    • Add support for person_token on V2::Core::AccountPersonCreateParams and V2::Core::AccountPersonUpdateParams
    • Add support for changes on V2::Core::Event
    • Add support for thin event V2CoreHealthEventGenerationFailureResolvedEvent
    • Remove support for thin events V2PaymentsOffSessionPaymentAuthorizationAttemptFailedEvent, V2PaymentsOffSessionPaymentAuthorizationAttemptStartedEvent, V2PaymentsOffSessionPaymentCanceledEvent, V2PaymentsOffSessionPaymentCreatedEvent, V2PaymentsOffSessionPaymentFailedEvent, V2PaymentsOffSessionPaymentRequiresCaptureEvent, and V2PaymentsOffSessionPaymentSucceededEvent with related object V2::Payments::OffSessionPayment

See the changelog for more details.

v18.1.0-alpha.1

18 Nov 19:47

Choose a tag to compare

v18.1.0-alpha.1 Pre-release
Pre-release

This release changes the pinned API version to 2025-11-17.preview.

  • #1731 Update generated code for private-preview
    • Add support for billing_schedules_actions on InvoiceCreatePreviewParams::ScheduleDetail::Amendment and SubscriptionScheduleAmendParams::Amendment
  • #1730 Update generated code for private-preview
    • Add support for new resources BalanceTransfer and Radar::AccountEvaluation
    • Add support for create method on resource BalanceTransfer
    • Add support for create, retrieve, and update methods on resource Radar::AccountEvaluation
    • Change Tax::Association.tax_transaction_attempts to be required
    • Add support for specified_commercial_transactions_act_url on Account::BusinessProfile, AccountCreateParams::BusinessProfile, and AccountUpdateParams::BusinessProfile
    • Add support for paypay_payments on Account::Setting, AccountCreateParams::Setting, and AccountUpdateParams::Setting
    • Change type of Billing::Analytics::MeterUsageRetrieveParams::Meter.dimension_filters from string to array(string)
    • Change type of Billing::Analytics::MeterUsageRetrieveParams::Meter.tenant_filters from string to array(string)
    • Add support for payment_method_configuration on BillingPortal::Configuration::Feature::PaymentMethodUpdate
    • Add support for car_rental_data, flight_data, and lodging_data on ChargeCaptureParams::PaymentDetail, ChargeUpdateParams::PaymentDetail, PaymentIntentCaptureParams::PaymentDetail, PaymentIntentConfirmParams::PaymentDetail, PaymentIntentCreateParams::PaymentDetail, and PaymentIntentUpdateParams::PaymentDetail
    • Add support for transaction_id on Charge::PaymentMethodDetail::Ideal, PaymentAttemptRecord::PaymentMethodDetail::Ideal, and PaymentRecord::PaymentMethodDetail::Ideal
    • Add support for created on CustomerCustomerBalanceTransactionListParams and InvoicePaymentListParams
    • Add support for account_numbers on FinancialConnections::Account
    • Change type of FinancialConnections::Session.client_secret from string to nullable(string)
    • Add support for fraud_risk on Issuing::AuthorizationCreateParams::RiskAssessment
    • Add support for latest_fraud_warning on Issuing::Card
    • Add support for supplementary_purchase_data on OrderCreateParams::Payment::Setting::PaymentMethodOption::Klarna, OrderUpdateParams::Payment::Setting::PaymentMethodOption::Klarna, PaymentIntentConfirmParams::PaymentMethodOption::Klarna, PaymentIntentCreateParams::PaymentMethodOption::Klarna, and PaymentIntentUpdateParams::PaymentMethodOption::Klarna
    • Add support for capture_method on PaymentIntent::PaymentMethodOption::CardPresent, PaymentIntentConfirmParams::PaymentMethodOption::CardPresent, PaymentIntentCreateParams::PaymentMethodOption::CardPresent, and PaymentIntentUpdateParams::PaymentMethodOption::CardPresent
    • Add support for allow_redisplay and customer_account on PaymentMethodListParams
    • Add support for mb_way and twint on Refund::DestinationDetail
    • Change type of SubscriptionScheduleUpdateParams.billing_schedules from array(billing_schedules_update_params) to emptyable(array(billing_schedules_update_params))

See the changelog for more details.

v18.0.0

18 Nov 18:49

Choose a tag to compare

This release changes the pinned API version to 2025-11-17.clover.

  • #1729 Update generated code
    • ⚠️ Remove support for gt, gte, lt, and lte on V2::Core::EventListParams in favor of created.
  • #1727 Update v2 array parameter serialization to use indexed format
    • Retrieve and List calls for /v2 endpoints now use indexed format (e.g., ?include[0]=foo&include[1]=bar) instead of repeated parameter format (e.g., ?include=foo&include=bar) when communicating with the Stripe API. This may break any unit tests that expect the latter behavior when setting up a mock server. Instead, they should now expect the former.
  • #1725 Update generated code
    • Add support for new resources Tax::Association and Terminal::OnboardingLink
    • Add support for find method on resource Tax::Association
    • Add support for create method on resource Terminal::OnboardingLink
    • Add support for payment_method_configuration on BillingPortal::Configuration::Feature::PaymentMethodUpdate
    • Add support for transaction_id on Charge::PaymentMethodDetail::Ideal, PaymentAttemptRecord::PaymentMethodDetail::Ideal, and PaymentRecord::PaymentMethodDetail::Ideal
    • Add support for created on CustomerCustomerBalanceTransactionListParams and InvoicePaymentListParams
    • Add support for account_numbers on FinancialConnections::Account
    • Change type of FinancialConnections::Session.client_secret from string to nullable(string)
    • Add support for fraud_risk on Issuing::AuthorizationCreateParams::RiskAssessment
    • Add support for latest_fraud_warning on Issuing::Card
    • Add support for hooks on PaymentIntentCaptureParams, PaymentIntentConfirmParams, PaymentIntentCreateParams, PaymentIntentIncrementAuthorizationParams, PaymentIntentUpdateParams, and PaymentIntent
    • Add support for mb_way and twint on Refund::DestinationDetail

See the changelog for more details.

v17.3.0-alpha.2

13 Nov 17:39

Choose a tag to compare

v17.3.0-alpha.2 Pre-release
Pre-release

This release changes the pinned API version to 2025-10-29.preview.

  • #1728 Update generated code for private-preview
    • Add support for new resource Issuing::Program
    • Add support for create, list, retrieve, and update methods on resource Issuing::Program
    • Add support for schedule on Discount
    • Add support for applicable_fees on DelegatedCheckout::RequestedSession::TotalDetail
    • Add support for schedule_details on Invoice::Parent, InvoiceItem::Parent, InvoiceLineItem::Parent, and QuotePreviewInvoice::Parent
    • Add support for billing_schedules on InvoiceCreatePreviewParams::ScheduleDetail, QuotePreviewSubscriptionSchedule, SubscriptionScheduleCreateParams, SubscriptionScheduleUpdateParams, and SubscriptionSchedule
    • Add support for latest_invoice on QuotePreviewSubscriptionSchedule and SubscriptionSchedule
    • Add support for phase_effective_at on QuotePreviewSubscriptionSchedule::DefaultSetting, SubscriptionSchedule::DefaultSetting, SubscriptionScheduleCreateParams::DefaultSetting, and SubscriptionScheduleUpdateParams::DefaultSetting
  • #1723 Update generated code for private-preview
    • Remove support for resource V2::Tax::AutomaticRule
    • Remove support for create, deactivate, find, retrieve, and update methods on resource V2::Tax::AutomaticRule
    • Add support for self_reported_income and self_reported_monthly_housing_payment on AccountCreateParams::Individual, AccountPersonCreateParams, AccountPersonUpdateParams, AccountUpdateParams::Individual, Person, TokenCreateParams::Account::Individual, and TokenCreateParams::Person
    • Add support for billing_schedules and phase_effective_at on Quote::SubscriptionDataOverride, Quote::SubscriptionDatum, QuoteCreateParams::SubscriptionDataOverride, QuoteCreateParams::SubscriptionDatum, QuoteUpdateParams::SubscriptionDataOverride, and QuoteUpdateParams::SubscriptionDatum
    • Add support for bill_from on Subscription::BillingSchedule
    • Add support for amendment_end and line_ends_at on Subscription::BillingSchedule::BillUntil

See the changelog for more details.

v17.3.0-alpha.1

06 Nov 21:21

Choose a tag to compare

v17.3.0-alpha.1 Pre-release
Pre-release
  • #1720 Update generated code for private-preview
    • Add support for new resources TransitBalance, V2::Reporting::ReportRun, V2::Reporting::Report
    • Add support for create and retrieve methods on resources V2::Billing::ServiceAction and V2::Reporting::ReportRun
      • Add support for retrieve method on resources V2::Billing::LicenseFeeSubscription and V2::Reporting::Report
    • Add support for create and refill test helper methods on resource Capital::FinancingOffer
    • Add support for allocated_funds on Charge, PaymentIntentConfirmParams, PaymentIntentCreateParams, and PaymentIntentUpdateParams
    • Add support for thin events V2ReportingReportRunCreatedEvent, V2ReportingReportRunFailedEvent, V2ReportingReportRunSucceededEvent, and V2ReportingReportRunUpdatedEvent with related object V2::Reporting::ReportRun

See the changelog for more details.

v17.2.0

05 Nov 22:59

Choose a tag to compare

  • #1721 Update generated code
    • Add support for capture_method on PaymentIntent::PaymentMethodOption::CardPresent, PaymentIntentConfirmParams::PaymentMethodOption::CardPresent, PaymentIntentCreateParams::PaymentMethodOption::CardPresent, and PaymentIntentUpdateParams::PaymentMethodOption::CardPresent

See the changelog for more details.