sync_transactions
Incrementally sync transaction data using Plaid's cursor-based approach. On the first call, omit the cursor to get the initial set of transactions. On subsequent calls, pass the **nextCursor** from the previous response to get only new changes (added, modified, removed). Continue calling while **hasMore** is true to get all available updates.
get_identity
Retrieve account holder identity information as reported by the financial institution. Returns names, emails, phone numbers, and addresses for each account owner. Useful for KYC verification and fraud prevention.
enrich_transactions
Enrich non-Plaid transaction data with merchant names, logos, categories, counterparties, and location details. Accepts up to 100 transactions per request. Useful for adding insights to transactions from sources other than Plaid.
get_investment_transactions
Retrieve investment transaction history (buys, sells, dividends, fees, transfers) for a date range. Supports offset-based pagination for large result sets. Up to 24 months of history may be available.
exchange_public_token
Exchange a temporary `public_token` (received from Plaid Link's onSuccess callback) for a permanent `access_token` and `item_id`. The public token is single-use and expires after 30 minutes. Store the returned access token securely for subsequent API calls.
get_transfer
Retrieve the current status and details of a bank transfer by its ID. Returns the transfer amount, type, status, network, and creation timestamp.
get_holdings
Retrieve current investment holdings and security details from brokerage or retirement accounts. Returns positions with quantities, prices, values, and cost basis, along with detailed security metadata (ticker, ISIN, CUSIP, type).
create_transfer
Initiate a bank transfer (ACH debit or credit). Requires a prior transfer authorization. The transfer is idempotent — if a transfer with the same authorization ID exists, the existing transfer is returned. Returns the transfer details including status and expected settlement date.
create_link_token
Create a short-lived `link_token` used to initialize Plaid Link in a client application. The token expires in 4 hours (or 30 minutes in update mode). Pass the resulting link token to your frontend to open the Plaid Link flow for users to connect their bank accounts.
search_institutions
Search for financial institutions supported by Plaid. Filter by name, country, and required products. Returns institution metadata including supported products, OAuth support, and branding details. Only institutions supporting **all** specified products are returned.
get_balances
Retrieve **real-time** balance information for accounts linked to a Plaid Item. Unlike cached balances from Get Accounts, this makes a live request to the financial institution. Useful for preventing ACH returns or verifying sufficient funds.
get_accounts
Retrieve all financial accounts linked to a Plaid Item. Returns account names, types, subtypes, masks, and cached balance information. Use this to see what accounts a user has connected. For real-time balances, use the **Get Balances** tool instead.
get_item
Retrieve status and metadata for a Plaid Item (bank connection). Returns the institution, available and billed products, webhook URL, error state, and data update timestamps.
get_asset_report
Retrieve a completed Asset Report by its token. The report contains account details, historical balances, and transaction summaries across all included Items. Call this after receiving the PRODUCT_READY webhook or after waiting for the report to be generated.
get_auth
Retrieve bank account and routing numbers for ACH, wire, and other transfers. Returns ACH routing/account numbers (US), EFT institution/branch numbers (Canada), BACS sort codes (UK), and international IBAN/BIC codes depending on the institution's country.
evaluate_signal
Assess the return risk of a planned ACH debit transaction using Plaid Signal. Returns risk scores for both customer-initiated and bank-initiated returns to help decide whether to proceed, delay, or reject a transaction.
remove_item
Remove a Plaid Item and permanently invalidate its access token. This disconnects the user's bank account and all associated data will no longer be accessible. This action **cannot be undone**.
get_institution
Retrieve detailed information about a specific financial institution by its Plaid institution ID. Optionally includes the institution's current health status per product.
get_transactions
Retrieve transactions for a date range using offset-based pagination. Returns transactions along with total count for pagination. For incremental updates, prefer **Sync Transactions** instead.
list_transfers
List bank transfers with optional date range filtering and pagination. Returns a summary of each transfer including status, amount, type, and network.
get_liabilities
Retrieve liability data for credit cards, student loans, and mortgages. Returns payment schedules, interest rates, APRs, outstanding balances, and repayment details for each liability type.
create_asset_report
Initiate an asynchronous Asset Report that summarizes a user's financial history across one or more Items. The report is generated in the background — use the returned token to poll for the completed report. Useful for loan underwriting and financial verification. A webhook will fire when the report is ready.