Skip to content
Get started

List linked bank accounts

GET/v1/linked_bank_accounts

Returns a list of bank accounts associated with a specific Straddle account. The linked bank accounts are returned sorted by creation date, with the most recently created appearing first. This endpoint supports pagination to handle accounts with multiple linked bank accounts.

Query ParametersExpand Collapse
account_id: optional string

The unique identifier of the related account.

formatuuid
level: optional "account" or "platform"
One of the following:
"account"
"platform"
page_number: optional number

Results page number. Starts at page 1.

formatint32
page_size: optional number

Page size. Max value: 1000

formatint32
purpose: optional "charges" or "payouts" or "billing"

The purpose of the linked bank accounts to return. Possible values: 'charges', 'payouts', 'billing'.

One of the following:
"charges"
"payouts"
"billing"
sort_by: optional string

Sort By.

sort_order: optional "asc" or "desc"

Sort Order.

One of the following:
"asc"
"desc"
status: optional "created" or "onboarding" or "active" or 3 more

The status of the linked bank accounts to return. Possible values: 'created', 'onboarding', 'active', 'inactive', 'rejected'.

One of the following:
"created"
"onboarding"
"active"
"rejected"
"inactive"
"canceled"
Header ParametersExpand Collapse
"correlation-id": optional string
"request-id": optional string
ReturnsExpand Collapse
LinkedBankAccountPagedV1 = object { data, meta, response_type }
data: array of object { id, account_id, bank_account, 8 more }
id: string

Unique identifier for the linked bank account.

formatuuid
account_id: string

The unique identifier of the Straddle account related to this bank account.

formatuuid
bank_account: object { account_holder, account_mask, institution_name, routing_number }
account_holder: string
account_mask: string
institution_name: string
routing_number: string
created_at: string

Timestamp of when the bank account object was created.

formatdate-time
purposes: array of "charges" or "payouts" or "billing"

The purposes for the linked bank account.

One of the following:
"charges"
"payouts"
"billing"
status: "created" or "onboarding" or "active" or 3 more

The current status of the linked bank account.

One of the following:
"created"
"onboarding"
"active"
"rejected"
"inactive"
"canceled"
status_detail: object { code, message, reason, source }
code: string

A machine-readable code for the specific status, useful for programmatic handling.

message: string

A human-readable message describing the current status.

reason: "unverified" or "in_review" or "pending" or 5 more

A machine-readable identifier for the specific status, useful for programmatic handling.

One of the following:
"unverified"
"in_review"
"pending"
"stuck"
"verified"
"failed_verification"
"disabled"
"new"
source: "watchtower"

Identifies the origin of the status change (e.g., watchtower). This helps in tracking the cause of status updates.

updated_at: string

Timestamp of the most recent update to the linked bank account.

formatdate-time
description: optional string

Optional description for the bank account.

metadata: optional map[string]

Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the linked bank account in a structured format.

platform_id: optional string

The unique identifier of the Straddle Platform relatd to this bank account.

formatuuid
meta: PagedResponseMetadata { api_request_id, api_request_timestamp, max_page_size, 6 more }

Metadata about the API request, including an identifier, timestamp, and pagination details.

api_request_id: string

Unique identifier for this API request, useful for troubleshooting.

formatuuid
api_request_timestamp: string

Timestamp for this API request, useful for troubleshooting.

formatdate-time
max_page_size: number

Maximum allowed page size for this endpoint.

formatint32
page_number: number

Page number for paginated results.

formatint32
page_size: number

Number of items per page in this response.

formatint32
sort_by: string

The field that the results were sorted by.

sort_order: "asc" or "desc"
One of the following:
"asc"
"desc"
total_items: number

Total number of items returned in this response.

formatint32
total_pages: number

The number of pages available.

formatint32
response_type: "object" or "array" or "error" or "none"

Indicates the structure of the returned content.

  • "object" means the data field contains a single JSON object.
  • "array" means the data field contains an array of objects.
  • "error" means the data field contains an error object with details of the issue.
  • "none" means no data is returned.
One of the following:
"object"
"array"
"error"
"none"

List linked bank accounts

curl https://sandbox.straddle.com/v1/linked_bank_accounts \
    -H "Authorization: Bearer $STRADDLE_API_KEY"
{
  "data": [
    {
      "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "account_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "bank_account": {
        "account_holder": "account_holder",
        "account_mask": "account_mask",
        "institution_name": "institution_name",
        "routing_number": "routing_number"
      },
      "created_at": "2019-12-27T18:11:19.117Z",
      "purposes": [
        "charges"
      ],
      "status": "created",
      "status_detail": {
        "code": "code",
        "message": "message",
        "reason": "unverified",
        "source": "watchtower"
      },
      "updated_at": "2019-12-27T18:11:19.117Z",
      "description": "description",
      "metadata": {
        "foo": "string"
      },
      "platform_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
    }
  ],
  "meta": {
    "api_request_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "api_request_timestamp": "2019-12-27T18:11:19.117Z",
    "max_page_size": 0,
    "page_number": 0,
    "page_size": 0,
    "sort_by": "sort_by",
    "sort_order": "asc",
    "total_items": 0,
    "total_pages": 0
  },
  "response_type": "object"
}
Returns Examples
{
  "data": [
    {
      "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "account_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "bank_account": {
        "account_holder": "account_holder",
        "account_mask": "account_mask",
        "institution_name": "institution_name",
        "routing_number": "routing_number"
      },
      "created_at": "2019-12-27T18:11:19.117Z",
      "purposes": [
        "charges"
      ],
      "status": "created",
      "status_detail": {
        "code": "code",
        "message": "message",
        "reason": "unverified",
        "source": "watchtower"
      },
      "updated_at": "2019-12-27T18:11:19.117Z",
      "description": "description",
      "metadata": {
        "foo": "string"
      },
      "platform_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
    }
  ],
  "meta": {
    "api_request_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "api_request_timestamp": "2019-12-27T18:11:19.117Z",
    "max_page_size": 0,
    "page_number": 0,
    "page_size": 0,
    "sort_by": "sort_by",
    "sort_order": "asc",
    "total_items": 0,
    "total_pages": 0
  },
  "response_type": "object"
}