openapi: 3.0.0 info: title: BigCommerce Abandoned Cart Emails Stored Instruments API version: 3.0.0 termsOfService: https://www.bigcommerce.com/terms description: Abandoned Cart Emails V3 API managing Handlebars-based emails. contact: name: BigCommerce url: https://www.bigcommerce.com email: support@bigcommerce.com servers: - url: https://api.bigcommerce.com/stores/{store_hash}/v3 variables: store_hash: default: store_hash description: Permanent ID of the BigCommerce store. description: BigCommerce API Gateway security: - X-Auth-Token: [] tags: - name: Stored Instruments paths: /customers/{customerId}/stored-instruments: parameters: - schema: type: string name: customerId in: path required: true get: summary: BigCommerce Get Stored Instruments tags: - Stored Instruments description: Lists all available stored instruments for a customer. This list will include all types of stored instruments namely card, account and bank_account instruments operationId: getCustomerStoredInstruments parameters: - $ref: '#/components/parameters/customerId' responses: '200': description: OK content: application/json: schema: type: array items: oneOf: - $ref: '#/components/schemas/CardInstrument' - $ref: '#/components/schemas/PayPalAccountInstrument' - $ref: '#/components/schemas/BankAccountInstrument' discriminator: propertyName: type mapping: stored_card: '#/components/schemas/CardInstrument' stored_paypal_account: '#/components/schemas/PaypalAccountInstrument' stored_bank_account: '#/components/schemas/BankAccountInstrument' examples: example-1: value: - type: stored_card token: 84596bea275fa254da820056bdc3e495bdf01fd11c51b0336347d447ee16200c is_default: true brand: VISA expiry_month: 1 expiry_year: 0 issuer_identification_number: '411111' last_4: '1111' billing_address: first_name: Tester last_name: Tester email: example@email.com company: Test Company address1: 1 Sample Street address2: Apt 1 city: Las Vegas postal_code: '90854' state_or_province: Nevada state_or_province_code: NV country_code: US phone: 101-192-0293 '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: code: 401 message: Unauthorized '403': description: Missing scope - the v3 Auth token is valid but does not have proper permissions to access this endpoint. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: code: 403 message: Missing scope components: schemas: BillingAddress: type: object properties: first_name: type: string description: First name of the card holder. example: Tester last_name: type: string description: Last name of the card holder. example: Tester email: type: string example: example@example.com company: type: string description: Company of the card holder. example: Test Company address1: type: string example: 1 Sample Street address2: type: string example: Apt 1 city: type: string example: Las Vegas postal_code: type: string example: '90854' state_or_province: type: string description: Represents state or province. example: Nevada state_or_province_code: type: string example: NV country_code: type: string description: ISO-3166-1 2 letter country code. example: US phone: type: string example: 101-192-0293 x-internal: false CardInstrument: type: object title: Card Instrument properties: type: type: string description: Type of instrument. enum: - stored_card token: type: string description: An identifier representing this stored instrument. example: 84596bea275fa254da820056bdc3e495bdf01fd11c51b0336347d447ee16200c is_default: type: boolean description: Identifies whether this stored instrument is default for the customer. brand: type: string description: Card brand. example: VISA expiry_month: maximum: 12 minimum: 1 type: integer description: Expiry month for this card. expiry_year: type: integer description: Expiry year for this card. issuer_identification_number: type: string description: Issuer identification number for this card. example: '411111' last_4: type: string description: Last four digits of this card. example: '1111' billing_address: $ref: '#/components/schemas/BillingAddress' description: Details about a stored card instrument which includes details around billing, last 4 digits, issuer, etc. x-internal: false ErrorResponse: title: Error Response type: object properties: status: description: The HTTP status code. type: integer format: int32 title: description: The error title describing the particular error. type: string type: description: A link to a list of BigCommerce API status codes. type: string instance: type: string errors: type: object additionalProperties: type: string x-internal: false BankAccountInstrument: type: object title: Bank Account Instrument properties: type: type: string description: Instrument type. enum: - stored_bank_account token: type: string description: An identifier representing this stored instrument. example: 84596bea275fa254da820056bdc3e495bdf01fd11c51b0336347d447ee16200c is_default: type: boolean description: Identifies whether this stored instrument is default for the customer. masked_account_number: type: string description: A masked bank account number. example: 12XXX56 issuer: type: string description: Issuer identifier for the account. example: DE001 description: A stored bank account instrument. x-internal: false PayPalAccountInstrument: type: object title: PayPal Account Instrument properties: type: type: string description: Instrument type. enum: - stored_paypal_account token: type: string description: An identifier representing this stored instrument. example: 84596bea275fa254da820056bdc3e495bdf01fd11c51b0336347d447ee16200c is_default: type: boolean description: Identifies whether this stored instrument is default for the customer. email: type: string description: PayPal email address. example: bc-buyer-paypal-express@example.com description: A PayPal account stored instrument. x-internal: false parameters: customerId: name: customerId in: path required: true description: The ID of the customer. schema: type: integer securitySchemes: X-Auth-Token: name: X-Auth-Token description: '### OAuth scopes | UI Name | Permission | Parameter | |:--|:--|:-| | Information & Settings | read-only | `store_v2_information_read_only`| | Information & Settings | modify | `store_v2_information` | ### Authentication header | Header | Argument | Description | |:-|:|:| | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our [Guide to API Accounts](/docs/start/authentication/api-accounts). | ### Further reading For example requests and more information about authenticating BigCommerce APIs, see [Authentication and Example Requests](/docs/start/authentication#x-auth-token-header-example-requests). For more about BigCommerce OAuth scopes, see our [Guide to API Accounts](/docs/start/authentication/api-accounts#oauth-scopes). For a list of API status codes, see [API Status Codes](/docs/start/about/status-codes).' type: apiKey in: header