TD Ameritrade Holding Transactions API
Account transaction history
Account transaction history
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/td-ameritrade-holding-transactions-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: TD Ameritrade and Trading Accounts Transactions API
description: The TD Ameritrade Accounts and Trading API provided programmatic access to brokerage account information, order management, market data, instruments, watchlists, and trading operations. This API was discontinued following the Charles Schwab acquisition of TD Ameritrade, with full migration completed in May 2024. The successor API is the Charles Schwab Trader API at developer.schwab.com. Documentation preserved for historical reference.
version: '1'
contact:
name: Charles Schwab (Successor)
url: https://developer.schwab.com
x-status: deprecated
servers:
- url: https://api.tdameritrade.com/v1
description: TD Ameritrade API (Deprecated - Migrated to Charles Schwab)
security:
- OAuth2: []
tags:
- name: Transactions
description: Account transaction history
paths:
/accounts/{accountId}/transactions:
get:
operationId: getTransactions
summary: Get Transactions
description: Retrieve transaction history for a specific account with optional filtering.
tags:
- Transactions
parameters:
- $ref: '#/components/parameters/AccountId'
- name: type
in: query
description: Only retrieve transactions of specific type
schema:
type: string
enum:
- ALL
- TRADE
- BUY_ONLY
- SELL_ONLY
- CASH_IN_OR_CASH_OUT
- CHECKING
- DIVIDEND
- INTEREST
- OTHER
- ADVISORY_FEES
- name: symbol
in: query
description: Only retrieve transactions for a specific symbol
schema:
type: string
- name: startDate
in: query
description: Start date filter (yyyy-MM-dd)
schema:
type: string
format: date
- name: endDate
in: query
description: End date filter (yyyy-MM-dd)
schema:
type: string
format: date
responses:
'200':
description: List of account transactions
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Transaction'
'401':
$ref: '#/components/responses/Unauthorized'
/accounts/{accountId}/transactions/{transactionId}:
get:
operationId: getTransaction
summary: Get Transaction
description: Retrieve a specific transaction for an account by its transaction ID.
tags:
- Transactions
parameters:
- $ref: '#/components/parameters/AccountId'
- name: transactionId
in: path
required: true
description: Unique transaction identifier
schema:
type: string
responses:
'200':
description: Transaction details
content:
application/json:
schema:
$ref: '#/components/schemas/Transaction'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
components:
responses:
NotFound:
description: Not Found - Resource does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Unauthorized - Valid OAuth2 token required
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
parameters:
AccountId:
name: accountId
in: path
required: true
description: Unique account identifier
schema:
type: string
schemas:
Instrument:
type: object
description: A financial instrument (stock, ETF, option, etc.)
properties:
cusip:
type: string
symbol:
type: string
description:
type: string
exchange:
type: string
assetType:
type: string
enum:
- EQUITY
- ETF
- FOREX
- FUTURE
- FUTURE_OPTION
- INDEX
- INDICATOR
- MUTUAL_FUND
- OPTION
- UNKNOWN
Transaction:
type: object
description: An account transaction record
properties:
type:
type: string
clearingReferenceNumber:
type: string
subAccount:
type: string
settlementDate:
type: string
format: date
orderId:
type: string
netAmount:
type: number
format: double
transactionDate:
type: string
format: date-time
orderDate:
type: string
format: date-time
transactionSubType:
type: string
transactionId:
type: integer
format: int64
cashBalanceEffectFlag:
type: boolean
description:
type: string
fees:
type: object
transactionItem:
type: object
properties:
accountId:
type: string
amount:
type: number
format: double
price:
type: number
format: double
cost:
type: number
format: double
instruction:
type: string
instrument:
$ref: '#/components/schemas/Instrument'
Error:
type: object
properties:
error:
type: string
description: Error message
message:
type: string
description: Detailed error description
securitySchemes:
OAuth2:
type: oauth2
description: TD Ameritrade uses OAuth 2.0 token-based authentication
flows:
authorizationCode:
authorizationUrl: https://auth.tdameritrade.com/auth
tokenUrl: https://api.tdameritrade.com/v1/oauth2/token
scopes:
PlaceTrades: Place trades on behalf of the user
AccountAccess: Access account information
MoveMoney: Transfer funds between accounts