Stripe External API

The External API from Stripe — 2 operation(s) for external.

OpenAPI Specification

stripe-external-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Stripe Accounts Account External 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: External
paths:
  /v1/accounts/{account}/external_accounts:
    get:
      description: <p>List external accounts for an account.</p>
      operationId: GetAccountsAccountExternalAccounts
      parameters:
      - in: path
        name: account
        required: true
        schema:
          maxLength: 5000
          type: string
        style: simple
      - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
        in: query
        name: ending_before
        required: false
        schema:
          type: string
        style: form
      - description: Specifies which fields in the response should be expanded.
        explode: true
        in: query
        name: expand
        required: false
        schema:
          items:
            maxLength: 5000
            type: string
          type: array
        style: deepObject
      - description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
        in: query
        name: limit
        required: false
        schema:
          type: integer
        style: form
      - description: Filter external accounts according to a particular object type.
        in: query
        name: object
        required: false
        schema:
          enum:
          - bank_account
          - card
          maxLength: 5000
          type: string
          x-stripeBypassValidation: true
        style: form
      - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
        in: query
        name: starting_after
        required: false
        schema:
          type: string
        style: form
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding: {}
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/GetAccountsAccountExternalAccountsRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                description: ''
                x-expandableFields:
                - data
                $ref: '#/components/schemas/ExternalAccountList'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe List External Accounts
      tags:
      - External
      x-api-evangelist-processing:
        ChooseTags: true
    post:
      description: <p>Create an external account for a given account.</p>
      operationId: PostAccountsAccountExternalAccounts
      parameters:
      - in: path
        name: account
        required: true
        schema:
          maxLength: 5000
          type: string
        style: simple
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding:
              bank_account:
                explode: true
                style: deepObject
              expand:
                explode: true
                style: deepObject
              metadata:
                explode: true
                style: deepObject
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/PostAccountsAccountExternalAccountsRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external_account'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Create External Account
      tags:
      - External
      x-api-evangelist-processing:
        ChooseTags: true
  /v1/accounts/{account}/external_accounts/{id}:
    delete:
      description: <p>Delete a specified external account for a given account.</p>
      operationId: DeleteAccountsAccountExternalAccountsId
      parameters:
      - in: path
        name: account
        required: true
        schema:
          maxLength: 5000
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding: {}
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/DeleteAccountsAccountExternalAccountsIdRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/deleted_external_account'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Delete External Account
      tags:
      - External
      x-api-evangelist-processing:
        ChooseTags: true
    get:
      description: <p>Retrieve a specified external account for a given account.</p>
      operationId: GetAccountsAccountExternalAccountsId
      parameters:
      - in: path
        name: account
        required: true
        schema:
          maxLength: 5000
          type: string
        style: simple
      - description: Specifies which fields in the response should be expanded.
        explode: true
        in: query
        name: expand
        required: false
        schema:
          items:
            maxLength: 5000
            type: string
          type: array
        style: deepObject
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding: {}
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/GetAccountsAccountExternalAccountsIdRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external_account'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Retrieve External Account
      tags:
      - External
      x-api-evangelist-processing:
        ChooseTags: true
    post:
      description: '<p>Updates the metadata, account holder name, account holder type of a bank account belonging to a <a href="/docs/connect/custom-accounts">Custom account</a>, and optionally sets it as the default for its currency. Other bank account details are not editable by design.</p>


        <p>You can re-enable a disabled bank account by performing an update call without providing any arguments or changes.</p>'
      operationId: PostAccountsAccountExternalAccountsId
      parameters:
      - in: path
        name: account
        required: true
        schema:
          maxLength: 5000
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding:
              documents:
                explode: true
                style: deepObject
              expand:
                explode: true
                style: deepObject
              metadata:
                explode: true
                style: deepObject
            schema:
              additionalProperties: false
              $ref: '#/components/schemas/PostAccountsAccountExternalAccountsIdRequest'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external_account'
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
          description: Error response.
      summary: Stripe Update External Account
      tags:
      - External
      x-api-evangelist-processing:
        ChooseTags: true
components:
  schemas:
    external_account:
      anyOf:
      - $ref: '#/components/schemas/bank_account'
      - $ref: '#/components/schemas/card'
      title: Polymorphic
      x-resourceId: external_account
      x-stripeBypassValidation: true
    deleted_external_account:
      anyOf:
      - $ref: '#/components/schemas/deleted_bank_account'
      - $ref: '#/components/schemas/deleted_card'
      title: Polymorphic
      x-resourceId: deleted_external_account
      x-stripeBypassValidation: true
    error:
      description: An error response from the Stripe API
      properties:
        error:
          $ref: '#/components/schemas/api_errors'
      required:
      - error
      type: object