Auto-categorise
- New transaction lands
- Agent classifies based on history + memo
- Writes the category back
84 tools available
Brex provides corporate credit cards, spend management, and financial tools tailored for startups and tech businesses to optimize cash flow, accounting, and growth
Connect Brex to Definable to auto-categorise transactions, draft invoices on closed deals, surface cash-flow signals. Personas call Brex's 84 tools directly from chat or scheduled flows. Pair with a finance persona to keep books current and surface what needs human review.
Every Brex action below is a callable tool any Definable persona can invoke.
Add webhook subscription members to a webhook group. This action associates one or more webhook subscriptions with an existing webhook group, allowing those subscriptions to receive events targeted at the group. Note: Webhook groups are only available for Brex partner accounts. Requires an existing webhook group ID and valid webhook subscription IDs. Use this when you need to organize webhook subscriptions into groups for easier management of webhook events across multiple subscriptions.
Archive a budget to mark it as inactive and prevent future expenses. Archives the specified budget, making it unusable for new transactions and removing it from active budget lists in the UI. This action is permanent and cannot be undone.
Archive a spend limit in Brex. Archives an existing spend limit to remove it from active use, making it unusable for future expenses and hiding it from the UI. Once archived, the spend limit cannot be used to authorize new transactions.
Create a new budget for departments or projects.
Tool to create a new Spend Limit (Budget) in Brex. Use when you need to set up spending controls with specific limits, visibility settings, and period types.
Create a new card and assign it to a user.
Create a new department.
Create a document upload URL for a referral and return a pre-signed S3 upload URL. Use this tool when you need to upload supporting documents for a business referral application. The tool returns a pre-signed S3 URL that can be used to upload document files (PDF, JPG, PNG, etc.) up to 50 MB. The pre-signed URL expires 30 minutes after creation and can only be used for a PUT operation. Supported document types: - ARTICLES_OF_INCORPORATION: Company incorporation documents - IRS_EIN_CONFIRMATION: IRS CP 575 or 147C form (EIN confirmation letter) - IRS_EIN_APPLICATION: IRS SS4 form (Application for Employer Identification Number) - CERTIFICATE_GOOD_STANDING: Certificate of good standing from the state
Create a new expense.
Create a new custom field in Brex. Use when you need to add custom metadata fields for accounting or ERP integrations. Fields can be associated with specific integrations and can be enabled or disabled as needed.
Create custom field values for a specific Brex field. Use when you need to add new dropdown options or values to a custom field (up to 1000 values per request). This action allows you to bulk-create field values for custom fields in Brex. Custom fields are used throughout Brex for categorizing expenses, cards, budgets, and other entities. Each value can have a custom ID, be marked as disabled, and include an external system reference for integrations.
Create a new location.
Tool to create a new referral to Brex for onboarding. Use when you want to refer a prospect to Brex and get a personalized application link. The response contains a unique referral ID and a personalized signup URL. Many fields are optional; when provided, they prefill the application form for the prospect. The referral link expires after a certain time period.
Tool to create a spend limit in Brex. Use when you need to establish spending controls with authorization settings, visibility rules, and policy associations. Requires expense policy ID and authorization settings. Optionally link to parent budget.
Create a new job title.
Create a new user in the Brex account.
Create a new vendor in Brex for payment operations. The vendor company name must be unique within your Brex account - attempting to create a vendor with a duplicate name will result in an error. You can optionally include contact information (email, phone) and payment account details (ACH, wire transfer, or check) at creation time. Returns a vendor ID that can be used in transfer operations and other vendor-related actions.
Tool to create a webhook group for targeting webhook subscriptions. Use when you need to create a webhook group to organize webhook subscriptions for specific members. Webhook groups are only available for partners.
Register a new webhook subscription to receive real-time notifications for Brex events. This allows you to be notified via HTTPS POST requests when events occur, such as USER_UPDATED, EXPENSE_PAYMENT_UPDATED, TRANSFER_PROCESSED, TRANSFER_FAILED, and others. Note: Currently only one webhook endpoint can be registered per customer/client_id, though each endpoint can handle multiple event types. Requires 'openid' and 'offline_access' OAuth scopes, plus event-specific scopes (e.g., 'expenses.card.readonly' for EXPENSE_PAYMENT_UPDATED).
Tool to delete a custom field by Brex ID. Use when you need to permanently remove a custom field from the system.
Delete custom field values for a specific field. You can delete up to 1000 values at once. Each value must be identified by exactly one of: brex_id (Brex-generated ID), value_id (value identifier), or remote_id (external system ID). Use this when you need to bulk delete field values from a custom field.
Delete a vendor by ID. Use this when you need to remove a vendor from the system. The vendor must exist and not have any pending transactions or dependencies.
Get finalized statements for the primary cash account. Returns statement history including start and end balances for each statement period.
Get detailed information about a specific budget. This action retrieves comprehensive budget details including balance, limits, ownership, and period information from the Brex v2 Budgets API.
Get detailed information about a specific card.
Tool to retrieve detailed information about a specific card expense by its ID. Use when you need to get comprehensive details about a card transaction, including merchant information, amounts, status, and other expense metadata. Supports expanding additional fields like merchant MCC code, location, department, user, budget, and payment details.
Get card number, CVV, and expiration date for a specific card.
Get settled card transactions for the primary card account. Returns purchases, refunds, and chargebacks that have been posted/settled. Use the next_cursor field in the response for pagination to retrieve additional results. No server-side date filtering is supported; filter by posted_at_date client-side after fetching. For large accounts, process pages incrementally rather than accumulating all results in memory.
Retrieve all cash (deposit) accounts for the company. Returns account details including balances, account numbers, routing numbers, and status. Use this to view available cash accounts, check balances, or get account information for transfers. Each Brex account has at least one primary cash account. Requires the 'accounts.cash.readonly' scope.
Get company information associated with the OAuth2 access token. Returns details including company ID, legal name, account type, and mailing address.
Get detailed information about a specific department by ID. Use when you need to retrieve department details for a given department identifier.
Tool to get details of a specific expense by ID. Use when you need to retrieve complete information about an expense including merchant details, receipts, budget allocation, and payment status.
Tool to retrieve a custom field by its Brex ID. Use when you need detailed information about a specific custom field.
Tool to retrieve a specific field value by field ID and field value ID. Use when you need details about a custom field value.
Tool to retrieve a legal entity by its ID from Brex. Use when you need detailed information about a specific legal entity.
Get detailed information about a specific location by ID. Use when you need to retrieve location details for a given location identifier.
Tool to retrieve a specific referral by its ID from Brex. Use when you need to check the status of a referral or get the signup URL.
Tool to get detailed information about a specific spend limit by its ID. Use when you need to retrieve the configuration, status, balance, or settings of a particular spend limit.
Get spend limits configuration.
Get detailed information about a specific job title by ID. Use when you need to retrieve title details for a given title identifier.
Get details of a specific transaction by ID. Retrieves detailed information about a card transaction including amount, merchant details, dates, and metadata. This action searches through recent transactions to find the one matching the provided ID. Note: Very old transactions may not be retrievable.
Get card transactions from the primary Brex account. Retrieves settled card transactions including purchases, refunds, chargebacks, and collections. Returns transaction details with merchant information, amounts, dates, and associated metadata. Supports pagination for handling large result sets. Note: The Brex API does not support server-side date filtering. Date filtering (posted_at_start/posted_at_end) is performed client-side by filtering the posted_at_date field in the response. When using date filters, paginate through all pages by following next_cursor until exhausted before applying date range filtering locally — stopping early will cause in-range transactions to be missed.
Get card transactions filtered by amount range and date period. This action retrieves settled card transactions within a specified amount range (min to max in USD) and date period. Useful for finding transactions of specific values, expense analysis, budget tracking, or identifying large purchases. The action performs client-side filtering to return only transactions matching both the amount and date criteria.
Search and filter card transactions by description text. This action retrieves transactions from the primary card account and filters them by description (case-insensitive partial match) and date range. Useful for finding all transactions from a specific merchant or category.
Retrieves the monthly spending limit and available balance for a specific Brex user. Use this action when you need to check how much a user is allowed to spend per month and how much of that limit remains available. Returns empty if no spending limit has been configured for the user.
Get user profile information from Brex Team API. Returns the user profile associated with the OAuth2 access token when using 'me', or retrieves a specific user's profile when providing a user ID. Requires 'users.readonly' or 'users' OAuth scope.
Tool to get vendor details by ID. Use when you need to retrieve information about a specific vendor including payment accounts.
Tool to retrieve details of a specific webhook group by ID. Use when you need to get information about a webhook group including its name and identifier. Webhook groups allow webhook subscriptions to target specific members, providing granular control over webhook delivery. This feature is only available for Brex partners. Returns the webhook group's ID and name.
Tool to retrieve details of a specific webhook subscription by ID. Use this when you need to: - Get information about an existing webhook subscription - Verify webhook configuration (URL, event types, status) - Check if a webhook subscription is active or inactive - Retrieve the webhook group ID for partner integrations Returns the webhook subscription's ID, URL, event types, status (ACTIVE/INACTIVE), and optionally the webhook group ID.
Tool to list all budget programs in the organization. Use when you need to retrieve budget programs that define spend limits for eligible users.
List all budgets and show available amounts across all cards.
Tool to list all card accounts for the company. Use when you need to retrieve information about card accounts, including balances and statement periods.
List all cards associated with the account.
Tool to list finalized statements for primary card accounts. Use when you need to retrieve statement history for primary card accounts including balances and statement periods.
List all departments in the organization.
Tool to list expenses from the Brex platform. Use when you need to retrieve expenses with various filters such as user, budget, date ranges, or status. Supports pagination and expandable fields for additional details.
Tool to list values under a custom field. Use when you need to retrieve all values defined for a specific custom field, optionally filtering by Brex ID, value ID, remote ID, or value string.
Tool to list all legal entities in the Brex account with pagination support. Use when you need to retrieve all legal entities or browse through them page by page.
List all locations in the organization.
Tool to list all referrals created in the Brex account. Use when you need to view or manage customer referrals. Note: This endpoint only returns active referrals and does not include expired ones.
List all job titles in the organization.
Lists transfers for the account. Use when you need to retrieve transfer history or monitor transfer status.
Lists trips according to the filters passed in the query string. Use when you need to retrieve trip history or monitor trip status.
List all users in the Brex account.
List all vendors.
Tool to list all members of a webhook group. Use when you need to retrieve the webhook subscriptions that are members of a specific webhook group. Supports pagination using cursor and limit parameters.
Tool to list all webhook groups. Use when you need to retrieve all webhook groups in the system. Webhook groups allow subscriptions to target specific members and are only available for Brex partners. Supports pagination using cursor and limit parameters.
Tool to retrieve webhook signing secrets for validating incoming webhook messages from Brex. Use when you need to verify webhook authenticity. During key rotation, this may return two secrets.
Tool to list all registered webhook subscriptions. Use when you need to retrieve all webhook subscriptions configured in the Brex account, including their URLs, event types, and status. Supports pagination using cursor and limit parameters.
Creates a receipt match request and returns a pre-signed S3 upload URI. Use this when you need to upload a receipt that will be automatically matched to existing Brex card expenses. The returned URI allows secure file upload (max 50 MB) and expires 30 minutes after creation. After upload completes, Brex will automatically attempt to match the receipt with card transactions based on date, amount, and merchant information.
Creates a receipt upload request for a specific card expense and returns a pre-signed S3 upload URL. Use this tool when you need to attach a receipt to an existing Brex card expense. The tool returns a pre-signed S3 URL that can be used to upload receipt files (PDF, JPG, PNG, etc.) up to 50 MB. The pre-signed URL expires 30 minutes after creation and can only be used for a PUT operation. Requirements: - The expense_id must belong to an existing card expense in the Brex system - The expense must be accessible by the authenticated user - Receipt file names should include the file extension (e.g., 'receipt.pdf', 'invoice.jpg') Note: For uploading receipts that should be automatically matched to expenses (without specifying an expense_id), use the BREX_RECEIPT_MATCH action instead.
Set or update the monthly spending limit for a Brex user. The limit controls the maximum amount the user can spend per month. Set monthly_limit to null to remove an existing limit. The limit amount must be specified in the smallest currency unit (e.g., cents for USD).
Transfer a card to a different user.
Update an existing budget's configuration in Brex. This action allows you to modify budget properties such as name, description, amount limits, ownership, parent budget relationships, and recurrence settings. Only the fields you provide will be updated; all other fields remain unchanged. Common use cases: - Adjust budget amounts (increase or decrease limits) - Change budget ownership or reassign to different users - Update budget names and descriptions for clarity - Modify recurrence periods (e.g., change from MONTHLY to QUARTERLY) - Reorganize budget hierarchy by changing parent budgets
Tool to update a Spend Limit (budget) using the v1 API. Use when you need to modify budget details such as name, description, owners, members, limits, or date ranges.
Update spending limits and controls for a Brex card. This action allows you to modify the spending limits, duration, and lock date for cards that have limit_type=CARD. You can update one or more spend control settings while leaving others unchanged. Cards with limit_type=USER inherit limits from the user and cannot be updated with this action.
Update the status of a Brex card by locking, unlocking, or terminating it. This action provides a unified interface for card status management: - Lock a card to temporarily block transactions (requires lock_reason) - Unlock a locked card to resume normal operation - Terminate a card permanently (cannot be undone) The action uses the appropriate Brex API endpoint based on the target status.
Tool to update an expense by its ID. Use when you need to modify expense details such as memo, location, department, or category. You can update one or multiple fields in a single request.
Tool to update a custom field in Brex. Use when you need to modify a field's name or disable/enable it.
Tool to update custom field values in Brex for a specific field. Use when you need to modify existing field values, supporting batch updates of up to 1000 values at once. Each value can be identified by brex_id (entity identifier), value_id (field value ID), or remote_id (external system ID). The API will update the field values and return the complete updated state including metadata like updated_at timestamps.
Updates an existing Brex spend limit by its ID. Allows modifying spend limit properties including name, description, status (ACTIVE/INACTIVE), period settings, authorization controls, spending limits, merchant restrictions, member/owner assignments, and policy associations. At least one optional field must be provided to update. Requires the spend limit ID from BREX_GET_SPEND_LIMITS or creation actions.
Update user details.
Tool to update vendor information in Brex. Use when you need to modify vendor details such as company name, email, phone, payment accounts, or beneficiary information.
Updates an existing Brex webhook subscription's configuration. You can modify the webhook URL endpoint, change which event types trigger notifications, activate/deactivate the subscription, or reassign it to a different webhook group (partners only). This is useful when you need to redirect webhooks to a new URL, add/remove event types from your subscription, or temporarily pause webhook deliveries without deleting the subscription.
Anything Brex exposes through its API. Common accounting workflows on Definable include auto-categorise transactions, draft invoices on closed deals, surface cash-flow signals. Personas can call any of the 84 Brex tools directly, then chain the result into another integration without you writing code.
Brex uses OAUTH2, API_KEY on Definable. You connect once from the integrations page, scoped to the permissions you choose, and from then on any persona that has the integration enabled can act on your behalf. Tokens are encrypted at rest and rotated automatically.
Yes — every Definable plan, including Starter, includes access to all 84 Brex tools. You only need a separate Brex subscription if Brex itself charges per seat or per API call.
Every call from a persona to Brex is logged with the user, persona, prompt, and response. Tokens never leave Definable's secrets vault, scopes are configurable per persona, and you can revoke access at any time from the integration page.
Sign up for Definable, open the integrations page, find Brex, and connect via OAuth or API key. You can immediately attach Brex to any persona and start running workflows. The free Starter plan includes 5,000 credits/month.
Definable exposes all 84 Brex actions as callable tools — including `Add Webhook Group Members`, `Archive Budget`, `Archive Spend Limit`, plus 81 more. Each tool gets a typed parameter schema so personas know exactly how to call it.
Wire it up in minutes. No coding required.