Stripe: List Verification Sessions
Stripe identity.getIdentityVerificationSessions: arguments, response, policy and SDK examples.
← Identity operations · Get started
Operation stripe.getidentityverificationsessions
Provider route: GET /v1/identity/verification_sessions. Alter supplies the connection’s credentials and routing.
Call through Alter
Section titled “Call through Alter”Install @alter-ai/sdk @alter-ai/stripe with npm, or alter-sdk-stripe with pip. Supply your connected customer’s grant ID and the arguments described below.
import { App } from "@alter-ai/sdk";import { StripeIntegration } from "@alter-ai/stripe";
async function execute(input: Parameters<StripeIntegration["identity"]["getIdentityVerificationSessions"]>[0]) { const app = new App({ apiKey: process.env.ALTER_API_KEY! }); try { const provider = new StripeIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! }); const call = await provider.identity.getIdentityVerificationSessions(input); const result = await call.wait(); return result.bodyJson(); } finally { await app.close(); }}import osfrom alter_sdk import Appfrom alter_sdk_stripe import StripeIntegration
async def execute(arguments): async with App(api_key=os.environ["ALTER_API_KEY"]) as app: provider = StripeIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]}) call = await provider.identity.get_identity_verification_sessions(arguments) result = await call.wait() return result.body_json()| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Additional keys: not allowed |
query | object | Optional | Additional keys: not allowed |
query.client_reference_id | string | Optional | Maximum length: 5000 |
query.created | JSON | Optional | |
query.created (anyOf 1) | object | Alternative | |
query.created (anyOf 1).gt | integer | Optional | |
query.created (anyOf 1).gte | integer | Optional | |
query.created (anyOf 1).lt | integer | Optional | |
query.created (anyOf 1).lte | integer | Optional | |
query.created (anyOf 2) | integer | Alternative | |
query.ending_before | string | Optional | Maximum length: 5000 |
query.expand | array | Optional | |
query.expand[] | string | Each item | Maximum length: 5000 |
query.limit | integer | Optional | |
query.related_customer | string | Optional | Maximum length: 5000 |
query.related_customer_account | string | Optional | Maximum length: 5000 |
query.starting_after | string | Optional | Maximum length: 5000 |
query.status | string | Optional | One of: canceled, processing, requires_input, verified |
Response
Section titled “Response”Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
data | array | Required within parent | |
data[] | Model | Each item | Expand Cancel a Verification Session — response body |
has_more | boolean | Required within parent | True if this list has another page of items after this one that can be fetched. |
object | string | Required within parent | String representing the object’s type. Objects of the same type share the same value. Always has the value `list`. Known values: list |
url | string | Required within parent | The URL where this list can be accessed. Maximum length: 5000 Pattern: ^/v1/identity/verification_sessions |
Referenced models: Cancel a Verification Session — response body
Schemas
Section titled “Schemas”21 more schemas are linked from the tables above, on the schema pages.
Cancel a Verification Session — response body
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | 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](/docs/identity/verification-checks) to perform. Only create one VerificationSession for each verification in your system. A VerificationSession transitions through [multiple statuses](/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://docs.stripe.com/identity/verification-sessions) |
client_reference_id | JSON | Optional | |
client_reference_id (anyOf 1) | string | Alternative | A string to reference this user. This can be a customer ID, a session ID, or similar, and can be used to reconcile this verification with your internal systems. Maximum length: 5000 |
client_reference_id (anyOf 2) | null | Alternative | |
client_secret | JSON | Optional | |
client_secret (anyOf 1) | string | Alternative | The short-lived client secret used by Stripe.js to [show a verification modal](https://docs.stripe.com/js/identity/modal) inside your app. This client secret expires after 24 hours and can only be used once. Don’t store it, log it, embed it in a URL, or expose it to anyone other than the user. Make sure that you have TLS enabled on any page that includes the client secret. Refer to our docs on [passing the client secret to the frontend](https://docs.stripe.com/identity/verification-sessions#client-secret) to learn more. Maximum length: 5000 |
client_secret (anyOf 2) | null | Alternative | |
created | JSON | Required within parent | |
created (anyOf 1) | integer | Alternative | Time at which the object was created. Measured in seconds since the Unix epoch. Format: unix-time |
created (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
id | string | Required within parent | Unique identifier for the object. Maximum length: 5000 |
last_error | JSON | Optional | |
last_error (anyOf 1) | JSON | Alternative | If present, this property tells you the last error encountered when processing the verification. |
last_error (anyOf 1) (anyOf 1) | Model | Alternative | Expand Cancel a Verification Session — response body — last error value Shows last Verification Session error |
last_error (anyOf 2) | null | Alternative | |
last_verification_report | JSON | Optional | |
last_verification_report (anyOf 1) | JSON | Alternative | ID of the most recent VerificationReport. [Learn more about accessing detailed verification results.](https://docs.stripe.com/identity/verification-sessions#results) |
last_verification_report (anyOf 1) (anyOf 1) | string | Alternative | Maximum length: 5000 |
last_verification_report (anyOf 1) (anyOf 2) | Model | Alternative | Expand Retrieve a Verification Report — response body |
last_verification_report (anyOf 2) | null | Alternative | |
livemode | boolean | Required within parent | If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`. |
metadata | object | Required within parent | Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Additional keys: see wildcard field |
metadata.* | string | Additional keys | Maximum length: 500 |
object | string | Required within parent | String representing the object's type. Objects of the same type share the same value. Known values: identity.verification_session |
options | JSON | Optional | |
options (anyOf 1) | JSON | Alternative | A set of options for the session’s verification checks. |
options (anyOf 1) (anyOf 1) | Model | Alternative | Expand Cancel a Verification Session — response body — options value document, email, id number, matching, phone |
options (anyOf 2) | null | Alternative | |
provided_details | JSON | Optional | |
provided_details (anyOf 1) | JSON | Alternative | Details provided about the user being verified. These details may be shown to the user. |
provided_details (anyOf 1) (anyOf 1) | Model | Alternative | Expand Cancel a Verification Session — response body — provided details value email, phone |
provided_details (anyOf 2) | null | Alternative | |
redaction | JSON | Optional | |
redaction (anyOf 1) | JSON | Alternative | Redaction status of this VerificationSession. If the VerificationSession is not redacted, this field will be null. |
redaction (anyOf 1) (anyOf 1) | Model | Alternative | Expand Cancel a VerificationSession — response body — redaction / value / status: processing, redacted, validated |
redaction (anyOf 2) | null | Alternative | |
related_customer | JSON | Optional | |
related_customer (anyOf 1) | string | Alternative | Customer ID Maximum length: 5000 |
related_customer (anyOf 2) | null | Alternative | |
related_customer_account | JSON | Optional | |
related_customer_account (anyOf 1) | string | Alternative | The ID of the Account representing a customer. Maximum length: 5000 |
related_customer_account (anyOf 2) | null | Alternative | |
related_person | Model | Optional | Expand Cancel a Verification Session — response body — related person |
status | string | Required within parent | Status of this VerificationSession. [Learn more about the lifecycle of sessions](https://docs.stripe.com/identity/how-sessions-work). Known values: canceled, processing, requires_input, verified |
type | string | Required within parent | The type of [verification check](https://docs.stripe.com/identity/verification-checks) to be performed. Known values: document, id_number, verification_flow |
url | JSON | Optional | |
url (anyOf 1) | string | Alternative | The short-lived URL that you use to redirect a user to Stripe to submit their identity information. This URL expires after 48 hours and can only be used once. Don’t store it, log it, send it in emails or expose it to anyone other than the user. Refer to our docs on [verifying identity documents](https://docs.stripe.com/identity/verify-identity-documents?platform=web&type=redirect) to learn how to redirect users to Stripe. Maximum length: 5000 |
url (anyOf 2) | null | Alternative | |
verification_flow | string | Optional | The configuration token of a verification flow from the dashboard. Maximum length: 5000 |
verified_outputs | JSON | Optional | |
verified_outputs (anyOf 1) | JSON | Alternative | The user’s verified data. |
verified_outputs (anyOf 1) (anyOf 1) | Model | Alternative | Expand Cancel a Verification Session — response body — verified outputs The user’s verified data address, dob, email, first name, id number, id number type, last name, phone, sex, unparsed place of birth, unparsed sex |
verified_outputs (anyOf 2) | null | Alternative |
Referenced models: Cancel a Verification Session — response body — provided details value email, phone, Cancel a Verification Session — response body — related person, Cancel a Verification Session — response body — last error value Shows last Verification Session error, Cancel a Verification Session — response body — options value document, email, id number, matching, phone, Cancel a Verification Session — response body — verified outputs The user’s verified data address, dob, email, first name, id number, id number type, last name, phone, sex, unparsed place of birth, unparsed sex, Retrieve a Verification Report — response body, Cancel a VerificationSession — response body — redaction / value / status: processing, redacted, validated
Cancel a Verification Session — response body — provided details value email, phone
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
email | string | Optional | Email of user being verified Maximum length: 5000 |
phone | string | Optional | Phone number of user being verified Maximum length: 5000 |
Cancel a Verification Session — response body — related person
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
account | string | Required within parent | Token referencing the associated Account of the related Person resource. Maximum length: 5000 |
person | string | Required within parent | Token referencing the related Person resource. Maximum length: 5000 |
Cancel a Verification Session — response body — last error value Shows last Verification Session error
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Shows last VerificationSession error |
code | JSON | Optional | |
code (anyOf 1) | string | Alternative | A short machine-readable string giving the reason for the verification or user-session failure. Known values: abandoned, consent_declined, country_not_supported, device_not_supported, document_expired, document_type_not_supported, document_unverified_other, email_unverified_other, email_verification_declined, id_number_insufficient_document_data, id_number_mismatch, id_number_unverified_other, phone_unverified_other, phone_verification_declined, selfie_document_missing_photo, selfie_face_mismatch, selfie_manipulated, selfie_unverified_other, under_supported_age |
code (anyOf 2) | null | Alternative | |
reason | JSON | Optional | |
reason (anyOf 1) | string | Alternative | A message that explains the reason for verification or user-session failure. Maximum length: 5000 |
reason (anyOf 2) | null | Alternative |
Create a Payment Method — response body — zip
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root |
Policy, approvals and errors
Section titled “Policy, approvals and errors”SDK function policy ID: stripe.getidentityverificationsessions. Catalog operation: GetIdentityVerificationSessions. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.
Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.
Pinned headers: {"Stripe-Version": "2026-09-30.endive"}