Fidelity Investments Data API: Endpoints & Fields
Fidelity Investments is the Android investing and money-management app from Fidelity Investments for US retail customers. It brings brokerage, IRA, workplace 401(k) and managed accounts together with stock, ETF, options, mutual-fund and crypto trading, plus quotes, charts and news. Customers can move cash by EFT or wire, transfer between accounts, pay bills, deposit checks and open youth investing accounts. It serves investors seeking a full-service brokerage alongside Charles Schwab, Vanguard, E*TRADE and Robinhood, with a 4.11 Play rating from 154,113 reviews.
Holdings cost basis and intraday buying power capture different sides of a portfolio: averageCostPerShare, positionCostBasis, marketValue and totalGainLossPercent describe invested assets, while settledCash, unsettledCash, marginBuyingPower and availableToTradeWithoutMarginImpact distinguish cash availability from trading capacity. Account classifications in acctType and acctSubType, together with isCollege and isFiliAccount, let household wealth dashboards keep brokerage, retirement, college and insurance accounts separate.
Trade reconciliation can join orderNumber, executedQuantity, currentQuantity and avgPrice with activity records carrying txnTypeCode and txnCatDesc. Cash-movement records add fromAccountNumber, toAccountNumber, xferMethod and transferAmount; retirement planning tools can organize required minimum distributions with rmdYearDetails and rmdRollUpDetails. Research overlays combine saved symbols with lastPriceChgPct, bidPrice, fiftyTwoWeekHigh and headlineSummary. openData Studio turns these account, trading and research data structures into callable open data for wealth dashboards, trade reconciliation and retirement planning.
Screenshots
API surface
The endpoints and request/response examples below are reconstructed from the app's interface — illustrative, not a live capture.
Brokerage account list
POST
/v1/portfolios/catalogopenbankingLists the signed-in customer's brokerage, IRA and workplace accounts. accountNumber, acctType and acctSubType feed the account switcher; isFiliAccount plus filiProdCode/filiProdDesc mark Fidelity Life Insurance rows; isCollege flags 529 college accounts.
Auth: Customer SSO session cookie. Initial sign-in uses PIN/password and two-factor authentication.
- accountNumber
- acctType
- acctSubType
- isFiliAccount
- filiSystem
- filiProdCode
- filiProdDesc
- isCollege
POST /v1/portfolios/catalog HTTP/1.1 Cookie: session=<mock-session> Content-Type: application/json { "includeClosed": false }{ "accounts": [ { "accountNumber": "X12345678", "acctType": "BROKERAGE", "acctSubType": "INDIVIDUAL", "isFiliAccount": false, "filiSystem": null, "filiProdCode": null, "filiProdDesc": null, "isCollege": false }, { "accountNumber": "Z98765432", "acctType": "IRA", "acctSubType": "ROTH", "isFiliAccount": false, "filiSystem": null, "filiProdCode": null, "filiProdDesc": null, "isCollege": false } ] }Account balance detail
POST
/v1/portfolios/cash-viewopenbankingReturns the cash and buying-power strip for one account. settledCash vs unsettledCash split withdrawable cash; marginBuyingPower, intraDayBuyingPower and availableToTradeWithoutMarginImpact drive the trade ticket; buyingPowerCommittedToOpenOrders holds cash already reserved.
Auth: Customer SSO session cookie. Initial sign-in uses PIN/password and two-factor authentication.
- accountNumber
- settledCash
- unsettledCash
- availableWithdraw
- buyingPower
- marginBuyingPower
- nonMarginBuyingPower
- intraDayBuyingPower
- availableToTradeWithoutMarginImpact
- buyingPowerCommittedToOpenOrders
POST /v1/portfolios/cash-view HTTP/1.1 Cookie: session=<mock-session> Content-Type: application/json { "accountNumber": "X12345678" }{ "accountNumber": "X12345678", "settledCash": "8420.15", "unsettledCash": "250.00", "availableWithdraw": "8170.15", "buyingPower": "16840.30", "marginBuyingPower": "16840.30", "nonMarginBuyingPower": "8420.15", "intraDayBuyingPower": "33680.60", "availableToTradeWithoutMarginImpact": "8420.15", "buyingPowerCommittedToOpenOrders": "0.00" }Open positions
POST
/v1/portfolios/holdingsopenfinanceReturns open lots for an account. lastPrice and marketValue mark the holding to market; averageCostPerShare and positionCostBasis are cost; todaysGainLoss / totalGainLossPercent drive the P&L columns; bidPrice, askPrice and volume sit on the quote strip.
Auth: Customer SSO session cookie. Initial sign-in uses PIN/password and two-factor authentication.
- id
- assetId
- currencyCode
- positionTypeCode
- acctType
- intradayQuantity
- averageCostPerShare
- positionCostBasis
- lastPrice
- closingPrice
- bidPrice
- askPrice
- volume
- marketValue
- previousMarketValue
- previousCloseLastPrice
- chgCloseDollar
- chgClosePercent
- todaysGainLoss
- todaysGainLossPercent
- totalGainLoss
- totalGainLossPercent
- fiftyTwoWeekHigh
POST /v1/portfolios/holdings HTTP/1.1 Cookie: session=<mock-session> Content-Type: application/json { "accountNumber": "X12345678" }{ "positions": [ { "id": "pos_AAPL_long", "assetId": "AAPL", "currencyCode": "USD", "positionTypeCode": "LONG", "acctType": "BROKERAGE", "intradayQuantity": "25", "averageCostPerShare": "178.42", "positionCostBasis": "4460.50", "lastPrice": "226.15", "closingPrice": "224.80", "bidPrice": "226.10", "askPrice": "226.20", "volume": "48231000", "marketValue": "5653.75", "previousMarketValue": "5620.00", "previousCloseLastPrice": "224.80", "chgCloseDollar": "1.35", "chgClosePercent": "0.60", "todaysGainLoss": "33.75", "todaysGainLossPercent": "0.60", "totalGainLoss": "1193.25", "totalGainLossPercent": "26.75", "fiftyTwoWeekHigh": "260.10" } ] }Quote snapshot
GET
/v1/instruments/price-snapshotopendataReturns a JSON quote for one symbol. lastPrice, lastPriceChgPct, bidPrice and askPrice feed the quote header; closePrice and fiftyTwoWeekHigh fill the stats row; volume is the session share count.
Auth: Customer SSO session cookie; quote availability depends on sign-in status.
- symbol
- lastPrice
- lastPriceChg
- lastPriceChgPct
- lastPriceDate
- lastPriceTime
- bidPrice
- askPrice
- closePrice
- fiftyTwoWeekHigh
- volume
GET /v1/instruments/price-snapshot?symbol=AAPL HTTP/1.1 Cookie: session=<mock-session>{ "symbol": "AAPL", "lastPrice": "226.15", "lastPriceChg": "1.35", "lastPriceChgPct": "0.60", "lastPriceDate": "2026-10-22", "lastPriceTime": "16:00:00", "bidPrice": "226.10", "askPrice": "226.20", "closePrice": "224.80", "fiftyTwoWeekHigh": "260.10", "volume": "48231000" }Place equity order
POST
/v1/trade-tickets/submitopenfinancePlaces a stock or ETF ticket. orderAction / orderActionCode and originalQuantity describe the side and size; the response returns orderNumber, orderStatus and currentQuantity for the blotter.
Auth: Customer SSO session cookie. Initial sign-in uses PIN/password and two-factor authentication.
- accountNumber
- symbol
- orderAction
- orderActionCode
- originalQuantity
- orderNumber
- orderStatus
- executedQuantity
- currentQuantity
- avgPrice
- rptAction
POST /v1/trade-tickets/submit HTTP/1.1 Cookie: session=<mock-session> Content-Type: application/json { "accountNumber": "X12345678", "symbol": "AAPL", "orderAction": "BUY", "orderActionCode": "B", "originalQuantity": 10 }{ "accountNumber": "X12345678", "orderNumber": "20261022-184422", "orderStatus": "ACCEPTED", "orderAction": "BUY", "orderActionCode": "B", "symbol": "AAPL", "originalQuantity": 10, "executedQuantity": 0, "currentQuantity": 10, "avgPrice": 0, "rptAction": "NEW" }Order status
POST
/v1/trade-tickets/progressopenfinanceReads live status for one ticket. orderStatus and rptAction show working vs filled; executedQuantity, currentQuantity, avgPrice and execSeqNum track partial fills.
Auth: Customer SSO session cookie. Initial sign-in uses PIN/password and two-factor authentication.
- accountNumber
- orderNumber
- orderStatus
- orderAction
- symbol
- originalQuantity
- executedQuantity
- currentQuantity
- avgPrice
- execSeqNum
- rptAction
POST /v1/trade-tickets/progress HTTP/1.1 Cookie: session=<mock-session> Content-Type: application/json { "accountNumber": "X12345678", "orderNumber": "20261022-184422" }{ "accountNumber": "X12345678", "orderNumber": "20261022-184422", "orderStatus": "FILLED", "orderAction": "BUY", "symbol": "AAPL", "originalQuantity": 10, "executedQuantity": 10, "currentQuantity": 0, "avgPrice": 226.12, "execSeqNum": 3, "rptAction": "FILL" }Account activity and orders
POST
/v1/ledger/activity-feedopenbankingGraphQL activity feed used by the Activity & Orders screen. orders carry actionCode, status and symbol; historys add orderNumber, txnTypeCode and txnCatDesc; transfers name fromAccountNumber, toAccountNumber and xferMethod.
Auth: Customer SSO session cookie. Initial sign-in uses PIN/password and two-factor authentication.
- acctNum
- description
- date
- amount
- actionCode
- status
- symbol
- orderDate
- orderNumber
- txnTypeCode
- txnCatCode
- txnCatDesc
- fromAccountNumber
- toAccountNumber
- xferMethod
POST /v1/ledger/activity-feed HTTP/1.1 Cookie: session=<mock-session> Content-Type: application/json { "query": "query AccountActivity($acctIdList: String) { getTransactions(acctIdList: $acctIdList) { orders { acctNum description date amount actionCode status symbol orderDate } historys { acctNum orderNumber description date amount txnTypeCode txnCatCode txnCatDesc status symbol } transfers { acctNum orderNumber fromAccountNumber toAccountNumber xferMethod amount status } } }", "variables": { "acctIdList": "X12345678" } }{ "data": { "getTransactions": { "orders": [ { "acctNum": "X12345678", "description": "BUY AAPL", "date": "2026-10-22", "amount": "2261.20", "actionCode": "B", "status": "FILLED", "symbol": "AAPL", "orderDate": "2026-10-22" } ], "historys": [ { "acctNum": "X12345678", "orderNumber": "20261022-184422", "description": "YOU BOUGHT APPLE INC", "date": "2026-10-22", "amount": "-2261.20", "txnTypeCode": "TRD", "txnCatCode": "EQ", "txnCatDesc": "Equity", "status": "POSTED", "symbol": "AAPL" } ], "transfers": [ { "acctNum": "X12345678", "orderNumber": "EFT-9912", "fromAccountNumber": "****2211", "toAccountNumber": "X12345678", "xferMethod": "EFT", "amount": "1000.00", "status": "COMPLETE" } ] } } }Initiate EFT transfer
POST
/v1/cash-movements/prepareopenbankingStarts an ACH/EFT money movement. fromAccountNumber, toAccountNumber, routingNumber and bankInstructionLineNum identify the bank instruction; transferAmount, xferMethod and xferType describe the leg; txnId is the handle for verify/confirm.
Auth: Customer SSO session cookie. Initial sign-in uses PIN/password and two-factor authentication.
- fromAccountNumber
- toAccountNumber
- routingNumber
- bankInstructionLineNum
- transferAmount
- xferMethod
- xferType
- txnId
- orderNumber
- status
POST /v1/cash-movements/prepare HTTP/1.1 Cookie: session=<mock-session> Content-Type: application/json { "fromAccountNumber": "****2211", "toAccountNumber": "X12345678", "routingNumber": "000000000", "transferAmount": "1000.00", "xferMethod": "EFT", "xferType": "PUSH" }{ "txnId": "eft_7c21", "orderNumber": "EFT-9912", "fromAccountNumber": "****2211", "toAccountNumber": "X12345678", "routingNumber": "000000000", "bankInstructionLineNum": "1", "transferAmount": "1000.00", "xferMethod": "EFT", "xferType": "PUSH", "status": "INITIATED" }Watchlists
POST
/v1/saved-lists/lookupopendataReturns saved watch lists. watchlistId and watchlistName identify each list; symbols are the tickers shown on the Quotes tab.
Auth: Customer SSO session cookie. Initial sign-in uses PIN/password and two-factor authentication.
- watchlistId
- watchlistName
- symbols
POST /v1/saved-lists/lookup HTTP/1.1 Cookie: session=<mock-session> Content-Type: application/json {}{ "watchlists": [ { "watchlistId": "wl_default", "watchlistName": "My Watch List", "symbols": ["AAPL", "MSFT", "NVDA"] } ] }IRA required minimum distribution
POST
/v1/retirement/distribution-summaryopenfinanceReads required minimum distribution figures for a retirement account. rmdYearDetails is the current-year remaining RMD; rmdAcctDetail and rmdCustomerDetails identify the IRA and the holder; rmdAdjUp and rmdRollUpDetails cover aggregated/adjusted RMD.
Auth: Customer SSO session cookie. Initial sign-in uses PIN/password and two-factor authentication.
- accountNumber
- rmdAcctDetail
- rmdCustomerDetails
- rmdYearDetails
- rmdDetail
- rmdAdjUp
- rmdRollUpDetails
POST /v1/retirement/distribution-summary HTTP/1.1 Cookie: session=<mock-session> Content-Type: application/json { "accountNumber": "Z98765432" }{ "accountNumber": "Z98765432", "rmdAcctDetail": { "acctType": "IRA", "acctSubType": "TRADITIONAL" }, "rmdCustomerDetails": { "birthYear": 1954 }, "rmdYearDetails": { "year": 2026, "requiredAmount": "12480.00", "satisfiedAmount": "4000.00", "remainingAmount": "8480.00" }, "rmdDetail": { "rmdAdjUp": false }, "rmdRollUpDetails": { "aggregatedRemaining": "8480.00" } }Account statements
POST
/v1/documents/account-indexopenbankingLists e-delivery statements for an account. statementDate and documentType label each PDF; documentId is the handle passed to the document download path.
Auth: Customer SSO session cookie. Initial sign-in uses PIN/password and two-factor authentication.
- accountNumber
- documentId
- documentType
- statementDate
POST /v1/documents/account-index HTTP/1.1 Cookie: session=<mock-session> Content-Type: application/json { "accountNumber": "X12345678" }{ "accountNumber": "X12345678", "statements": [ { "documentId": "stmt_202609", "documentType": "MONTHLY_STATEMENT", "statementDate": "2026-09-30" }, { "documentId": "stmt_202608", "documentType": "MONTHLY_STATEMENT", "statementDate": "2026-08-31" } ] }News headlines
POST
/v1/research/headline-feedopendataSearches research news for a symbol. headlineSummary is the card title on the quote News tab; headlineDetails is the teaser body.
Auth: Customer SSO session cookie. Initial sign-in uses PIN/password and two-factor authentication.
- symbol
- headlineSummary
- headlineDetails
POST /v1/research/headline-feed HTTP/1.1 Cookie: session=<mock-session> Content-Type: application/json { "symbol": "AAPL" }{ "headlines": [ { "symbol": "AAPL", "headlineSummary": "Apple reports September quarter results", "headlineDetails": "Revenue and services growth beat estimates." } ] }
Data categories
- brokerage accounts
- balances
- positions
- quotes
- orders
- transfers
- statements
- retirement RMD
- watchlists
- news
Where teams use this data
Household wealth dashboard
A family-office console pulls accountNumber / acctType rows, then settledCash, marginBuyingPower and per-lot marketValue plus totalGainLossPercent, so overnight cash and marked-to-market equity land in one household view.
Trade blotter reconciliation
An OMS matches orderNumber, orderAction, executedQuantity and avgPrice from the equity place and order-status calls against the Activity GraphQL historys (txnTypeCode, txnCatDesc) to flag partial fills and cancel/replace drift.
IRA RMD calendar
A retirement ops tool reads rmdYearDetails for each IRA accountNumber and schedules the remaining distribution before year-end, using rmdRollUpDetails when several IRAs aggregate.
Quote and watchlist overlay
A research widget hydrates watchlistName symbols with lastPrice, lastPriceChgPct, bidPrice and fiftyTwoWeekHigh, then attaches headlineSummary items from the news search.
Frequently asked questions
What account and cash fields are covered?
Account records include accountNumber, acctType, acctSubType and flags such as isCollege and isFiliAccount. Balance detail adds settledCash, unsettledCash, availableWithdraw, marginBuyingPower, intraDayBuyingPower and availableToTradeWithoutMarginImpact, separating cash availability from buying power.
How do holdings, quotes and watchlists fit together?
Holdings include assetId, intradayQuantity, averageCostPerShare, positionCostBasis, marketValue and totalGainLossPercent. Quote snapshots add symbol, lastPriceChgPct, bidPrice, askPrice, closePrice, fiftyTwoWeekHigh and volume. Saved lists identify watchlistId, watchlistName and symbols; news records add headlineSummary and headlineDetails for a symbol.
Which fields support order reconciliation and retirement planning?
Trade tickets use orderNumber, orderAction, originalQuantity, executedQuantity, currentQuantity and avgPrice. Activity records add txnTypeCode, txnCatDesc and transfer account references, while EFT records include transferAmount, xferMethod and txnId. Required minimum distribution records use rmdYearDetails, rmdAcctDetail and rmdRollUpDetails; statement records supply documentId, documentType and statementDate.
Are these live Fidelity routes, and what authentication is represented?
The paths and request/response examples on this page are illustrative, not live Fidelity service addresses or official integration instructions. The authentication model shown is a signed-in customer SSO session cookie, established after PIN/password sign-in and two-factor authentication; the examples contain only a mock session placeholder.
Apps similar to Fidelity Investments
- Charles Schwab — Charles Schwab is a U.S. brokerage that offers commission-free stock, ETF and options trades, more than 7,700 no-transaction-fee mutual funds, IRAs, nearly 400 branches, and the thinkorswim platform after its 2020 TD Ameritrade acquisition.
- Vanguard — Vanguard is a U.S. brokerage for stocks, mutual funds, ETFs and options, with traditional, Roth, rollover, SEP and inherited IRAs, $0 online stock commissions, and fund minimums that start at $1,000.
- E*TRADE — E*TRADE from Morgan Stanley is a self-directed brokerage for commission-free stocks, ETFs and options plus mutual funds and futures, with the E*TRADE Web and Power E*TRADE platforms and traditional, Roth, SEP and SIMPLE IRAs.
- Robinhood: Trading & Investing — Robinhood is a U.S. brokerage app for commission-free stocks, ETFs and options plus more than 90 cryptocurrencies in taxable accounts, and it offers an IRA contribution match but does not trade mutual funds or individual bonds.
- Webull: Investing & Trading — Webull is a U.S. electronic trading platform for commission-free stocks, ETFs and equity options, plus futures, select cryptocurrencies, paper trading, and Traditional and Roth IRAs, with mutual funds available only inside IRAs.
- Interactive Brokers — Interactive Brokers is a Greenwich, Connecticut brokerage that launched IBKR Lite in 2019 for commission-free U.S. stock and ETF trades and also routes stocks, options, futures, forex, bonds, funds and crypto across dozens of countries.
- SoFi Invest — SoFi Active Investing is SoFi's $0-commission brokerage for stocks, ETFs, options, fractional shares, about 6,800 no-transaction-fee mutual funds, crypto and Traditional, Roth, SEP and rollover IRAs inside the same U.S. banking app as checking and savings.
Topics
- fidelity investments data api
- fidelity brokerage balances
- fidelity holdings cost basis
- fidelity settledCash marginBuyingPower
- fidelity trade reconciliation fields
- fidelity IRA rmdYearDetails
- fidelity watchlist quote data
- fidelity illustrative api examples
Need this app's data API integrated?
We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.
- NDA + SOW on every engagement
- Delivery in 3–7 days
- Payment only after acceptance
- Work scoped to authorized use