REST Lens
All samples

Stripe API

The industry-standard payments API, used by millions of businesses worldwide.

Version 2022-11-15

452 operations29 rules102,908 checks1,199 violations49 errors640 warnings510 info

Rules Violated (13)

401 Unauthorized
452
Query Fields GET
213
Last-Modified Header
213
Idempotent Design
96
Hyphens vs Underscores
84
HTTP 201 for Create
72
Plural Collections
39
Toggle Anti-Pattern
10
CRUD-y URIs
10
Deprecation Guidance
4
Pagination
4
Consistent Media Types
1
Hierarchy Design
1
API Analysis1199 issues
/
v1
account
GETRetrieves the details of an account.
WarningGET /v1/account requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/account does not support 'fields' query parameter for partial responses#23
InfoGET /v1/account 200 response should include Last-Modified header#58
account_links
POSTCreates an AccountLink object that includes a single-use Stripe URL that the ...
WarningPOST /v1/account_links requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/account_links appears to create a resource but doesn't define a 201 response#34
accounts
GETReturns a list of accounts connected to your platform via Connect
WarningGET /v1/accounts requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/accounts does not support 'fields' query parameter for partial responses#23
InfoGET /v1/accounts 200 response should include Last-Modified header#58
POSTWith Connect, you can create Stripe accounts for your users
WarningPOST /v1/accounts requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts appears to create a resource but doesn't define a 201 response#34
{account}
DELETEWith Connect, you can delete accounts you manage
WarningDELETE /v1/accounts/{account} requires authentication but does not define 401 Unauthorized response#9
GETRetrieves the details of an account.
WarningGET /v1/accounts/{account} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/accounts/{account} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/accounts/{account} 200 response should include Last-Modified header#58
POSTUpdates a connected account by setting the values of the parameters passed
WarningPOST /v1/accounts/{account} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts/{account} appears to be idempotent; consider using PUT instead#82
bank_accounts
POSTCreate an external account for a given account.
WarningPOST /v1/accounts/{account}/bank_accounts requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts/{account}/bank_accounts appears to create a resource but doesn't define a 201 response#34
{id}
DELETEDelete a specified external account for a given account.
WarningDELETE /v1/accounts/{account}/bank_accounts/{id} requires authentication but does not define 401 Unauthorized response#9
GETRetrieve a specified external account for a given account.
WarningGET /v1/accounts/{account}/bank_accounts/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/accounts/{account}/bank_accounts/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/accounts/{account}/bank_accounts/{id} 200 response should include Last-Modified header#58
POSTUpdates the metadata, account holder name, account holder type of a bank acco...
WarningPOST /v1/accounts/{account}/bank_accounts/{id} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts/{account}/bank_accounts/{id} appears to be idempotent; consider using PUT instead#82
capabilities
GETReturns a list of capabilities associated with the account
WarningGET /v1/accounts/{account}/capabilities requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/accounts/{account}/capabilities does not support 'fields' query parameter for partial responses#23
InfoGET /v1/accounts/{account}/capabilities 200 response should include Last-Modified header#58
{capability}
GETRetrieves information about the specified Account Capability.
WarningGET /v1/accounts/{account}/capabilities/{capability} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/accounts/{account}/capabilities/{capability} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/accounts/{account}/capabilities/{capability} 200 response should include Last-Modified header#58
POSTUpdates an existing Account Capability.
WarningPOST /v1/accounts/{account}/capabilities/{capability} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts/{account}/capabilities/{capability} appears to be idempotent; consider using PUT instead#82
external_accounts
GETList external accounts for an account.
WarningGET /v1/accounts/{account}/external_accounts requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/accounts/{account}/external_accounts does not support 'fields' query parameter for partial responses#23
InfoGET /v1/accounts/{account}/external_accounts 200 response should include Last-Modified header#58
POSTCreate an external account for a given account.
WarningPOST /v1/accounts/{account}/external_accounts requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts/{account}/external_accounts appears to create a resource but doesn't define a 201 response#34
{id}
DELETEDelete a specified external account for a given account.
WarningDELETE /v1/accounts/{account}/external_accounts/{id} requires authentication but does not define 401 Unauthorized response#9
GETRetrieve a specified external account for a given account.
WarningGET /v1/accounts/{account}/external_accounts/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/accounts/{account}/external_accounts/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/accounts/{account}/external_accounts/{id} 200 response should include Last-Modified header#58
POSTUpdates the metadata, account holder name, account holder type of a bank acco...
WarningPOST /v1/accounts/{account}/external_accounts/{id} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts/{account}/external_accounts/{id} appears to be idempotent; consider using PUT instead#82
login_links
POSTCreates a single-use login link for an Express account to access their Stripe...
WarningPOST /v1/accounts/{account}/login_links requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts/{account}/login_links appears to create a resource but doesn't define a 201 response#34
people
GETReturns a list of people associated with the account’s legal entity
WarningGET /v1/accounts/{account}/people requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/accounts/{account}/people does not support 'fields' query parameter for partial responses#23
InfoGET /v1/accounts/{account}/people 200 response should include Last-Modified header#58
POSTCreates a new person.
WarningPOST /v1/accounts/{account}/people requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts/{account}/people appears to create a resource but doesn't define a 201 response#34
{person}
DELETEDeletes an existing person’s relationship to the account’s legal entity
WarningDELETE /v1/accounts/{account}/people/{person} requires authentication but does not define 401 Unauthorized response#9
GETRetrieves an existing person.
WarningGET /v1/accounts/{account}/people/{person} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/accounts/{account}/people/{person} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/accounts/{account}/people/{person} 200 response should include Last-Modified header#58
POSTUpdates an existing person.
WarningPOST /v1/accounts/{account}/people/{person} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts/{account}/people/{person} appears to be idempotent; consider using PUT instead#82
persons
GETReturns a list of people associated with the account’s legal entity
WarningGET /v1/accounts/{account}/persons requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/accounts/{account}/persons does not support 'fields' query parameter for partial responses#23
InfoGET /v1/accounts/{account}/persons 200 response should include Last-Modified header#58
POSTCreates a new person.
WarningPOST /v1/accounts/{account}/persons requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts/{account}/persons appears to create a resource but doesn't define a 201 response#34
{person}
DELETEDeletes an existing person’s relationship to the account’s legal entity
WarningDELETE /v1/accounts/{account}/persons/{person} requires authentication but does not define 401 Unauthorized response#9
GETRetrieves an existing person.
WarningGET /v1/accounts/{account}/persons/{person} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/accounts/{account}/persons/{person} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/accounts/{account}/persons/{person} 200 response should include Last-Modified header#58
POSTUpdates an existing person.
WarningPOST /v1/accounts/{account}/persons/{person} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/accounts/{account}/persons/{person} appears to be idempotent; consider using PUT instead#82
reject
POSTWith Connect, you may flag accounts as suspicious
WarningPOST /v1/accounts/{account}/reject requires authentication but does not define 401 Unauthorized response#9
apple_pay
domains
GETList apple pay domains.
WarningGET /v1/apple_pay/domains requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/apple_pay/domains does not support 'fields' query parameter for partial responses#23
InfoGET /v1/apple_pay/domains 200 response should include Last-Modified header#58
POSTCreate an apple pay domain.
WarningPOST /v1/apple_pay/domains requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/apple_pay/domains appears to create a resource but doesn't define a 201 response#34
{domain}
DELETEDelete an apple pay domain.
WarningDELETE /v1/apple_pay/domains/{domain} requires authentication but does not define 401 Unauthorized response#9
GETRetrieve an apple pay domain.
WarningGET /v1/apple_pay/domains/{domain} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/apple_pay/domains/{domain} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/apple_pay/domains/{domain} 200 response should include Last-Modified header#58
application_fees
GETReturns a list of application fees you’ve previously collected
WarningGET /v1/application_fees requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/application_fees does not support 'fields' query parameter for partial responses#23
InfoGET /v1/application_fees 200 response should include Last-Modified header#58
{fee}
refunds
{id}
GETBy default, you can see the 10 most recent refunds stored directly on the app...
WarningGET /v1/application_fees/{fee}/refunds/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/application_fees/{fee}/refunds/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/application_fees/{fee}/refunds/{id} 200 response should include Last-Modified header#58
POSTUpdates the specified application fee refund by setting the values of the par...
WarningPOST /v1/application_fees/{fee}/refunds/{id} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/application_fees/{fee}/refunds/{id} appears to be idempotent; consider using PUT instead#82
{id}
GETRetrieves the details of an application fee that your account has collected
WarningGET /v1/application_fees/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/application_fees/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/application_fees/{id} 200 response should include Last-Modified header#58
refund
POST
WarningPOST /v1/application_fees/{id}/refund requires authentication but does not define 401 Unauthorized response#9
refunds
GETYou can see a list of the refunds belonging to a specific application fee
WarningGET /v1/application_fees/{id}/refunds requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/application_fees/{id}/refunds does not support 'fields' query parameter for partial responses#23
InfoGET /v1/application_fees/{id}/refunds 200 response should include Last-Modified header#58
POSTRefunds an application fee that has previously been collected but not yet ref...
WarningPOST /v1/application_fees/{id}/refunds requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/application_fees/{id}/refunds appears to create a resource but doesn't define a 201 response#34
apps
secrets
GETList all secrets stored on the given scope.
WarningGET /v1/apps/secrets requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/apps/secrets does not support 'fields' query parameter for partial responses#23
InfoGET /v1/apps/secrets 200 response should include Last-Modified header#58
POSTCreate or replace a secret in the secret store.
WarningPOST /v1/apps/secrets requires authentication but does not define 401 Unauthorized response#9
delete
POSTDeletes a secret from the secret store by name and scope.
WarningPOST /v1/apps/secrets/delete requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/apps/secrets/delete appears to be idempotent; consider using PUT instead#82
find
GETFinds a secret in the secret store by name and scope.
WarningGET /v1/apps/secrets/find requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/apps/secrets/find does not support 'fields' query parameter for partial responses#23
InfoGET /v1/apps/secrets/find 200 response should include Last-Modified header#58
balance
GETRetrieves the current account balance, based on the authentication that was u...
WarningGET /v1/balance requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/balance does not support 'fields' query parameter for partial responses#23
InfoGET /v1/balance 200 response should include Last-Modified header#58
history
GETReturns a list of transactions that have contributed to the Stripe account ba...
WarningGET /v1/balance/history requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/balance/history does not support 'fields' query parameter for partial responses#23
InfoGET /v1/balance/history 200 response should include Last-Modified header#58
{id}
GETRetrieves the balance transaction with the given ID
WarningGET /v1/balance/history/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/balance/history/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/balance/history/{id} 200 response should include Last-Modified header#58
balance_transactions
GETReturns a list of transactions that have contributed to the Stripe account ba...
WarningGET /v1/balance_transactions requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/balance_transactions does not support 'fields' query parameter for partial responses#23
InfoGET /v1/balance_transactions 200 response should include Last-Modified header#58
{id}
GETRetrieves the balance transaction with the given ID
WarningGET /v1/balance_transactions/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/balance_transactions/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/balance_transactions/{id} 200 response should include Last-Modified header#58
billing_portal
configurations
GETReturns a list of configurations that describe the functionality of the custo...
WarningGET /v1/billing_portal/configurations requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/billing_portal/configurations does not support 'fields' query parameter for partial responses#23
InfoGET /v1/billing_portal/configurations 200 response should include Last-Modified header#58
POSTCreates a configuration that describes the functionality and behavior of a Po...
WarningPOST /v1/billing_portal/configurations requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/billing_portal/configurations appears to create a resource but doesn't define a 201 response#34
{configuration}
GETRetrieves a configuration that describes the functionality of the customer po...
WarningGET /v1/billing_portal/configurations/{configuration} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/billing_portal/configurations/{configuration} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/billing_portal/configurations/{configuration} 200 response should include Last-Modified header#58
POSTUpdates a configuration that describes the functionality of the customer portal.
WarningPOST /v1/billing_portal/configurations/{configuration} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/billing_portal/configurations/{configuration} appears to be idempotent; consider using PUT instead#82
sessions
POSTCreates a session of the customer portal.
WarningPOST /v1/billing_portal/sessions requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/billing_portal/sessions appears to create a resource but doesn't define a 201 response#34
charges
GETReturns a list of charges you’ve previously created
WarningGET /v1/charges requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/charges does not support 'fields' query parameter for partial responses#23
InfoGET /v1/charges 200 response should include Last-Modified header#58
POSTTo charge a credit card or other payment source, you create a Charge object
WarningPOST /v1/charges requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/charges appears to create a resource but doesn't define a 201 response#34
search
GETSearch for charges you’ve previously created using Stripe’s Search Query Lang...
WarningGET /v1/charges/search requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/charges/search does not support 'fields' query parameter for partial responses#23
InfoGET /v1/charges/search 200 response should include Last-Modified header#58
{charge}
GETRetrieves the details of a charge that has previously been created
WarningGET /v1/charges/{charge} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/charges/{charge} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/charges/{charge} 200 response should include Last-Modified header#58
POSTUpdates the specified charge by setting the values of the parameters passed
WarningPOST /v1/charges/{charge} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/charges/{charge} appears to be idempotent; consider using PUT instead#82
capture
POSTCapture the payment of an existing, uncaptured, charge
WarningPOST /v1/charges/{charge}/capture requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/charges/{charge}/capture toggles state; consider splitting into PUT (to set) and DELETE (to unset)#83
dispute
GETRetrieve a dispute for a specified charge.
WarningGET /v1/charges/{charge}/dispute requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/charges/{charge}/dispute does not support 'fields' query parameter for partial responses#23
InfoGET /v1/charges/{charge}/dispute 200 response should include Last-Modified header#58
POST
WarningPOST /v1/charges/{charge}/dispute requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/charges/{charge}/dispute appears to be idempotent; consider using PUT instead#82
close
POST
WarningPOST /v1/charges/{charge}/dispute/close requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/charges/{charge}/dispute/close appears to be idempotent; consider using PUT instead#82
refund
POSTWhen you create a new refund, you must specify a Charge or a PaymentIntent ob...
WarningPOST /v1/charges/{charge}/refund requires authentication but does not define 401 Unauthorized response#9
refunds
GETYou can see a list of the refunds belonging to a specific charge
WarningGET /v1/charges/{charge}/refunds requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/charges/{charge}/refunds does not support 'fields' query parameter for partial responses#23
InfoGET /v1/charges/{charge}/refunds 200 response should include Last-Modified header#58
POSTCreate a refund.
WarningPOST /v1/charges/{charge}/refunds requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/charges/{charge}/refunds appears to create a resource but doesn't define a 201 response#34
{refund}
GETRetrieves the details of an existing refund.
WarningGET /v1/charges/{charge}/refunds/{refund} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/charges/{charge}/refunds/{refund} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/charges/{charge}/refunds/{refund} 200 response should include Last-Modified header#58
POSTUpdate a specified refund.
WarningPOST /v1/charges/{charge}/refunds/{refund} requires authentication but does not define 401 Unauthorized response#9
checkout
sessions
GETReturns a list of Checkout Sessions.
WarningGET /v1/checkout/sessions requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/checkout/sessions does not support 'fields' query parameter for partial responses#23
InfoGET /v1/checkout/sessions 200 response should include Last-Modified header#58
POSTCreates a Session object.
WarningPOST /v1/checkout/sessions requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/checkout/sessions appears to create a resource but doesn't define a 201 response#34
{session}
GETRetrieves a Session object.
WarningGET /v1/checkout/sessions/{session} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/checkout/sessions/{session} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/checkout/sessions/{session} 200 response should include Last-Modified header#58
expire
POSTA Session can be expired when it is in one of these statuses: open After it...
WarningPOST /v1/checkout/sessions/{session}/expire requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/checkout/sessions/{session}/expire appears to be idempotent; consider using PUT instead#82
line_items
GETWhen retrieving a Checkout Session, there is an includable line_items propert...
WarningGET /v1/checkout/sessions/{session}/line_items requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/checkout/sessions/{session}/line_items does not support 'fields' query parameter for partial responses#23
InfoGET /v1/checkout/sessions/{session}/line_items 200 response should include Last-Modified header#58
country_specs
GETLists all Country Spec objects available in the API.
WarningGET /v1/country_specs requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/country_specs does not support 'fields' query parameter for partial responses#23
InfoGET /v1/country_specs 200 response should include Last-Modified header#58
{country}
GETReturns a Country Spec for a given Country code.
WarningGET /v1/country_specs/{country} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/country_specs/{country} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/country_specs/{country} 200 response should include Last-Modified header#58
coupons
GETReturns a list of your coupons.
WarningGET /v1/coupons requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/coupons does not support 'fields' query parameter for partial responses#23
InfoGET /v1/coupons 200 response should include Last-Modified header#58
POSTYou can create coupons easily via the coupon management page of the Stripe da...
WarningPOST /v1/coupons requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/coupons appears to create a resource but doesn't define a 201 response#34
{coupon}
DELETEYou can delete coupons via the coupon management page of the Stripe dashboard
WarningDELETE /v1/coupons/{coupon} requires authentication but does not define 401 Unauthorized response#9
GETRetrieves the coupon with the given ID.
WarningGET /v1/coupons/{coupon} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/coupons/{coupon} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/coupons/{coupon} 200 response should include Last-Modified header#58
POSTUpdates the metadata of a coupon
WarningPOST /v1/coupons/{coupon} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/coupons/{coupon} appears to be idempotent; consider using PUT instead#82
credit_notes
GETReturns a list of credit notes.
WarningGET /v1/credit_notes requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/credit_notes does not support 'fields' query parameter for partial responses#23
InfoGET /v1/credit_notes 200 response should include Last-Modified header#58
POSTIssue a credit note to adjust the amount of a finalized invoice
WarningPOST /v1/credit_notes requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/credit_notes appears to create a resource but doesn't define a 201 response#34
preview
GETGet a preview of a credit note without creating it.
WarningGET /v1/credit_notes/preview requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/credit_notes/preview does not support 'fields' query parameter for partial responses#23
InfoGET /v1/credit_notes/preview 200 response should include Last-Modified header#58
lines
GETWhen retrieving a credit note preview, you’ll get a lines property containing...
WarningGET /v1/credit_notes/preview/lines requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/credit_notes/preview/lines does not support 'fields' query parameter for partial responses#23
InfoGET /v1/credit_notes/preview/lines 200 response should include Last-Modified header#58
{credit_note}
lines
GETWhen retrieving a credit note, you’ll get a lines property containing the the...
WarningGET /v1/credit_notes/{credit_note}/lines requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/credit_notes/{credit_note}/lines does not support 'fields' query parameter for partial responses#23
InfoGET /v1/credit_notes/{credit_note}/lines 200 response should include Last-Modified header#58
{id}
GETRetrieves the credit note object with the given identifier.
WarningGET /v1/credit_notes/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/credit_notes/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/credit_notes/{id} 200 response should include Last-Modified header#58
POSTUpdates an existing credit note.
WarningPOST /v1/credit_notes/{id} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/credit_notes/{id} appears to be idempotent; consider using PUT instead#82
void
POSTMarks a credit note as void
WarningPOST /v1/credit_notes/{id}/void requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/credit_notes/{id}/void appears to be idempotent; consider using PUT instead#82
WarningPOST /v1/credit_notes/{id}/void toggles state; consider splitting into PUT (to set) and DELETE (to unset)#83
customers
GETReturns a list of your customers
WarningGET /v1/customers requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers 200 response should include Last-Modified header#58
POSTCreates a new customer object.
WarningPOST /v1/customers requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers appears to create a resource but doesn't define a 201 response#34
search
GETSearch for customers you’ve previously created using Stripe’s Search Query La...
WarningGET /v1/customers/search requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/search does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/search 200 response should include Last-Modified header#58
{customer}
DELETEPermanently deletes a customer
WarningDELETE /v1/customers/{customer} requires authentication but does not define 401 Unauthorized response#9
GETRetrieves a Customer object.
WarningGET /v1/customers/{customer} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer} 200 response should include Last-Modified header#58
POSTUpdates the specified customer by setting the values of the parameters passed
WarningPOST /v1/customers/{customer} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer} appears to be idempotent; consider using PUT instead#82
balance_transactions
GETReturns a list of transactions that updated the customer’s balances.
WarningGET /v1/customers/{customer}/balance_transactions requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/balance_transactions does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/balance_transactions 200 response should include Last-Modified header#58
POSTCreates an immutable transaction that updates the customer’s credit balance.
WarningPOST /v1/customers/{customer}/balance_transactions requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/balance_transactions appears to create a resource but doesn't define a 201 response#34
{transaction}
GETRetrieves a specific customer balance transaction that updated the customer’s...
WarningGET /v1/customers/{customer}/balance_transactions/{transaction} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/balance_transactions/{transaction} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/balance_transactions/{transaction} 200 response should include Last-Modified header#58
POSTMost credit balance transaction fields are immutable, but you may update its ...
WarningPOST /v1/customers/{customer}/balance_transactions/{transaction} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/balance_transactions/{transaction} appears to be idempotent; consider using PUT instead#82
bank_accounts
GETYou can see a list of the bank accounts belonging to a Customer
WarningGET /v1/customers/{customer}/bank_accounts requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/bank_accounts does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/bank_accounts 200 response should include Last-Modified header#58
WarningGET /v1/customers/{customer}/bank_accounts is deprecated but lacks migration guidance (no replacement endpoint, timeline, or explanation)#79
POSTWhen you create a new credit card, you must specify a customer or recipient o...
WarningPOST /v1/customers/{customer}/bank_accounts requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/bank_accounts appears to create a resource but doesn't define a 201 response#34
{id}
DELETEDelete a specified source for a given customer.
WarningDELETE /v1/customers/{customer}/bank_accounts/{id} requires authentication but does not define 401 Unauthorized response#9
GETBy default, you can see the 10 most recent sources stored on a Customer direc...
WarningGET /v1/customers/{customer}/bank_accounts/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/bank_accounts/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/bank_accounts/{id} 200 response should include Last-Modified header#58
WarningGET /v1/customers/{customer}/bank_accounts/{id} is deprecated but lacks migration guidance (no replacement endpoint, timeline, or explanation)#79
POSTUpdate a specified source for a given customer.
WarningPOST /v1/customers/{customer}/bank_accounts/{id} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/bank_accounts/{id} appears to be idempotent; consider using PUT instead#82
verify
POSTVerify a specified bank account for a given customer.
WarningPOST /v1/customers/{customer}/bank_accounts/{id}/verify requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/bank_accounts/{id}/verify appears to be idempotent; consider using PUT instead#82
cards
GETYou can see a list of the cards belonging to a customer
WarningGET /v1/customers/{customer}/cards requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/cards does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/cards 200 response should include Last-Modified header#58
WarningGET /v1/customers/{customer}/cards is deprecated but lacks migration guidance (no replacement endpoint, timeline, or explanation)#79
POSTWhen you create a new credit card, you must specify a customer or recipient o...
WarningPOST /v1/customers/{customer}/cards requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/cards appears to create a resource but doesn't define a 201 response#34
{id}
DELETEDelete a specified source for a given customer.
WarningDELETE /v1/customers/{customer}/cards/{id} requires authentication but does not define 401 Unauthorized response#9
GETYou can always see the 10 most recent cards directly on a customer; this meth...
WarningGET /v1/customers/{customer}/cards/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/cards/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/cards/{id} 200 response should include Last-Modified header#58
WarningGET /v1/customers/{customer}/cards/{id} is deprecated but lacks migration guidance (no replacement endpoint, timeline, or explanation)#79
POSTUpdate a specified source for a given customer.
WarningPOST /v1/customers/{customer}/cards/{id} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/cards/{id} appears to be idempotent; consider using PUT instead#82
cash_balance
GETRetrieves a customer’s cash balance.
WarningGET /v1/customers/{customer}/cash_balance requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/cash_balance does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/cash_balance 200 response should include Last-Modified header#58
POSTChanges the settings on a customer’s cash balance.
WarningPOST /v1/customers/{customer}/cash_balance requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/cash_balance appears to be idempotent; consider using PUT instead#82
cash_balance_transactions
GETReturns a list of transactions that modified the customer’s cash balance.
WarningGET /v1/customers/{customer}/cash_balance_transactions requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/cash_balance_transactions does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/cash_balance_transactions 200 response should include Last-Modified header#58
{transaction}
GETRetrieves a specific cash balance transaction, which updated the customer’s c...
WarningGET /v1/customers/{customer}/cash_balance_transactions/{transaction} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/cash_balance_transactions/{transaction} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/cash_balance_transactions/{transaction} 200 response should include Last-Modified header#58
discount
DELETERemoves the currently applied discount on a customer.
WarningDELETE /v1/customers/{customer}/discount requires authentication but does not define 401 Unauthorized response#9
GET
WarningGET /v1/customers/{customer}/discount requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/discount does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/discount 200 response should include Last-Modified header#58
funding_instructions
POSTRetrieve funding instructions for a customer cash balance
WarningPOST /v1/customers/{customer}/funding_instructions requires authentication but does not define 401 Unauthorized response#9
payment_methods
GETReturns a list of PaymentMethods for a given Customer
WarningGET /v1/customers/{customer}/payment_methods requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/payment_methods does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/payment_methods 200 response should include Last-Modified header#58
{payment_method}
GETRetrieves a PaymentMethod object for a given Customer.
WarningGET /v1/customers/{customer}/payment_methods/{payment_method} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/payment_methods/{payment_method} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/payment_methods/{payment_method} 200 response should include Last-Modified header#58
sources
GETList sources for a specified customer.
WarningGET /v1/customers/{customer}/sources requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/sources does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/sources 200 response should include Last-Modified header#58
POSTWhen you create a new credit card, you must specify a customer or recipient o...
WarningPOST /v1/customers/{customer}/sources requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/sources appears to create a resource but doesn't define a 201 response#34
{id}
DELETEDelete a specified source for a given customer.
WarningDELETE /v1/customers/{customer}/sources/{id} requires authentication but does not define 401 Unauthorized response#9
GETRetrieve a specified source for a given customer.
WarningGET /v1/customers/{customer}/sources/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/sources/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/sources/{id} 200 response should include Last-Modified header#58
POSTUpdate a specified source for a given customer.
WarningPOST /v1/customers/{customer}/sources/{id} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/sources/{id} appears to be idempotent; consider using PUT instead#82
verify
POSTVerify a specified bank account for a given customer.
WarningPOST /v1/customers/{customer}/sources/{id}/verify requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/sources/{id}/verify appears to be idempotent; consider using PUT instead#82
subscriptions
GETYou can see a list of the customer’s active subscriptions
WarningGET /v1/customers/{customer}/subscriptions requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/subscriptions does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/subscriptions 200 response should include Last-Modified header#58
POSTCreates a new subscription on an existing customer.
WarningPOST /v1/customers/{customer}/subscriptions requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/subscriptions appears to create a resource but doesn't define a 201 response#34
{subscription_exposed_id}
DELETECancels a customer’s subscription
WarningDELETE /v1/customers/{customer}/subscriptions/{subscription_exposed_id} requires authentication but does not define 401 Unauthorized response#9
GETRetrieves the subscription with the given ID.
WarningGET /v1/customers/{customer}/subscriptions/{subscription_exposed_id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/subscriptions/{subscription_exposed_id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/subscriptions/{subscription_exposed_id} 200 response should include Last-Modified header#58
POSTUpdates an existing subscription on a customer to match the specified parameters
WarningPOST /v1/customers/{customer}/subscriptions/{subscription_exposed_id} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/subscriptions/{subscription_exposed_id} appears to be idempotent; consider using PUT instead#82
discount
DELETERemoves the currently applied discount on a customer.
WarningDELETE /v1/customers/{customer}/subscriptions/{subscription_exposed_id}/discount requires authentication but does not define 401 Unauthorized response#9
GET
WarningGET /v1/customers/{customer}/subscriptions/{subscription_exposed_id}/discount requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/subscriptions/{subscription_exposed_id}/discount does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/subscriptions/{subscription_exposed_id}/discount 200 response should include Last-Modified header#58
tax_ids
GETReturns a list of tax IDs for a customer.
WarningGET /v1/customers/{customer}/tax_ids requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/tax_ids does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/tax_ids 200 response should include Last-Modified header#58
POSTCreates a new TaxID object for a customer.
WarningPOST /v1/customers/{customer}/tax_ids requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/customers/{customer}/tax_ids appears to create a resource but doesn't define a 201 response#34
{id}
DELETEDeletes an existing TaxID object.
WarningDELETE /v1/customers/{customer}/tax_ids/{id} requires authentication but does not define 401 Unauthorized response#9
GETRetrieves the TaxID object with the given identifier.
WarningGET /v1/customers/{customer}/tax_ids/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/customers/{customer}/tax_ids/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/customers/{customer}/tax_ids/{id} 200 response should include Last-Modified header#58
disputes
GETReturns a list of your disputes.
WarningGET /v1/disputes requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/disputes does not support 'fields' query parameter for partial responses#23
InfoGET /v1/disputes 200 response should include Last-Modified header#58
{dispute}
GETRetrieves the dispute with the given ID.
WarningGET /v1/disputes/{dispute} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/disputes/{dispute} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/disputes/{dispute} 200 response should include Last-Modified header#58
POSTWhen you get a dispute, contacting your customer is always the best first step
WarningPOST /v1/disputes/{dispute} requires authentication but does not define 401 Unauthorized response#9
close
POSTClosing the dispute for a charge indicates that you do not have any evidence ...
WarningPOST /v1/disputes/{dispute}/close requires authentication but does not define 401 Unauthorized response#9
ephemeral_keys
POSTCreates a short-lived API key for a given resource.
WarningPOST /v1/ephemeral_keys requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/ephemeral_keys appears to create a resource but doesn't define a 201 response#34
{key}
DELETEInvalidates a short-lived API key for a given resource.
WarningDELETE /v1/ephemeral_keys/{key} requires authentication but does not define 401 Unauthorized response#9
events
GETList events, going back up to 30 days
WarningGET /v1/events requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/events does not support 'fields' query parameter for partial responses#23
InfoGET /v1/events 200 response should include Last-Modified header#58
{id}
GETRetrieves the details of an event
WarningGET /v1/events/{id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/events/{id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/events/{id} 200 response should include Last-Modified header#58
exchange_rates
GETReturns a list of objects that contain the rates at which foreign currencies ...
WarningGET /v1/exchange_rates requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/exchange_rates does not support 'fields' query parameter for partial responses#23
InfoGET /v1/exchange_rates 200 response should include Last-Modified header#58
{rate_id}
GETRetrieves the exchange rates from the given currency to every supported curre...
WarningGET /v1/exchange_rates/{rate_id} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/exchange_rates/{rate_id} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/exchange_rates/{rate_id} 200 response should include Last-Modified header#58
file_links
GETReturns a list of file links.
WarningGET /v1/file_links requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/file_links does not support 'fields' query parameter for partial responses#23
InfoGET /v1/file_links 200 response should include Last-Modified header#58
POSTCreates a new file link object.
WarningPOST /v1/file_links requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/file_links appears to create a resource but doesn't define a 201 response#34
{link}
GETRetrieves the file link with the given ID.
WarningGET /v1/file_links/{link} requires authentication but does not define 401 Unauthorized response#9
InfoGET /v1/file_links/{link} does not support 'fields' query parameter for partial responses#23
InfoGET /v1/file_links/{link} 200 response should include Last-Modified header#58
POSTUpdates an existing file link object
WarningPOST /v1/file_links/{link} requires authentication but does not define 401 Unauthorized response#9
WarningPOST /v1/file_links/{link} appears to be idempotent; consider using PUT instead#82

Want to evaluate your own API?

Sign up free and get 3 evaluations per day on the Starter plan.