# Brex (/integrations/brex)





{/* MANUAL-CONTENT-START:intro */}

Use [Brex](https://www.brex.com/) to retrieve spend data, update expense memos, manage budgets and vendors, and create transfers.

* List and filter expenses by status, owner, or purchase date; retrieve merchant, amount, and receipt details.
* Attach a receipt to a card expense or upload one for Brex to match automatically.
* Read settled card and cash transactions, account balances, and finalized statements.
* Read or create budgets and spend limits, inspect current-period balances, and archive budgets.
* Look up users, departments, locations, titles, cards, vendors, and transfers; create or update vendors.

Authenticate with a Brex user token from **Developer → Settings** in the Brex dashboard. **Create Transfer** can move money from a Brex cash account to a vendor. Set **Approval Type** to `MANUAL` when the transfer should require cash-admin approval, and inspect its returned status before assuming payment completed. Archiving a budget makes its child spend limits unusable for future expenses. The block does not issue cards or expose card numbers.

{/* MANUAL-CONTENT-END */}

## Use the block [#usage-instructions]

List and update expenses, upload and match receipts, view card and cash transactions, accounts, budgets, spend limits, vendors, transfers, and team data.

## Actions [#actions]

### Brex List Expenses [#brex-list-expenses]

List expenses in the Brex account with optional filters for user, status, payment status, and purchase date range

<ReferenceDetails>
  #### Input [#input]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `userIds` | string | No | Comma-separated user IDs to filter expenses by owner |
  | `statuses` | string | No | Comma-separated expense statuses to filter by: DRAFT, SUBMITTED, APPROVED, OUT\_OF\_POLICY, VOID, CANCELED, SPLIT, SETTLED |
  | `paymentStatuses` | string | No | Comma-separated payment statuses to filter by: NOT\_STARTED, PROCESSING, CANCELED, DECLINED, CLEARED, REFUNDING, REFUNDED, CASH\_ADVANCE, CREDITED, AWAITING\_PAYMENT, SCHEDULED |
  | `purchasedAtStart` | string | No | Only include expenses purchased at or after this ISO 8601 timestamp |
  | `purchasedAtEnd` | string | No | Only include expenses purchased at or before this ISO 8601 timestamp |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of expenses to return (max 100) |

  #### Output [#output]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Expenses matching the filters |
  | ↳ `id` | string | Unique expense ID |
  | ↳ `memo` | string | Memo on the expense |
  | ↳ `status` | string | Expense status (DRAFT, SUBMITTED, APPROVED, OUT\_OF\_POLICY, VOID, CANCELED, SPLIT, SETTLED) |
  | ↳ `payment_status` | string | Payment status (NOT\_STARTED, PROCESSING, CANCELED, DECLINED, CLEARED, REFUNDING, REFUNDED, CASH\_ADVANCE, CREDITED, AWAITING\_PAYMENT, SCHEDULED) |
  | ↳ `expense_type` | string | Expense type (CARD, BILLPAY, REIMBURSEMENT, CLAWBACK, UNSET) |
  | ↳ `category` | string | Expense category (e.g., RESTAURANTS, RECURRING\_SOFTWARE\_AND\_SAAS, AIRLINE\_EXPENSES) |
  | ↳ `merchant` | json | Merchant details |
  | ↳ `raw_descriptor` | string | Raw merchant descriptor |
  | ↳ `mcc` | string | Merchant category code |
  | ↳ `country` | string | Merchant country |
  | ↳ `user` | json | User who made the expense |
  | ↳ `id` | string | User ID |
  | ↳ `first_name` | string | First name |
  | ↳ `last_name` | string | Last name |
  | ↳ `budget` | json | Budget the expense belongs to |
  | ↳ `id` | string | Budget ID |
  | ↳ `name` | string | Budget name |
  | ↳ `department` | json | Department of the expense owner |
  | ↳ `id` | string | Department ID |
  | ↳ `name` | string | Department name |
  | ↳ `location` | json | Location of the expense owner |
  | ↳ `id` | string | Location ID |
  | ↳ `name` | string | Location name |
  | ↳ `original_amount` | json | Original transaction amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `billing_amount` | json | Amount billed to the account |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `purchased_amount` | json | Amount at the time of purchase |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `receipts` | array | Receipts attached to the expense |
  | ↳ `id` | string | Receipt ID |
  | ↳ `download_uris` | array | Pre-signed receipt download URLs |
  | ↳ `purchased_at` | string | Purchase timestamp (ISO 8601) |
  | ↳ `updated_at` | string | Last update timestamp (ISO 8601) |
  | ↳ `dashboard_url` | string | Link to the expense in the Brex dashboard |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex Get Expense [#brex-get-expense]

Get a single Brex expense by its ID, including merchant, user, and receipt details

<ReferenceDetails>
  #### Input [#input-1]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `expenseId` | string | Yes | ID of the expense to fetch |

  #### Output [#output-1]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique expense ID |
  | `memo` | string | Memo on the expense |
  | `status` | string | Expense status (DRAFT, SUBMITTED, APPROVED, OUT\_OF\_POLICY, VOID, CANCELED, SPLIT, SETTLED) |
  | `paymentStatus` | string | Payment status (NOT\_STARTED, PROCESSING, CANCELED, DECLINED, CLEARED, REFUNDING, REFUNDED, CASH\_ADVANCE, CREDITED, AWAITING\_PAYMENT, SCHEDULED) |
  | `expenseType` | string | Expense type (CARD, BILLPAY, REIMBURSEMENT, CLAWBACK, UNSET) |
  | `category` | string | Expense category (e.g., RESTAURANTS, RECURRING\_SOFTWARE\_AND\_SAAS, AIRLINE\_EXPENSES) |
  | `merchantId` | string | Merchant ID |
  | `merchant` | json | Merchant details (raw descriptor, MCC, country) |
  | ↳ `raw_descriptor` | string | Raw merchant descriptor |
  | ↳ `mcc` | string | Merchant category code |
  | ↳ `country` | string | Merchant country |
  | `budgetId` | string | Budget ID |
  | `budget` | json | Budget the expense belongs to |
  | ↳ `id` | string | Budget ID |
  | ↳ `name` | string | Budget name |
  | `departmentId` | string | Department ID |
  | `department` | json | Department of the expense owner |
  | ↳ `id` | string | Department ID |
  | ↳ `name` | string | Department name |
  | `locationId` | string | Location ID |
  | `location` | json | Location of the expense owner |
  | ↳ `id` | string | Location ID |
  | ↳ `name` | string | Location name |
  | `userId` | string | ID of the user who made the expense |
  | `user` | json | User who made the expense |
  | ↳ `id` | string | User ID |
  | ↳ `first_name` | string | First name |
  | ↳ `last_name` | string | Last name |
  | `originalAmount` | json | Original transaction amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `billingAmount` | json | Amount billed to the account |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `purchasedAmount` | json | Amount at the time of purchase |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `usdEquivalentAmount` | json | USD equivalent amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `purchasedAt` | string | Purchase timestamp (ISO 8601) |
  | `updatedAt` | string | Last update timestamp (ISO 8601) |
  | `paymentPostedAt` | string | Timestamp the payment was posted (ISO 8601) |
  | `receipts` | array | Receipts attached to the expense |
  | ↳ `id` | string | Receipt ID |
  | ↳ `download_uris` | array | Pre-signed receipt download URLs |
  | `dashboardUrl` | string | Link to the expense in the Brex dashboard |
</ReferenceDetails>

### Brex Update Expense [#brex-update-expense]

Update the memo of a Brex card expense

<ReferenceDetails>
  #### Input [#input-2]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `expenseId` | string | Yes | ID of the card expense to update |
  | `memo` | string | Yes | New memo for the expense |

  #### Output [#output-2]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique expense ID |
  | `memo` | string | Updated memo on the expense |
  | `status` | string | Expense status (DRAFT, SUBMITTED, APPROVED, OUT\_OF\_POLICY, VOID, CANCELED, SPLIT, SETTLED) |
  | `paymentStatus` | string | Payment status (NOT\_STARTED, PROCESSING, CANCELED, DECLINED, CLEARED, REFUNDING, REFUNDED, CASH\_ADVANCE, CREDITED, AWAITING\_PAYMENT, SCHEDULED) |
  | `category` | string | Expense category (e.g., RESTAURANTS, RECURRING\_SOFTWARE\_AND\_SAAS, AIRLINE\_EXPENSES) |
  | `merchantId` | string | Merchant ID |
  | `budgetId` | string | Budget ID |
  | `originalAmount` | json | Original transaction amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `billingAmount` | json | Amount billed to the account |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `purchasedAt` | string | Purchase timestamp (ISO 8601) |
  | `updatedAt` | string | Last update timestamp (ISO 8601) |
</ReferenceDetails>

### Brex Upload Receipt [#brex-upload-receipt]

Upload a receipt file and attach it to a specific Brex card expense

<ReferenceDetails>
  #### Input [#input-3]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `expenseId` | string | Yes | ID of the card expense to attach the receipt to |
  | `file` | file | Yes | Receipt file to upload (max 50 MB) |
  | `receiptName` | string | No | Receipt file name including extension (defaults to the uploaded file name) |

  #### Output [#output-3]

  | Parameter | Type | Description |
  | - | - | - |
  | `receiptId` | string | Unique identifier of the receipt upload |
  | `receiptName` | string | Name the receipt was uploaded with |
  | `expenseId` | string | ID of the expense the receipt was attached to |
</ReferenceDetails>

### Brex Match Receipt [#brex-match-receipt]

Upload a receipt file and let Brex automatically match it with existing expenses

<ReferenceDetails>
  #### Input [#input-4]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `file` | file | Yes | Receipt file to upload (max 50 MB) |
  | `receiptName` | string | No | Receipt file name including extension (defaults to the uploaded file name) |

  #### Output [#output-4]

  | Parameter | Type | Description |
  | - | - | - |
  | `receiptId` | string | Unique identifier of the receipt match request |
  | `receiptName` | string | Name the receipt was uploaded with |
  | `expenseId` | string | Always null for receipt match (Brex matches the receipt asynchronously) |
</ReferenceDetails>

### Brex List Card Transactions [#brex-list-card-transactions]

List settled card transactions for all Brex card accounts

<ReferenceDetails>
  #### Input [#input-5]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `userIds` | string | No | Comma-separated user IDs to filter transactions by cardholder |
  | `postedAtStart` | string | No | Only include transactions posted at or after this ISO 8601 timestamp |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of transactions to return (default 100, max 1000) |

  #### Output [#output-5]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Settled card transactions |
  | ↳ `id` | string | Unique transaction ID |
  | ↳ `card_id` | string | ID of the card used |
  | ↳ `description` | string | Transaction description |
  | ↳ `amount` | json | Transaction amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `initiated_at_date` | string | Date the transaction was initiated |
  | ↳ `posted_at_date` | string | Date the transaction was posted |
  | ↳ `type` | string | Transaction type (PURCHASE, REFUND, CHARGEBACK, REWARDS\_CREDIT, COLLECTION, BNPL\_FEE) |
  | ↳ `merchant` | json | Merchant details |
  | ↳ `raw_descriptor` | string | Raw merchant descriptor |
  | ↳ `mcc` | string | Merchant category code |
  | ↳ `country` | string | Merchant country |
  | ↳ `expense_id` | string | Associated expense ID |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex List Cash Transactions [#brex-list-cash-transactions]

List transactions for a Brex cash account

<ReferenceDetails>
  #### Input [#input-6]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `accountId` | string | Yes | ID of the cash account to list transactions for |
  | `postedAtStart` | string | No | Only include transactions posted at or after this ISO 8601 timestamp |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of transactions to return (default 100, max 1000) |

  #### Output [#output-6]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Cash account transactions |
  | ↳ `id` | string | Unique transaction ID |
  | ↳ `description` | string | Transaction description |
  | ↳ `amount` | json | Transaction amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `initiated_at_date` | string | Date the transaction was initiated |
  | ↳ `posted_at_date` | string | Date the transaction was posted |
  | ↳ `type` | string | Transaction type |
  | ↳ `transfer_id` | string | Associated transfer ID |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex List Card Accounts [#brex-list-card-accounts]

List all Brex card accounts with balances and limits

<ReferenceDetails>
  #### Input [#input-7]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |

  #### Output [#output-7]

  | Parameter | Type | Description |
  | - | - | - |
  | `accounts` | array | Card accounts |
  | ↳ `id` | string | Unique account ID |
  | ↳ `status` | string | Account status |
  | ↳ `current_balance` | json | Current balance |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `available_balance` | json | Available balance |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `account_limit` | json | Account limit |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `current_statement_period` | json | Current statement period (start\_date, end\_date) |
</ReferenceDetails>

### Brex List Cash Accounts [#brex-list-cash-accounts]

List all Brex cash accounts with balances and account details

<ReferenceDetails>
  #### Input [#input-8]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of accounts to return (default 100, max 1000) |

  #### Output [#output-8]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Cash accounts |
  | ↳ `id` | string | Unique account ID |
  | ↳ `name` | string | Account name |
  | ↳ `status` | string | Account status |
  | ↳ `current_balance` | json | Current balance |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `available_balance` | json | Available balance |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `account_number` | string | Bank account number |
  | ↳ `routing_number` | string | Bank routing number |
  | ↳ `primary` | boolean | Whether this is the primary cash account |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex Get Cash Account [#brex-get-cash-account]

Get a Brex cash account by ID, or the primary cash account when no ID is provided

<ReferenceDetails>
  #### Input [#input-9]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `accountId` | string | No | ID of the cash account (defaults to the primary cash account) |

  #### Output [#output-9]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique account ID |
  | `name` | string | Account name |
  | `status` | string | Account status |
  | `currentBalance` | json | Current balance |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `availableBalance` | json | Available balance |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `accountNumber` | string | Bank account number |
  | `routingNumber` | string | Bank routing number |
  | `primary` | boolean | Whether this is the primary cash account |
</ReferenceDetails>

### Brex List Card Statements [#brex-list-card-statements]

List finalized statements for the primary Brex card account

<ReferenceDetails>
  #### Input [#input-10]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of statements to return (default 100, max 1000) |

  #### Output [#output-10]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Finalized card account statements |
  | ↳ `id` | string | Unique statement ID |
  | ↳ `start_balance` | json | Balance at the start of the period |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `end_balance` | json | Balance at the end of the period |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `period` | json | Statement period (start\_date, end\_date) |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex List Cash Statements [#brex-list-cash-statements]

List finalized statements for a Brex cash account

<ReferenceDetails>
  #### Input [#input-11]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `accountId` | string | Yes | ID of the cash account to list statements for |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of statements to return (default 100, max 1000) |

  #### Output [#output-11]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Finalized cash account statements |
  | ↳ `id` | string | Unique statement ID |
  | ↳ `start_balance` | json | Balance at the start of the period |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `end_balance` | json | Balance at the end of the period |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `period` | json | Statement period (start\_date, end\_date) |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex List Users [#brex-list-users]

List users in the Brex account, optionally filtered by email

<ReferenceDetails>
  #### Input [#input-12]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `email` | string | No | Filter users by exact email address |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of users to return (default 100, max 1000) |

  #### Output [#output-12]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Users in the Brex account |
  | ↳ `id` | string | Unique user ID |
  | ↳ `first_name` | string | First name |
  | ↳ `last_name` | string | Last name |
  | ↳ `email` | string | Email address |
  | ↳ `status` | string | User status (INVITED, ACTIVE, CLOSED, DISABLED, DELETED, PENDING\_ACTIVATION, INACTIVE, ARCHIVED) |
  | ↳ `manager_id` | string | ID of the manager |
  | ↳ `department_id` | string | Department ID |
  | ↳ `location_id` | string | Location ID |
  | ↳ `title_id` | string | Title ID |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex Get User [#brex-get-user]

Get a Brex user by their ID

<ReferenceDetails>
  #### Input [#input-13]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `userId` | string | Yes | ID of the user to fetch |

  #### Output [#output-13]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique user ID |
  | `firstName` | string | First name |
  | `lastName` | string | Last name |
  | `email` | string | Email address |
  | `status` | string | User status (INVITED, ACTIVE, CLOSED, DISABLED, DELETED, PENDING\_ACTIVATION, INACTIVE, ARCHIVED) |
  | `managerId` | string | ID of the manager |
  | `departmentId` | string | Department ID |
  | `locationId` | string | Location ID |
  | `titleId` | string | Title ID |
</ReferenceDetails>

### Brex Get Current User [#brex-get-current-user]

Get the Brex user associated with the API token

<ReferenceDetails>
  #### Input [#input-14]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |

  #### Output [#output-14]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique user ID |
  | `firstName` | string | First name |
  | `lastName` | string | Last name |
  | `email` | string | Email address |
  | `status` | string | User status (INVITED, ACTIVE, CLOSED, DISABLED, DELETED, PENDING\_ACTIVATION, INACTIVE, ARCHIVED) |
  | `managerId` | string | ID of the manager |
  | `departmentId` | string | Department ID |
  | `locationId` | string | Location ID |
  | `titleId` | string | Title ID |
</ReferenceDetails>

### Brex List Departments [#brex-list-departments]

List departments in the Brex account, optionally filtered by name

<ReferenceDetails>
  #### Input [#input-15]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `name` | string | No | Filter departments by name |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of departments to return (default 100, max 1000) |

  #### Output [#output-15]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Departments in the Brex account |
  | ↳ `id` | string | Unique department ID |
  | ↳ `name` | string | Department name |
  | ↳ `description` | string | Department description |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex List Locations [#brex-list-locations]

List locations in the Brex account, optionally filtered by name

<ReferenceDetails>
  #### Input [#input-16]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `name` | string | No | Filter locations by name |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of locations to return (default 100, max 1000) |

  #### Output [#output-16]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Locations in the Brex account |
  | ↳ `id` | string | Unique location ID |
  | ↳ `name` | string | Location name |
  | ↳ `description` | string | Location description |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex List Titles [#brex-list-titles]

List job titles in the Brex account, optionally filtered by name

<ReferenceDetails>
  #### Input [#input-17]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `name` | string | No | Filter titles by name |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of titles to return (default 100, max 1000) |

  #### Output [#output-17]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Job titles in the Brex account |
  | ↳ `id` | string | Unique title ID |
  | ↳ `name` | string | Title name |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex List Cards [#brex-list-cards]

List cards in the Brex account, optionally filtered by card owner

<ReferenceDetails>
  #### Input [#input-18]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `userId` | string | No | Filter cards by the ID of the card owner |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of cards to return (default 100, max 1000) |

  #### Output [#output-18]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Cards in the Brex account |
  | ↳ `id` | string | Unique card ID |
  | ↳ `owner` | json | Card owner (type, user\_id) |
  | ↳ `status` | string | Card status |
  | ↳ `last_four` | string | Last four digits of the card number |
  | ↳ `card_name` | string | Card name |
  | ↳ `card_type` | string | Card type (VIRTUAL or PHYSICAL) |
  | ↳ `limit_type` | string | Limit type (CARD or USER) |
  | ↳ `spend_controls` | json | Spend controls on the card |
  | ↳ `billing_address` | json | Billing address of the card |
  | ↳ `expiration_date` | json | Card expiration date (month, year) |
  | ↳ `budget_id` | string | Associated budget ID |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex Get Company [#brex-get-company]

Get the Brex company associated with the API token

<ReferenceDetails>
  #### Input [#input-19]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |

  #### Output [#output-19]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique company ID |
  | `legalName` | string | Legal name of the company |
  | `mailingAddress` | json | Company mailing address (line1, line2, city, state, country, postal\_code) |
  | `accountType` | string | Brex account type (BREX\_CLASSIC or BREX\_EMPOWER) |
</ReferenceDetails>

### Brex List Budgets [#brex-list-budgets]

List budgets in the Brex account

<ReferenceDetails>
  #### Input [#input-20]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of budgets to return (default 100, max 1000) |

  #### Output [#output-20]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Budgets in the Brex account |
  | ↳ `budget_id` | string | Unique budget ID |
  | ↳ `account_id` | string | Account ID the budget belongs to |
  | ↳ `name` | string | Budget name |
  | ↳ `description` | string | Budget description |
  | ↳ `parent_budget_id` | string | Parent budget ID |
  | ↳ `owner_user_ids` | array | User IDs of the budget owners |
  | ↳ `period_recurrence_type` | string | Budget period recurrence (WEEKLY, MONTHLY, QUARTERLY, YEARLY, ONE\_TIME) |
  | ↳ `start_date` | string | Budget start date |
  | ↳ `end_date` | string | Budget end date |
  | ↳ `amount` | json | Budget amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `spend_budget_status` | string | Budget status |
  | ↳ `limit_type` | string | Budget limit type |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex Get Budget [#brex-get-budget]

Get a Brex budget by its ID

<ReferenceDetails>
  #### Input [#input-21]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `budgetId` | string | Yes | ID of the budget to fetch |

  #### Output [#output-21]

  | Parameter | Type | Description |
  | - | - | - |
  | `budgetId` | string | Unique budget ID |
  | `accountId` | string | Account ID the budget belongs to |
  | `name` | string | Budget name |
  | `description` | string | Budget description |
  | `parentBudgetId` | string | Parent budget ID |
  | `ownerUserIds` | array | User IDs of the budget owners |
  | `periodRecurrenceType` | string | Budget period recurrence (WEEKLY, MONTHLY, QUARTERLY, YEARLY, ONE\_TIME) |
  | `startDate` | string | Budget start date |
  | `endDate` | string | Budget end date |
  | `amount` | json | Budget amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `spendBudgetStatus` | string | Budget status (ACTIVE, ARCHIVED, DELETED) |
  | `limitType` | string | Budget limit type (HARD or SOFT) |
</ReferenceDetails>

### Brex Create Budget [#brex-create-budget]

Create a new budget in the Brex account

<ReferenceDetails>
  #### Input [#input-22]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `name` | string | Yes | Name for the budget |
  | `description` | string | Yes | Description of what the budget is used for |
  | `parentBudgetId` | string | Yes | ID of the parent budget |
  | `periodRecurrenceType` | string | Yes | Period type of the budget (WEEKLY, MONTHLY, QUARTERLY, YEARLY, ONE\_TIME) |
  | `amount` | number | Yes | Budget amount, in the smallest unit of the currency (e.g., cents for USD) |
  | `currency` | string | No | ISO 4217 currency code (defaults to USD) |
  | `ownerUserIds` | string | No | Comma-separated user IDs of the budget owners |
  | `startDate` | string | No | Date the budget should start counting (YYYY-MM-DD) |
  | `endDate` | string | No | Date the budget should stop counting (YYYY-MM-DD) |

  #### Output [#output-22]

  | Parameter | Type | Description |
  | - | - | - |
  | `budgetId` | string | Unique budget ID |
  | `accountId` | string | Account ID the budget belongs to |
  | `name` | string | Budget name |
  | `description` | string | Budget description |
  | `parentBudgetId` | string | Parent budget ID |
  | `ownerUserIds` | array | User IDs of the budget owners |
  | `periodRecurrenceType` | string | Budget period recurrence (WEEKLY, MONTHLY, QUARTERLY, YEARLY, ONE\_TIME) |
  | `startDate` | string | Budget start date |
  | `endDate` | string | Budget end date |
  | `amount` | json | Budget amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `spendBudgetStatus` | string | Status of the created budget |
  | `limitType` | string | Budget limit type |
</ReferenceDetails>

### Brex Archive Budget [#brex-archive-budget]

Archive a Brex budget, making any spend limits beneath it unusable for future expenses and removing it from the UI

<ReferenceDetails>
  #### Input [#input-23]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `budgetId` | string | Yes | ID of the budget to archive |

  #### Output [#output-23]

  | Parameter | Type | Description |
  | - | - | - |
  | `budgetId` | string | ID of the archived budget |
  | `spendBudgetStatus` | string | Status of the budget after archiving |
</ReferenceDetails>

### Brex List Spend Limits [#brex-list-spend-limits]

List spend limits in the Brex account, optionally filtered by member user

<ReferenceDetails>
  #### Input [#input-24]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `memberUserIds` | string | No | Comma-separated user IDs to filter spend limits by member |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of spend limits to return (default 100, max 1000) |

  #### Output [#output-24]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Spend limits in the Brex account |
  | ↳ `id` | string | Unique spend limit ID |
  | ↳ `account_id` | string | Account ID the spend limit belongs to |
  | ↳ `name` | string | Spend limit name |
  | ↳ `description` | string | Spend limit description |
  | ↳ `parent_budget_id` | string | Parent budget ID |
  | ↳ `status` | string | Spend limit status |
  | ↳ `period_recurrence_type` | string | Period recurrence (PER\_WEEK, PER\_MONTH, PER\_QUARTER, PER\_YEAR, ONE\_TIME) |
  | ↳ `spend_type` | string | Spend type of the limit |
  | ↳ `start_date` | string | Spend limit start date |
  | ↳ `end_date` | string | Spend limit end date |
  | ↳ `owner_user_ids` | array | User IDs of the spend limit owners |
  | ↳ `member_user_ids` | array | User IDs of the spend limit members |
  | ↳ `current_period_balance` | json | Spend and rollover amounts for the current period |
  | ↳ `start_date` | string | Start date of the current period |
  | ↳ `end_date` | string | End date of the current period |
  | ↳ `start_time` | string | Start time of the current period (ISO 8601) |
  | ↳ `end_time` | string | End time of the current period (ISO 8601) |
  | ↳ `amount_spent` | json | Amount spent in the current period |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `rollover_amount` | json | Amount rolled over from previous periods |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `authorization_settings` | json | Authorization settings (base limit, authorization type, rollover refresh) |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex Get Spend Limit [#brex-get-spend-limit]

Get a Brex spend limit by its ID

<ReferenceDetails>
  #### Input [#input-25]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `spendLimitId` | string | Yes | ID of the spend limit to fetch |

  #### Output [#output-25]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique spend limit ID |
  | `accountId` | string | Account ID the spend limit belongs to |
  | `name` | string | Spend limit name |
  | `description` | string | Spend limit description |
  | `parentBudgetId` | string | Parent budget ID |
  | `status` | string | Spend limit status (ACTIVE, EXPIRED, ARCHIVED) |
  | `periodRecurrenceType` | string | Period recurrence (PER\_WEEK, PER\_MONTH, PER\_QUARTER, PER\_YEAR, ONE\_TIME) |
  | `spendType` | string | Spend type of the limit |
  | `startDate` | string | Spend limit start date |
  | `endDate` | string | Spend limit end date |
  | `ownerUserIds` | array | User IDs of the spend limit owners |
  | `memberUserIds` | array | User IDs of the spend limit members |
  | `currentPeriodBalance` | json | Spend and rollover amounts for the current period |
  | ↳ `start_date` | string | Start date of the current period |
  | ↳ `end_date` | string | End date of the current period |
  | ↳ `start_time` | string | Start time of the current period (ISO 8601) |
  | ↳ `end_time` | string | End time of the current period (ISO 8601) |
  | ↳ `amount_spent` | json | Amount spent in the current period |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `rollover_amount` | json | Amount rolled over from previous periods |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `authorizationSettings` | json | Authorization settings (base limit, authorization type, rollover refresh) |
</ReferenceDetails>

### Brex Create Spend Limit [#brex-create-spend-limit]

Create a new spend limit (hard-authorization card program) in the Brex account

<ReferenceDetails>
  #### Input [#input-26]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `name` | string | Yes | Name for the spend limit |
  | `periodRecurrenceType` | string | Yes | Period type of the spend limit (PER\_WEEK, PER\_MONTH, PER\_QUARTER, PER\_YEAR, ONE\_TIME) |
  | `spendType` | string | Yes | Whether the spend limit can only be spent from cards it provisions (BUDGET\_PROVISIONED\_CARDS\_ONLY, NON\_BUDGET\_PROVISIONED\_CARDS\_ALLOWED) |
  | `expenseVisibility` | string | Yes | Whether expenses on this spend limit are viewable by all members (SHARED, PRIVATE) |
  | `authorizationVisibility` | string | Yes | Whether the limit amount is visible to all members, or just controllers/bookkeepers/owners (PUBLIC, PRIVATE) |
  | `limitIncreaseSetting` | string | Yes | Whether members can request limit increases (ENABLED, DISABLED) |
  | `autoTransferCardsSetting` | string | Yes | How auto transfer works for virtual cards on this spend limit (DISABLED, ENABLED) |
  | `autoCreateLimitCardsSetting` | string | Yes | How auto limit card creation works for members (DISABLED, ALL\_MEMBERS) |
  | `expensePolicyId` | string | Yes | ID of the expense policy corresponding to this spend limit |
  | `baseLimitAmount` | number | Yes | Base spend limit amount, without increases/rollovers, in the smallest unit of the currency (e.g., cents for USD) |
  | `currency` | string | No | ISO 4217 currency code for the base limit (defaults to USD) |
  | `authorizationType` | string | Yes | Whether authorizations decline based on available balance (HARD, SOFT) |
  | `rolloverRefreshRate` | string | Yes | Recurrence at which rolled-over unused funds stop rolling over (OFF, NEVER, PER\_MONTH, PER\_QUARTER, PER\_YEAR) |
  | `limitBufferPercentage` | number | No | Flexible buffer on the limit as a 0-100 percentage |
  | `description` | string | No | Description of what the spend limit is used for |
  | `parentBudgetId` | string | No | ID of the parent budget |
  | `startDate` | string | No | Date the spend limit should start counting (YYYY-MM-DD) |
  | `endDate` | string | No | Date the spend limit should expire (YYYY-MM-DD) |
  | `transactionLimitAmount` | number | No | Per-transaction limit this spend limit enforces, in the smallest unit of the currency |
  | `ownerUserIds` | string | No | Comma-separated user IDs of the spend limit owners |
  | `memberUserIds` | string | No | Comma-separated user IDs of the spend limit members |

  #### Output [#output-26]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique spend limit ID |
  | `accountId` | string | Account ID the spend limit belongs to |
  | `name` | string | Spend limit name |
  | `description` | string | Spend limit description |
  | `parentBudgetId` | string | Parent budget ID |
  | `status` | string | Spend limit status |
  | `periodRecurrenceType` | string | Period recurrence (PER\_WEEK, PER\_MONTH, PER\_QUARTER, PER\_YEAR, ONE\_TIME) |
  | `spendType` | string | Spend type of the limit |
  | `startDate` | string | Spend limit start date |
  | `endDate` | string | Spend limit end date |
  | `ownerUserIds` | array | User IDs of the spend limit owners |
  | `memberUserIds` | array | User IDs of the spend limit members |
  | `currentPeriodBalance` | json | Spend and rollover amounts for the current period |
  | ↳ `start_date` | string | Start date of the current period |
  | ↳ `end_date` | string | End date of the current period |
  | ↳ `start_time` | string | Start time of the current period (ISO 8601) |
  | ↳ `end_time` | string | End time of the current period (ISO 8601) |
  | ↳ `amount_spent` | json | Amount spent in the current period |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `rollover_amount` | json | Amount rolled over from previous periods |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `authorizationSettings` | json | Authorization settings (base limit, authorization type, rollover refresh) |
</ReferenceDetails>

### Brex List Vendors [#brex-list-vendors]

List vendors in the Brex account, optionally filtered by name

<ReferenceDetails>
  #### Input [#input-27]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `name` | string | No | Filter vendors by name |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of vendors to return (default 100, max 1000) |

  #### Output [#output-27]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Vendors in the Brex account |
  | ↳ `id` | string | Unique vendor ID |
  | ↳ `company_name` | string | Vendor company name |
  | ↳ `email` | string | Vendor email address |
  | ↳ `phone` | string | Vendor phone number |
  | ↳ `payment_accounts` | array | Payment accounts associated with the vendor |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex Get Vendor [#brex-get-vendor]

Get a Brex vendor by its ID

<ReferenceDetails>
  #### Input [#input-28]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `vendorId` | string | Yes | ID of the vendor to fetch |

  #### Output [#output-28]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique vendor ID |
  | `companyName` | string | Vendor company name |
  | `email` | string | Vendor email address |
  | `phone` | string | Vendor phone number |
  | `paymentAccounts` | array | Payment accounts associated with the vendor |
</ReferenceDetails>

### Brex Create Vendor [#brex-create-vendor]

Create a new vendor in the Brex account

<ReferenceDetails>
  #### Input [#input-29]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `companyName` | string | Yes | Name for the vendor (must be unique) |
  | `email` | string | No | Email address for the vendor |
  | `phone` | string | No | Phone number for the vendor |

  #### Output [#output-29]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique vendor ID |
  | `companyName` | string | Vendor company name |
  | `email` | string | Vendor email address |
  | `phone` | string | Vendor phone number |
  | `paymentAccounts` | array | Payment accounts associated with the vendor |
</ReferenceDetails>

### Brex Update Vendor [#brex-update-vendor]

Update an existing vendor in the Brex account

<ReferenceDetails>
  #### Input [#input-30]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `vendorId` | string | Yes | ID of the vendor to update |
  | `companyName` | string | No | New name for the vendor |
  | `email` | string | No | New email address for the vendor |
  | `phone` | string | No | New phone number for the vendor |

  #### Output [#output-30]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique vendor ID |
  | `companyName` | string | Vendor company name |
  | `email` | string | Vendor email address |
  | `phone` | string | Vendor phone number |
  | `paymentAccounts` | array | Payment accounts associated with the vendor |
</ReferenceDetails>

### Brex List Transfers [#brex-list-transfers]

List money transfers in the Brex account

<ReferenceDetails>
  #### Input [#input-31]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `cursor` | string | No | Pagination cursor from a previous response |
  | `limit` | string | No | Number of transfers to return (default 100, max 1000) |

  #### Output [#output-31]

  | Parameter | Type | Description |
  | - | - | - |
  | `items` | array | Transfers in the Brex account |
  | ↳ `id` | string | Unique transfer ID |
  | ↳ `counterparty` | json | Transfer counterparty details |
  | ↳ `description` | string | Transfer description |
  | ↳ `payment_type` | string | Payment type (ACH, DOMESTIC\_WIRE, CHEQUE, INTERNATIONAL\_WIRE, BOOK\_TRANSFER, STABLECOIN) |
  | ↳ `amount` | json | Transfer amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | ↳ `process_date` | string | Date the transfer processes |
  | ↳ `originating_account` | json | Account the transfer originates from |
  | ↳ `status` | string | Transfer status (PROCESSING, SCHEDULED, PENDING\_APPROVAL, FAILED, PROCESSED) |
  | ↳ `cancellation_reason` | string | Reason the transfer was canceled |
  | ↳ `estimated_delivery_date` | string | Estimated delivery date |
  | ↳ `creator_user_id` | string | ID of the user who created the transfer |
  | ↳ `created_at` | string | Creation timestamp |
  | ↳ `display_name` | string | Transfer display name |
  | ↳ `external_memo` | string | External memo |
  | ↳ `is_ppro_enabled` | boolean | Whether Principal Protection (PPRO) is enabled |
  | `nextCursor` | string | Cursor for fetching the next page of results |
</ReferenceDetails>

### Brex Get Transfer [#brex-get-transfer]

Get a Brex money transfer by its ID

<ReferenceDetails>
  #### Input [#input-32]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `transferId` | string | Yes | ID of the transfer to fetch |

  #### Output [#output-32]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique transfer ID |
  | `counterparty` | json | Transfer counterparty details |
  | `description` | string | Transfer description |
  | `paymentType` | string | Payment type (ACH, DOMESTIC\_WIRE, CHEQUE, INTERNATIONAL\_WIRE, BOOK\_TRANSFER, STABLECOIN) |
  | `amount` | json | Transfer amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `processDate` | string | Date the transfer processes |
  | `originatingAccount` | json | Account the transfer originates from |
  | `status` | string | Transfer status (PROCESSING, SCHEDULED, PENDING\_APPROVAL, FAILED, PROCESSED) |
  | `cancellationReason` | string | Reason the transfer was canceled |
  | `estimatedDeliveryDate` | string | Estimated delivery date |
  | `creatorUserId` | string | ID of the user who created the transfer |
  | `createdAt` | string | Creation timestamp |
  | `displayName` | string | Transfer display name |
  | `externalMemo` | string | External memo |
  | `isPproEnabled` | boolean | Whether Principal Protection (PPRO) is enabled |
</ReferenceDetails>

### Brex Create Transfer [#brex-create-transfer]

Create a money transfer from a Brex cash account to a vendor

<ReferenceDetails>
  #### Input [#input-33]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Brex user token (generated from Developer Settings in the Brex dashboard) |
  | `cashAccountId` | string | Yes | ID of the Brex cash account to send the transfer from (found via the /accounts endpoint) |
  | `vendorPaymentInstrumentId` | string | Yes | ID of the vendor's payment instrument to send the transfer to (from the vendor's payment\_accounts) |
  | `amount` | number | Yes | Amount to transfer, in the smallest unit of the currency (e.g., cents for USD) |
  | `currency` | string | No | ISO 4217 currency code (defaults to USD) |
  | `description` | string | Yes | Description of the transfer for internal use (not exposed externally) |
  | `externalMemo` | string | Yes | External memo shown to the recipient (max 90 characters for ACH/Wire, 40 for Cheque) |
  | `approvalType` | string | No | Set to MANUAL to require cash admin approval before the transfer is sent |
  | `isPproEnabled` | boolean | No | Enable Principal Protection (PPRO) to have Brex cover intermediary/receiving bank fees (international wires only) |

  #### Output [#output-33]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Unique transfer ID |
  | `counterparty` | json | Transfer counterparty details |
  | `description` | string | Description of the transfer |
  | `paymentType` | string | Payment type (ACH, DOMESTIC\_WIRE, CHEQUE, INTERNATIONAL\_WIRE, BOOK\_TRANSFER, STABLECOIN) |
  | `amount` | json | Transfer amount |
  | ↳ `amount` | number | Amount in the smallest unit of the currency (e.g., cents for USD) |
  | ↳ `currency` | string | ISO 4217 currency code (e.g., USD) |
  | `processDate` | string | Transaction processing date |
  | `originatingAccount` | json | Originating account details for the transfer |
  | `status` | string | Transfer status (PROCESSING, SCHEDULED, PENDING\_APPROVAL, FAILED, PROCESSED) |
  | `cancellationReason` | string | Reason the transfer was canceled |
  | `estimatedDeliveryDate` | string | Estimated delivery date for the transfer |
  | `creatorUserId` | string | ID of the user who created the transfer |
  | `createdAt` | string | Creation timestamp of the transfer |
  | `displayName` | string | Human-readable name of the transfer |
  | `externalMemo` | string | External memo of the transfer |
  | `isPproEnabled` | boolean | Whether Principal Protection (PPRO) is enabled for the transfer |
</ReferenceDetails>
