Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/stripe-cancel-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no email required.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Stripe Accounts Account Cancel API
description: This is an object representing a Stripe account. You can retrieve it to see properties on the account like its current requirements or if the account is enabled to make live charges or receive payouts.
contact:
email: dev-platform@stripe.com
name: Stripe Dev Platform Team
url: https://stripe.com
termsOfService: https://stripe.com/us/terms/
version: '2023-10-16'
x-stripeSpecFilename: spec3
servers:
- url: https://api.stripe.com/
security:
- basicAuth: []
- bearerAuth: []
tags:
- name: Cancel
paths:
/v1/identity/verification_sessions/{session}/cancel:
post:
description: '<p>A VerificationSession object can be canceled when it is in <code>requires_input</code> <a href="/docs/identity/how-sessions-work">status</a>.</p>
<p>Once canceled, future submission attempts are disabled. This cannot be undone. <a href="/docs/identity/verification-sessions#cancel">Learn more</a>.</p>'
operationId: postIdentityVerificationSessionsSessionCancel
parameters:
- in: path
name: session
required: true
schema:
maxLength: 5000
type: string
style: simple
requestBody:
content:
application/x-www-form-urlencoded:
encoding:
expand:
explode: true
style: deepObject
schema:
additionalProperties: false
$ref: '#/components/schemas/PostIdentityVerificationSessionsSessionCancelRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/identity.verification_session'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
summary: Stripe Post Identity Verification Sessions Session Cancel
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Cancel
/v1/payment_intents/{intent}/cancel:
post:
description: '<p>You can cancel a PaymentIntent object when it’s in one of these statuses: <code>requires_payment_method</code>, <code>requires_capture</code>, <code>requires_confirmation</code>, <code>requires_action</code> or, <a href="/docs/payments/intents">in rare cases</a>, <code>processing</code>. </p>
<p>After it’s canceled, no additional charges are made by the PaymentIntent and any operations on the PaymentIntent fail with an error. For PaymentIntents with a <code>status</code> of <code>requires_capture</code>, the remaining <code>amount_capturable</code> is automatically refunded. </p>
<p>You can’t cancel the PaymentIntent for a Checkout Session. <a href="/docs/api/checkout/sessions/expire">Expire the Checkout Session</a> instead.</p>'
operationId: postPaymentIntentsIntentCancel
parameters:
- in: path
name: intent
required: true
schema:
maxLength: 5000
type: string
style: simple
requestBody:
content:
application/x-www-form-urlencoded:
encoding:
expand:
explode: true
style: deepObject
schema:
additionalProperties: false
$ref: '#/components/schemas/PostPaymentIntentsIntentCancelRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/payment_intent'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
summary: Stripe Post Payment Intents Cancel
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Cancel
/v1/payouts/{payout}/cancel:
post:
description: <p>You can cancel a previously created payout if it hasn’t been paid out yet. Stripe refunds the funds to your available balance. You can’t cancel automatic Stripe payouts.</p>
operationId: postPayoutsPayoutCancel
parameters:
- in: path
name: payout
required: true
schema:
maxLength: 5000
type: string
style: simple
requestBody:
content:
application/x-www-form-urlencoded:
encoding:
expand:
explode: true
style: deepObject
schema:
additionalProperties: false
$ref: '#/components/schemas/PostPayoutsPayoutCancelRequest'
required: false
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/payout'
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
summary: Stripe Post Payouts Cancel
x-api-evangelist-processing:
GenerateOperationSummariesFromPath: true
PascalCaseOperationSummaries: true
CaselCaseOperationIds: true
ChooseTags: true
tags:
- Cancel
components:
schemas:
error:
description: An error response from the Stripe API
properties:
error:
$ref: '#/components/schemas/api_errors'
required:
- error
type: object
PostPayoutsPayoutCancelRequest:
type: object
properties:
expand:
description: Specifies which fields in the response should be expanded.
items:
maxLength: 5000
type: string
type: array
identity.verification_report:
description: 'A VerificationReport is the result of an attempt to collect and verify data from a user.
The collection of verification checks performed is determined from the `type` and `options`
parameters used. You can find the result of each verification check performed in the
appropriate sub-resource: `document`, `id_number`, `selfie`.
Each VerificationReport contains a copy of any data collected by the user as well as
reference IDs which can be used to access collected images through the [FileUpload](https://stripe.com/docs/api/files)
API. To configure and create VerificationReports, use the
[VerificationSession](https://stripe.com/docs/api/identity/verification_sessions) API.
Related guides: [Accessing verification results](https://stripe.com/docs/identity/verification-sessions#results).'
properties:
created:
description: Time at which the object was created. Measured in seconds since the Unix epoch.
format: unix-time
type: integer
document:
$ref: '#/components/schemas/gelato_document_report'
id:
description: Unique identifier for the object.
maxLength: 5000
type: string
id_number:
$ref: '#/components/schemas/gelato_id_number_report'
livemode:
description: Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
type: boolean
object:
description: String representing the object's type. Objects of the same type share the same value.
enum:
- identity.verification_report
type: string
options:
$ref: '#/components/schemas/gelato_verification_report_options'
selfie:
$ref: '#/components/schemas/gelato_selfie_report'
type:
description: Type of report.
enum:
- document
- id_number
type: string
x-stripeBypassValidation: true
verification_session:
description: ID of the VerificationSession that created this report.
maxLength: 5000
type:
- string
- 'null'
required:
- created
- id
- livemode
- object
title: GelatoVerificationReport
type: object
x-expandableFields:
- document
- id_number
- options
- selfie
x-resourceId: identity.verification_report
identity.verification_session:
description: '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://stripe.com/docs/identity/verification-sessions)'
properties:
client_secret:
description: The short-lived client secret used by Stripe.js to [show a verification modal](https://stripe.com/docs/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://stripe.com/docs/identity/verification-sessions#client-secret) to learn more.
maxLength: 5000
type:
- string
- 'null'
created:
description: Time at which the object was created. Measured in seconds since the Unix epoch.
format: unix-time
type: integer
id:
description: Unique identifier for the object.
maxLength: 5000
type: string
last_error:
anyOf:
- $ref: '#/components/schemas/gelato_session_last_error'
description: If present, this property tells you the last error encountered when processing the verification.
last_verification_report:
anyOf:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/identity.verification_report'
description: ID of the most recent VerificationReport. [Learn more about accessing detailed verification results.](https://stripe.com/docs/identity/verification-sessions#results)
x-expansionResources:
oneOf:
- $ref: '#/components/schemas/identity.verification_report'
livemode:
description: Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
type: boolean
metadata:
additionalProperties:
maxLength: 500
type: string
description: Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
type: object
object:
description: String representing the object's type. Objects of the same type share the same value.
enum:
- identity.verification_session
type: string
options:
anyOf:
- $ref: '#/components/schemas/gelato_verification_session_options'
description: A set of options for the session’s verification checks.
redaction:
anyOf:
- $ref: '#/components/schemas/verification_session_redaction'
description: Redaction status of this VerificationSession. If the VerificationSession is not redacted, this field will be null.
status:
description: Status of this VerificationSession. [Learn more about the lifecycle of sessions](https://stripe.com/docs/identity/how-sessions-work).
enum:
- canceled
- processing
- requires_input
- verified
type: string
type:
description: The type of [verification check](https://stripe.com/docs/identity/verification-checks) to be performed.
enum:
- document
- id_number
type:
- string
- 'null'
x-stripeBypassValidation: true
url:
description: 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://stripe.com/docs/identity/verify-identity-documents?platform=web&type=redirect) to learn how to redirect users to Stripe.
maxLength: 5000
type:
- string
- 'null'
verified_outputs:
anyOf:
- $ref: '#/components/schemas/gelato_verified_outputs'
description: The user’s verified data.
required:
- created
- id
- livemode
- metadata
- object
- status
title: GelatoVerificationSession
type: object
x-expandableFields:
- last_error
- last_verification_report
- options
- redaction
- verified_outputs
x-resourceId: identity.verification_session
PostPaymentIntentsIntentCancelRequest:
type: object
properties:
cancellation_reason:
description: 'Reason for canceling this PaymentIntent. Possible values are: `duplicate`, `fraudulent`, `requested_by_customer`, or `abandoned`'
enum:
- abandoned
- duplicate
- fraudulent
- requested_by_customer
maxLength: 5000
type: string
x-stripeBypassValidation: true
expand:
description: Specifies which fields in the response should be expanded.
items:
maxLength: 5000
type: string
type: array
payment_intent:
description: 'A PaymentIntent guides you through the process of collecting a payment from your customer.
We recommend that you create exactly one PaymentIntent for each order or
customer session in your system. You can reference the PaymentIntent later to
see the history of payment attempts for a particular session.
A PaymentIntent transitions through
[multiple statuses](https://stripe.com/docs/payments/intents#intent-statuses)
throughout its lifetime as it interfaces with Stripe.js to perform
authentication flows and ultimately creates at most one successful charge.
Related guide: [Payment Intents API](https://stripe.com/docs/payments/payment-intents)'
properties:
amount:
description: Amount intended to be collected by this PaymentIntent. A positive integer representing how much to charge in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal) (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency). The minimum amount is $0.50 US or [equivalent in charge currency](https://stripe.com/docs/currencies#minimum-and-maximum-charge-amounts). The amount value supports up to eight digits (e.g., a value of 99999999 for a USD charge of $999,999.99).
type: integer
amount_capturable:
description: Amount that can be captured from this PaymentIntent.
type: integer
amount_details:
$ref: '#/components/schemas/payment_flows_amount_details'
amount_received:
description: Amount that this PaymentIntent collects.
type: integer
application:
anyOf:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/application'
description: ID of the Connect application that created the PaymentIntent.
x-expansionResources:
oneOf:
- $ref: '#/components/schemas/application'
application_fee_amount:
description: The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner's Stripe account. The amount of the application fee collected will be capped at the total payment amount. For more information, see the PaymentIntents [use case for connected accounts](https://stripe.com/docs/payments/connected-accounts).
type:
- integer
- 'null'
automatic_payment_methods:
anyOf:
- $ref: '#/components/schemas/payment_flows_automatic_payment_methods_payment_intent'
description: Settings to configure compatible payment methods from the [Stripe Dashboard](https://dashboard.stripe.com/settings/payment_methods)
canceled_at:
description: Populated when `status` is `canceled`, this is the time at which the PaymentIntent was canceled. Measured in seconds since the Unix epoch.
format: unix-time
type:
- integer
- 'null'
cancellation_reason:
description: Reason for cancellation of this PaymentIntent, either user-provided (`duplicate`, `fraudulent`, `requested_by_customer`, or `abandoned`) or generated by Stripe internally (`failed_invoice`, `void_invoice`, or `automatic`).
enum:
- abandoned
- automatic
- duplicate
- failed_invoice
- fraudulent
- requested_by_customer
- void_invoice
type:
- string
- 'null'
capture_method:
description: Controls when the funds will be captured from the customer's account.
enum:
- automatic
- automatic_async
- manual
type: string
client_secret:
description: "The client secret of this PaymentIntent. Used for client-side retrieval using a publishable key. \n\nThe client secret can be used to complete a payment from your frontend. It should not be stored, logged, or exposed to anyone other than the customer. Make sure that you have TLS enabled on any page that includes the client secret.\n\nRefer to our docs to [accept a payment](https://stripe.com/docs/payments/accept-a-payment?ui=elements) and learn about how `client_secret` should be handled."
maxLength: 5000
type:
- string
- 'null'
confirmation_method:
description: Describes whether we can confirm this PaymentIntent automatically, or if it requires customer action to confirm the payment.
enum:
- automatic
- manual
type: string
created:
description: Time at which the object was created. Measured in seconds since the Unix epoch.
format: unix-time
type: integer
currency:
description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
type: string
customer:
anyOf:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/customer'
- $ref: '#/components/schemas/deleted_customer'
description: 'ID of the Customer this PaymentIntent belongs to, if one exists.
Payment methods attached to other Customers cannot be used with this PaymentIntent.
If present in combination with [setup_future_usage](https://stripe.com/docs/api#payment_intent_object-setup_future_usage), this PaymentIntent''s payment method will be attached to the Customer after the PaymentIntent has been confirmed and any required actions from the user are complete.'
x-expansionResources:
oneOf:
- $ref: '#/components/schemas/customer'
- $ref: '#/components/schemas/deleted_customer'
description:
description: An arbitrary string attached to the object. Often useful for displaying to users.
maxLength: 5000
type:
- string
- 'null'
id:
description: Unique identifier for the object.
maxLength: 5000
type: string
invoice:
anyOf:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/invoice'
description: ID of the invoice that created this PaymentIntent, if it exists.
x-expansionResources:
oneOf:
- $ref: '#/components/schemas/invoice'
last_payment_error:
anyOf:
- $ref: '#/components/schemas/api_errors'
description: The payment error encountered in the previous PaymentIntent confirmation. It will be cleared if the PaymentIntent is later updated for any reason.
latest_charge:
anyOf:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/charge'
description: The latest charge created by this PaymentIntent.
x-expansionResources:
oneOf:
- $ref: '#/components/schemas/charge'
livemode:
description: Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
type: boolean
metadata:
additionalProperties:
maxLength: 500
type: string
description: Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Learn more about [storing information in metadata](https://stripe.com/docs/payments/payment-intents/creating-payment-intents#storing-information-in-metadata).
type: object
next_action:
anyOf:
- $ref: '#/components/schemas/payment_intent_next_action'
description: If present, this property tells you what actions you need to take in order for your customer to fulfill a payment using the provided source.
object:
description: String representing the object's type. Objects of the same type share the same value.
enum:
- payment_intent
type: string
on_behalf_of:
anyOf:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/account'
description: The account (if any) for which the funds of the PaymentIntent are intended. See the PaymentIntents [use case for connected accounts](https://stripe.com/docs/payments/connected-accounts) for details.
x-expansionResources:
oneOf:
- $ref: '#/components/schemas/account'
payment_method:
anyOf:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/payment_method'
description: ID of the payment method used in this PaymentIntent.
x-expansionResources:
oneOf:
- $ref: '#/components/schemas/payment_method'
payment_method_configuration_details:
anyOf:
- $ref: '#/components/schemas/payment_method_config_biz_payment_method_configuration_details'
description: Information about the payment method configuration used for this PaymentIntent.
payment_method_options:
anyOf:
- $ref: '#/components/schemas/payment_intent_payment_method_options'
description: Payment-method-specific configuration for this PaymentIntent.
payment_method_types:
description: The list of payment method types (e.g. card) that this PaymentIntent is allowed to use.
items:
maxLength: 5000
type: string
type: array
processing:
anyOf:
- $ref: '#/components/schemas/payment_intent_processing'
description: If present, this property tells you about the processing state of the payment.
receipt_email:
description: Email address that the receipt for the resulting payment will be sent to. If `receipt_email` is specified for a payment in live mode, a receipt will be sent regardless of your [email settings](https://dashboard.stripe.com/account/emails).
maxLength: 5000
type:
- string
- 'null'
review:
anyOf:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/review'
description: ID of the review associated with this PaymentIntent, if any.
x-expansionResources:
oneOf:
- $ref: '#/components/schemas/review'
setup_future_usage:
description: 'Indicates that you intend to make future payments with this PaymentIntent''s payment method.
Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent''s Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).'
enum:
- off_session
- on_session
type:
- string
- 'null'
shipping:
anyOf:
- $ref: '#/components/schemas/shipping'
description: Shipping information for this PaymentIntent.
statement_descriptor:
description: For card charges, use [statement_descriptor_suffix](https://stripe.com/docs/payments/account/statement-descriptors#dynamic). Otherwise, you can use this value as the complete description of a charge on your customers' statements. It must contain at least one letter and be 1–22 characters long.
maxLength: 5000
type:
- string
- 'null'
statement_descriptor_suffix:
description: Provides information about a card payment that customers see on their statements. Concatenated with the prefix (shortened descriptor) or statement descriptor that’s set on the account to form the complete statement descriptor. Maximum 22 characters for the concatenated descriptor.
maxLength: 5000
type:
- string
- 'null'
status:
description: Status of this PaymentIntent, one of `requires_payment_method`, `requires_confirmation`, `requires_action`, `processing`, `requires_capture`, `canceled`, or `succeeded`. Read more about each PaymentIntent [status](https://stripe.com/docs/payments/intents#intent-statuses).
enum:
- canceled
- processing
- requires_action
- requires_capture
- requires_confirmation
- requires_payment_method
- succeeded
type: string
transfer_data:
anyOf:
- $ref: '#/components/schemas/transfer_data'
description: The data that automatically creates a Transfer after the payment finalizes. Learn more about the [use case for connected accounts](https://stripe.com/docs/payments/connected-accounts).
transfer_group:
description: A string that identifies the resulting payment as part of a group. Learn more about the [use case for connected accounts](https://stripe.com/docs/connect/separate-charges-and-transfers).
maxLength: 5000
type:
- string
- 'null'
required:
- amount
- capture_method
- confirmation_method
- created
- currency
- id
- livemode
- object
- payment_method_types
- status
title: PaymentIntent
type: object
x-expandableFields:
- amount_details
- application
- automatic_payment_methods
- customer
- invoice
- last_payment_error
- latest_charge
- next_action
- on_behalf_of
- payment_method
- payment_method_configuration_details
- payment_method_options
- processing
- review
- shipping
- transfer_data
x-resourceId: payment_intent
payout:
description: 'A `Payout` object is created when you receive funds from Stripe, or when you
initiate a payout to either a bank account or debit card of a [connected
Stripe account](/docs/connect/bank-debit-card-payouts). You can retrieve individual payouts,
and list all payouts. Payouts are made on [varying
schedules](/docs/connect/manage-payout-schedule), depending on your country and
industry.
Related guide: [Receiving payouts](https://stripe.com/docs/payouts)'
properties:
amount:
description: The amount (in cents (or local equivalent)) that transfers to your bank account or debit card.
type: integer
arrival_date:
description: Date that you can expect the payout to arrive in the bank. This factors in delays to account for weekends or bank holidays.
format: unix-time
type: integer
automatic:
description: Returns `true` if the payout is created by an [automated payout schedule](https://stripe.com/docs/payouts#payout-schedule) and `false` if it's [requested manually](https://stripe.com/docs/payouts#manual-payouts).
type: boolean
balance_transaction:
anyOf:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/balance_transaction'
description: ID of the balance transaction that describes the impact of this payout on your account balance.
x-expansionResources:
oneOf:
- $ref: '#/components/schemas/balance_transaction'
created:
description: Time at which the object was created. Measured in seconds since the Unix epoch.
format: unix-time
type: integer
currency:
description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
type: string
description:
description: An arbitrary string attached to the object. Often useful for displaying to users.
maxLength: 5000
type:
- string
- 'null'
destination:
anyOf:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/bank_account'
- $ref: '#/components/schemas/card'
- $ref: '#/components/schemas/deleted_bank_account'
- $ref: '#/components/schemas/deleted_card'
description: ID of the bank account or card the payout is sent to.
x-expansionResources:
oneOf:
- $ref: '#/components/schemas/bank_account'
- $ref: '#/components/schemas/card'
- $ref: '#/components/schemas/deleted_bank_account'
- $ref: '#/components/schemas/deleted_card'
x-stripeBypassValidation: true
failure_balance_transaction:
anyOf:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/balance_transaction'
description: If the payout fails or cancels, this is the ID of the balance transaction that reverses the initial balance transaction and returns the funds from the failed payout back in your balance.
x-expansionResources:
oneOf:
- $ref: '#/components/schemas/balance_transaction'
failure
# --- truncated at 32 KB (36 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/stripe/refs/heads/main/openapi/stripe-cancel-api-openapi.yml