lib/stripe/resources/identity/verification_session.rb
# File generated from our OpenAPI spec # frozen_string_literal: true module Stripe module Identity # A VerificationSession guides you through the process of collecting and verifying the identities # of your users. It contains details about the type of verification, such as what [verification # check](https://stripe.com/docs/identity/verification-checks) to perform. Only create one VerificationSession for # each verification in your system. # # A VerificationSession transitions through [multiple # statuses](https://stripe.com/docs/identity/how-sessions-work) throughout its lifetime as it progresses through # the verification flow. The VerificationSession contains the user's verified data after # verification checks are complete. # # Related guide: [The Verification Sessions API](https://stripe.com/docs/identity/verification-sessions) class VerificationSession < APIResource extend Stripe::APIOperations::Create extend Stripe::APIOperations::List include Stripe::APIOperations::Save OBJECT_NAME = "identity.verification_session" # A VerificationSession object can be canceled when it is in requires_input [status](https://stripe.com/docs/identity/how-sessions-work). # # Once canceled, future submission attempts are disabled. This cannot be undone. [Learn more](https://stripe.com/docs/identity/verification-sessions#cancel). def cancel(params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/identity/verification_sessions/%<session>s/cancel", { session: CGI.escape(self["id"]) }), params: params, opts: opts ) end # Redact a VerificationSession to remove all collected information from Stripe. This will redact # the VerificationSession and all objects related to it, including VerificationReports, Events, # request logs, etc. # # A VerificationSession object can be redacted when it is in requires_input or verified # [status](https://stripe.com/docs/identity/how-sessions-work). Redacting a VerificationSession in requires_action # state will automatically cancel it. # # The redaction process may take up to four days. When the redaction process is in progress, the # VerificationSession's redaction.status field will be set to processing; when the process is # finished, it will change to redacted and an identity.verification_session.redacted event # will be emitted. # # Redaction is irreversible. Redacted objects are still accessible in the Stripe API, but all the # fields that contain personal data will be replaced by the string [redacted] or a similar # placeholder. The metadata field will also be erased. Redacted objects cannot be updated or # used for any purpose. # # [Learn more](https://stripe.com/docs/identity/verification-sessions#redact). def redact(params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/identity/verification_sessions/%<session>s/redact", { session: CGI.escape(self["id"]) }), params: params, opts: opts ) end # A VerificationSession object can be canceled when it is in requires_input [status](https://stripe.com/docs/identity/how-sessions-work). # # Once canceled, future submission attempts are disabled. This cannot be undone. [Learn more](https://stripe.com/docs/identity/verification-sessions#cancel). def self.cancel(session, params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/identity/verification_sessions/%<session>s/cancel", { session: CGI.escape(session) }), params: params, opts: opts ) end # Redact a VerificationSession to remove all collected information from Stripe. This will redact # the VerificationSession and all objects related to it, including VerificationReports, Events, # request logs, etc. # # A VerificationSession object can be redacted when it is in requires_input or verified # [status](https://stripe.com/docs/identity/how-sessions-work). Redacting a VerificationSession in requires_action # state will automatically cancel it. # # The redaction process may take up to four days. When the redaction process is in progress, the # VerificationSession's redaction.status field will be set to processing; when the process is # finished, it will change to redacted and an identity.verification_session.redacted event # will be emitted. # # Redaction is irreversible. Redacted objects are still accessible in the Stripe API, but all the # fields that contain personal data will be replaced by the string [redacted] or a similar # placeholder. The metadata field will also be erased. Redacted objects cannot be updated or # used for any purpose. # # [Learn more](https://stripe.com/docs/identity/verification-sessions#redact). def self.redact(session, params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/identity/verification_sessions/%<session>s/redact", { session: CGI.escape(session) }), params: params, opts: opts ) end end end end