Recent Updates
Documented additional response fields now returned by the Account Balance (v2) and Account Positions endpoints.Summary of changes by endpoint:
| Endpoint | Section | Change (short & precise) |
|---|---|---|
| GET /v2/accounts/{id}/balance | Accounts | Added response fields openPnl, dayOpenPnl, dayRealizedPnl, dayTotalPnl, costOfPositions, cashBalance, amountAvailableToWithdraw, and sodTtlEquityUpdatedAt. Example updated to match. |
| GET /v1/accounts/{id}/positions | Accounts | Added response fields positions.price, positions.marketValue, and positions.costBasis (omitted for closed positions). Example updated to match. |
Removed the
availability block from the Account Positions response and added a v2 Account Balance endpoint.Summary of changes by endpoint:| Endpoint | Section | Change (short & precise) |
|---|---|---|
| GET /v1/accounts/{id}/positions | Accounts | Removed the availability object (available, source) from the response; positions are now returned without data-availability metadata. |
| GET /v2/accounts/{id}/balance | Accounts | Added v2 account balance endpoint returning a flat balance object. Same fields as v1 balances plus balance and smaCreditRemaining; does not include totalEquity or sodTtlEquityUpdatedAt. |
Updated the Streaming API documentation to match the backend account WebSocket contract. Watchlist streaming is now documented only under the account WebSocket, and the watchlist request and response examples now reflect the backend’s full-watchlist snapshot and full-watchlist event payloads.Summary of changes by endpoint:
| Endpoint | Section | Change (short & precise) |
|---|---|---|
WSS /v1/accounts/ws | Streaming API | Watchlist documentation moved under Account Updates WebSocket; removed the separate Watchlist WebSocket page from navigation |
WSS /v1/accounts/ws | Streaming API | watchlist subscribe response now documents the current watchlist array returned immediately after subscribe |
WSS /v1/accounts/ws | Streaming API | watchlist event payload now documents the full watchlist array returned on each update |
WSS /v1/accounts/ws | Streaming API | News subscription docs now document symbol filtering only |
Aligned the Account Positions response P&L fields with the live API.Summary of changes by endpoint:
| Endpoint | Section | Change (short & precise) |
|---|---|---|
| GET /v1/accounts/{id}/positions | Accounts | Added response field positions.todayPl; removed positions.dailyPl (no longer returned). Examples updated accordingly. |
Renamed the single-symbol query parameter from
tickers to ticker on six endpoints. The multi-symbol parameter tickersAnyOf is unchanged. This is a breaking change for callers that sent ?tickers=AAPL — switch to ?ticker=AAPL.Summary of changes by endpoint:| Endpoint | Section | Change (short & precise) |
|---|---|---|
GET /v1/financials/short-volume | Financials | Query parameter tickers renamed to ticker (single symbol only); tickersAnyOf unchanged |
GET /v1/financials/ratios | Financials | Query parameter tickers renamed to ticker (single symbol only); tickersAnyOf unchanged |
GET /v1/financials/short-interest | Financials | Query parameter tickers renamed to ticker (single symbol only); tickersAnyOf unchanged |
GET /v1/corporate-actions/dividends | Corporate Actions | Query parameter tickers renamed to ticker (single symbol only); tickersAnyOf unchanged |
GET /v1/stock/split | Corporate Actions | Query parameter tickers renamed to ticker (single symbol only); tickersAnyOf unchanged |
GET /v1/stocks/unified-snapshot | Stocks | Query parameter tickers renamed to ticker (single symbol only); tickersAnyOf unchanged |
| GET /v1/accounts/{id}/positions | Accounts | Response positions.securityType enum corrected from [CS, OPT] to [EQUITY, OPTION]; examples updated to EQUITY; description clarified. Orders endpoints (which use [CS, OPT]) are unchanged. |
| GET /v1/chart/symbols | Chart | Documented seven previously-missing response fields on SymbolInfo: subsession_id, subsessions (nullable array), has_daily, has_ticks, daily_multipliers, weekly_multipliers, monthly_multipliers. Example payload updated to match the current API response. |
Corrected the
availability.source response field for the Account Positions endpoint to match the live API.Summary of changes by endpoint:| Endpoint | Section | Change (short & precise) |
|---|---|---|
| GET /v1/accounts/{id}/positions | Accounts | Response availability.source enum value db corrected to database (now [cache, database]); description updated to “Where the positions data was read from”. Orders endpoints are unchanged. |
Documentation updated for current public request-contract changes reflected in the backend.Summary of changes by endpoint:
| Endpoint | Section | Change (short & precise) |
|---|---|---|
GET /v1/calendars/historical/{symbol} | Calendar | Blank, whitespace-only, and placeholder path values such as {symbol} are rejected with 400 Bad Request |
GET /v1/stocks/unified-snapshot | Stocks | Added docs guidance explaining that in the playground, entering tickers and then selecting type can clear the tickers field |
Corrected
sort parameter documentation across the API reference so Mintlify renders text inputs for sort instead of enum/default selectors.Summary of changes by endpoint:| Endpoint | Section | Change (short & precise) |
|---|---|---|
GET /v1/stock/split and /v1/corporate-actions/dividends | Corporate Actions | sort now renders as a text input and documents provider-style sort expressions such as execution_date.desc and ticker.asc |
GET /v1/economy/inflation, /inflation-expectations, /treasury-yields | Economy | sort now renders as a text input instead of an enum/default selector |
GET /v1/financials/short-volume, /ratios, /short-interest, /cash-flow-statements, /income-statements | Financials | sort now renders as a text input instead of an enum/default selector |
GET /v1/stocks/aggs, /unified-snapshot, /trades, /quotes | Stocks | sort now renders as a text input instead of an enum/default selector |
GET /v1/options/snapshot/chain/{underlyingAsset}, /trades, /quotes | Options | sort now renders as a text input instead of an enum/default selector |
Request and response field changes across Orders, Watchlist, Indices, and Options endpoints.Summary of changes by endpoint:
| Endpoint | Section | Change (short & precise) |
|---|---|---|
POST /v1/orders, /orders/cancel, /orders/replace | Orders | Request symbol maxLength increased from 20 to 21. Same change on OrdLeg.symbol. |
| POST /v1/orders/cancel | Orders | Request side is now required (previously optional). |
| POST /v1/orders/replace | Orders | Added request fields: currency (3-letter ISO code) and legs (array of OrdLeg, max 4). |
| DELETE /v1/config/watchlist/{watchlist_id} | Watchlist | Added; deletes the watchlist or, when it is the user’s last one, resets it to a Default empty watchlist. Returns the affected watchlist ({ id, name, symbols }) |
| GET /v1/indices/bars | Indices | precision enum value Days removed (now [Minutes, Hours]). |
GET /v1/indices/bar, /bars, /chart-bars, /realtime/values | Indices | identifierType now accepts an additional value CIK (8 values total: Symbol, CIK, CUSIP, ISIN, Valoren, SEDOL, FIGI, CompositeFIGI). |
| GET /v1/options/previous-day | Options | Response schema now declares required: [ticker, open, high, low, close, volume]; volumeWeighted, timestamp, transactionCount remain optional. |
| GET /v1/equity/sector-wise-change | Analytics | limit parameter type changed from integer to string so the literal value all can be sent alongside numeric values. |
Documented supported market
exchange query values and aligned v2 orders schemas and companion pages with the trading API.Summary of changes by endpoint:| Endpoint | Section | Change (short & precise) |
|---|---|---|
| GET /v1/market/status | Market | exchange query uses the ExchangeCode enum (79 codes); default US; supported list on reference page |
| GET /v1/market/holiday | Market | Same exchange enum and supported exchange documentation as market status |
| GET /v2/accounts/{id}/orders | Accounts | Documented GetOrdersV2Response required fields; TradeOrderV2 required properties and FIX enums; flat ErrorResponse 400 for invalid source |
| GET /v2/accounts/{id}/orders/history | Accounts | Same response schema alignment; documented flat 400 examples (from is required, invalid timestamps, order_by, 90-day cap) |
Corrected documented response schemas and examples to match current API payloads.Summary of changes by endpoint:
| Endpoint | Section | Change (short & precise) |
|---|---|---|
| GET /v1/etf/sector | ETF | 200 response examples now document industry on each sectorExposure entry instead of stale sector |
| GET /v1/stock/split | Corporate Actions | 200 response now documents { results, status }; each split event uses ticker, executionDate, splitFrom, and splitTo with optional pagination metadata |
| GET /v1/stock/transcripts/list | Stock Alternative | 200 response now documents { symbol, transcripts }; each transcript entry includes id, quarter, time, title, and year |
| GET /v1/indices/list | Indices | 200 response entries now document indexName, symbol, indexGroup, and currency; removed stale name, description, exchange, and valoren fields |
| GET /v1/indices/by-group | Indices | 200 response now documents valoren on each indices entry |
Added v2 account orders endpoint documentation and clarified request/response contracts for active and historical order retrieval.Summary of changes by endpoint:
| Endpoint | Section | Change (short & precise) |
|---|---|---|
GET /v2/accounts/{id}/orders | Accounts | Added endpoint documentation for paginated active orders; response documented as v2 domain order objects with { orders, nextCursor } |
GET /v2/accounts/{id}/orders/history | Accounts | Added endpoint documentation for date-range order history; documented required from, optional to, cursor pagination, order_by, and exclude_today behavior with same v2 response shape |
Documentation was updated to match current backend query validation, public endpoint auth behavior, and response shapes.Summary of changes by endpoint:
| Endpoint | Section | Change (short & precise) |
|---|---|---|
| wss://api.aries.com/v1/market/ws | Streaming API | Moved WebSocket authentication to the first-class auth message and operation position in the AsyncAPI spec |
| GET /v1/analytics/market-breadth | Analytics | 200 response now documents { success, data }; timestamp wording allows fractional seconds |
| GET /v1/analytics/net-inflow | Analytics | 200 response now documents { success, data }; timestamp wording allows fractional seconds |
| GET /v1/chart/history | Chart | Removed lowercase resolution enum variants; documented uppercase D, W, M, 1D, 1W, 1M, 3M, 6M, and 12M values |
GET /v1/equity/top-gainers, /top-losers, /top-most-active, /sector-tickers | Analytics | SymbolDetails examples and schema no longer document description or tag |
GET /v1/options/stocks/top-gainers, /stocks/top-volume, /etfs/top-volume | Options | Documented option type response codes as c for Call and P for Put |
| GET /v1/options/unusual_activity/ | Options | Documented optional next_page pagination pointer in the response |
GET /v1/options/snapshot/chain/ and /snapshot/{underlyingAsset}/{optionContract} | Options | Removed provider-specific response wording from request/status/Greeks descriptions |
| GET /v1/financials/ratios | Financials | Added tickersAnyOf; tickers now documented as single-symbol only; documented 400 rules for multi-value tickers and tickers+tickersAnyOf conflict |
| GET /v1/financials/short-interest | Financials | Added tickersAnyOf; tickers now documented as single-symbol only; documented same two 400 validation rules |
| GET /v1/financials/short-volume | Financials | Added tickersAnyOf; tickers now documented as single-symbol only; documented same two 400 validation rules |
| GET /v1/financials/cash-flow-statements | Financials | Removed provider-specific wording from tickers, sort, and next parameter descriptions |
| GET /v1/financials/income-statements | Financials | Removed provider-specific wording from tickers, sort, and next parameter descriptions |
| GET /v1/corporate-actions/dividends | Corporate Actions | Query contract aligned: removed legacy ticker, documented tickers (single symbol) + tickersAnyOf (multi-symbol) and 400 conflict rules |
| GET /v1/stock/split | Corporate Actions | Query contract aligned: removed legacy ticker, documented tickers (single symbol) + tickersAnyOf (multi-symbol) and 400 conflict rules |
| GET /v1/stocks/unified-snapshot | Stocks | Added tickersAnyOf; tickers documented as single-symbol only; documented 400 conflict rules; options payload field descriptions aligned to backend optional fields |
| GET /v1/financials/reported | Financials | Corrected request contract: at least one of symbol, cik, or accessNumber is required; freq, from, to remain optional |
| GET /v1/financials/revenue-breakdown | Financials | Corrected request contract: at least one of symbol or cik is required (both are no longer documented as required together) |
| GET /v1/filings/similarity-index | Filings | Clarified that either symbol or cik must be provided, while freq remains optional |
| GET /v1/calendars/mergers-acquisitions | Calendar | Updated the response example to include current acquisition fields such as dateExpected, acquirer details, and notes |
DataAvailability schema | Accounts | available and source are no longer documented as required fields |
Request and response docs were updated to align endpoint contracts with live API behavior.Summary of changes by endpoint:
| Endpoint | Section | Change (short & precise) |
|---|---|---|
| GET /v1/company/metrics | Company | Query metric documentation now supports all only; removed other documented enum values |
| GET /v1/company/executive | Company | 200 response schema updated to executives[] with fields age, compensation, currency, name, position, sex, since |
| GET /v1/company/profile | Company | Request docs clarified that at least one of symbol, isin, or cusip is required; omitting all returns 400 |
| GET /v1/marketdata/equities/details | Market Data | 200 response docs aligned to current live payload shape (data + errors and field mapping) |
| GET /v1/accounts//positions | Accounts | 200 response fields aligned to live payload naming and structure |
Request and response docs were aligned to live API payloads across Accounts, Financials, Market Data, Orders, and Options. This update also adds the new option snapshot endpoints and broadens documented error response coverage.Summary of changes by endpoint:
Updated on: April 13, 2026
| Endpoint | Section | Change (short & precise) |
|---|---|---|
| GET /v1/users/me/accounts | Users | 200 response now documents account_type and account_class on account objects |
| GET /v1/accounts//balances | Accounts | 200 response aligned to the flat top-level balance payload with all returned fields and decimal-string amounts |
| GET /v1/accounts//positions | Accounts | 200 response aligned to { positions, availability } with decimal-string numeric fields |
| GET /v1/marketdata/equities/details | Market Data | Response wrapper clarified as data plus errors; field names now reflect service JSON output |
| GET /v1/marketdata/search | Market Data | 200 response clarified as a top-level JSON array, not a results wrapper |
| POST /v1/orders/preview | Orders | Preview response now includes warnRuleId in the documented equity and option preview payloads |
| GET /v1/options/snapshot/chain/ | Options | New endpoint added; request supports option chain filters and the response returns paginated snapshot data with requestId, status, results, and nextUrl |
| GET /v1/options/snapshot// | Options | New endpoint added; response returns contract metadata, day bar, last quote, last trade, Greeks, and underlying snapshot data |
| Multiple endpoints | Cross-API | Added and standardized missing 400, 401, 403, 404, and 500 error responses to better match live API behavior |
Critical endpoint corrections and response schema updates to align documentation with the API.Summary of changes by endpoint:
Breaking Changes:
| Endpoint | Section | Change (short & precise) |
|---|---|---|
| GET /v1/analytics/insights | Analytics | Fixed endpoint path typo: /v1/analyst/insights → /v1/analytics/insights (breaking) |
| GET /v1/stock/dividend2 | Corporate Actions | Deprecated - Endpoint removed completely from API and documentation |
| GET /v1/news | News | Request params changed to symbols, topics; response changed from articles to news array (breaking) |
| GET /v1/news/ | News | Added new endpoint to retrieve single news item by ID with newsType query param |
| GET /v1/company/profile | Company | Added 404/500 error responses; updated response example with all fields including masked logo URL |
| GET /v1/users/me | Users | Added response fields: avatar_url, email_verified, primary_phone_number |
/v1/analyst/insights→/v1/analytics/insights(path correction)/v1/stock/dividend2removed (use/v1/corporate-actions/dividends)/v1/newsresponse:articles→newsarray
API and documentation updates: response renames for stock estimates and earnings, Fundamentals and Watchlist schema changes, Analytics ratings and equity details, order and OAuth schema changes, and WebSocket docs and endpoints.Summary of changes by endpoint:
For stock estimate endpoints, the array remains under
| Endpoint | Section | Change (short & precise) |
|---|---|---|
| GET /v1/stock/revenue-estimate | Stock Estimates | Response root key renamed: data → revenueEstimates (breaking) |
| GET /v1/stock/ebitda-estimate | Stock Estimates | Response root key renamed: data → ebitdaEstimates (breaking) |
| GET /v1/stock/ebit-estimate | Stock Estimates | Response root key renamed: data → ebitEstimates (breaking) |
| GET /v1/stock/eps-estimate | Stock Estimates | Response root key renamed: data → epsEstimates (breaking) |
| GET /v1/stock/earnings | Earnings | Response root key renamed: data → earningSurprises (breaking) |
| GET /v1/financials/reported | Fundamentals | Added accessNumber, freq; from/to now use date format |
| GET /v1/financials/revenue-breakdown | Fundamentals | Removed from and to; only symbol and cik remain |
| GET /v1/financials/statements | Fundamentals | Required: symbol, statement, freq; optional: preliminary; removed from, to |
| POST /v1/watchlist | Watchlist | account_id replaced by user_id (integer) |
| PUT /v1/watchlist | Watchlist | Request/response updated to use user_id |
| GET /v1/watchlist | Watchlist | Response requires user_id and watchlist; symbols minItems removed |
| GET /v1/analytics/ratings | Analytics – Ratings | Added query params: action, analystId, firmId |
| GET /v1/analytics/ratings | Analytics – Ratings | Pagination defaults/max removed; importance min/max removed |
| GET /v1/analytics/ratings | Analytics – Ratings | Schemas switched to snake_case; new Rating & Accuracy fields added |
| GET /v1/analytics/ratings | Analytics – Ratings | GetRatingsResponse now requires ratings |
| GET /v1/marketdata/equities/details | Market Data | Response now requires data and errors; equity fields expanded |
| GET /v1/marketdata/search | Market Data | Added futures search example (query: "/ES") |
| POST /v1/orders | Orders | timeInForce enum extended |
| POST /v1/orders | Orders | exDestination removed from request schema |
| POST /v1/orders/preview | Orders | cost renamed to estimatedCost; added estimatedMargin |
| POST /v1/orders/preview | Orders | Removed reject/warn fields; added warnings and errors arrays |
| POST /v1/oauth2/authorize | OAuth2 | OAuth paths standardized under /v1/oauth2/ |
| POST /v1/oauth2/authorize | OAuth2 | New encrypted password example; response_type enum = code |
| POST /v1/oauth2/authorize/confirm | OAuth2 | Examples include is_mfa and consent_required |
| POST /v1/oauth2/authorize/mfa | OAuth2 | is_mfa appears only on MFA authorize responses |
| wss://api.aries.com/v1/market/ws | WebSockets | Market Data WebSocket endpoint renamed |
| wss://api.aries.com/v1/charts/ws | WebSockets | New Charting WebSocket endpoint |
| /v1/charts/ws | WebSockets | Docs expanded; “Under Development” warning removed |
*.data; symbol and freq stay in the same wrapper. For earnings, the root value is the array: { "earningSurprises": [ ... ] }. Docs and API use /v1/oauth2/... (not /oauth/...).Release date: February 6, 2025Added official SDK documentation for Python, Go, and JavaScript. Each SDK includes installation instructions, authentication setup, and complete API references.What’s included:
- Quick Start Guides - Get started with code examples for placing orders, checking balances, and retrieving market data
- Authentication - OAuth2 flows with PKCE, MFA support, and automatic token refresh
- API References - Full documentation for 9 endpoints: Accounts, Orders, Users, Analytics, Market Data, Watchlist, Chart, News & Calendars, and Settings
- Code Examples - 30+ examples covering market orders, limit orders, stop losses, bracket strategies, and portfolio management
- Error Handling - Common error patterns and how to handle them in each language
- TypeScript Support - Full type definitions for JavaScript/TypeScript users
Complete documentation overhaul for Fundamentals API with enhanced schemas and real-world examples to streamline integration.Enhanced Documentation Coverage:
- All 18 Fundamentals API endpoints now include comprehensive request/response examples
- Added detailed field descriptions for company metrics, financials, and ownership data
- Included common use cases and filtering patterns for faster implementation
Added WebSocket streaming APIs and supplemental REST endpoints.New WebSocket connections:
- Market Data WebSocket for quotes, trades, and Level 2 orderbook data across
equities,indices, andoptions - TradingView Chart WebSocket for real-time chart data
- Account Updates WebSocket for order, position, balance, and P&L updates
- Watchlist WebSocket for live watchlist synchronization
- Market movers:
GET /v1/equity/top-gainers,GET /v1/equity/top-losers,GET /v1/equity/top-most-active - Sector analysis:
GET /v1/equity/sector-tickers,GET /v1/equity/sector-wise-change - Options flow:
GET /v1/options/stocks/top-volume,GET /v1/options/etfs/top-volume - Market indicators:
GET /v1/analytics/market-breadth,GET /v1/analytics/net-inflow - Calendar, company, ownership, financials, filings, IPO, and dividend endpoints
Enhanced market intelligence with calendar events, detailed equity information, and advanced analytics for systematic trading strategies.Calendar Integration:
GET /v1/calendars/economics- Track economic events that impact market volatilityGET /v1/calendars/earnings- Monitor upcoming earnings with symbol and date filteringGET /v1/calendars/historical/{symbol}- Access historical indicator data for backtesting
GET /v1/marketdata/equities/details- Batch retrieve detailed equity information for up to 50 symbols in a single request, reducing API calls and improving performance
- Analyst ratings with filtering by ticker, date range, and importance level
- Real-time market breadth showing advancers vs. decliners across exchanges
- Net inflow data for NASDAQ and NYSE to track institutional money flow
Initial release of Aries API with OAuth2 authentication, order execution, and account management capabilities for building trading applications.Release date: August 5, 2025