curl --request GET \
--url https://api.aries.com/v1/stocks/unified-snapshot \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aries.com/v1/stocks/unified-snapshot"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aries.com/v1/stocks/unified-snapshot', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aries.com/v1/stocks/unified-snapshot",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.aries.com/v1/stocks/unified-snapshot"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.aries.com/v1/stocks/unified-snapshot")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aries.com/v1/stocks/unified-snapshot")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"requestId": "1d0ab9bef56cd6a18a809d4c4c0070f1",
"results": [
{
"fmv": 270.66,
"fmvLastUpdated": 1767606739184712400,
"lastMinute": {
"close": 270.66,
"high": 270.66,
"low": 270.66,
"open": 270.66,
"transactions": 3,
"volume": 53,
"vwap": 270.66
},
"lastQuote": {
"ask": 285.79,
"askExchange": 15,
"askSize": 100,
"bid": 258.4,
"bidExchange": 15,
"bidSize": 100,
"lastUpdated": 1767387600000915500,
"timeframe": "DELAYED"
},
"lastTrade": {
"conditions": [
12,
37
],
"exchange": 15,
"id": "14717",
"lastUpdated": 1767391050283999700,
"price": 270.81,
"size": 3,
"timeframe": "DELAYED"
},
"marketStatus": "early_trading",
"name": "Apple Inc.",
"session": {
"change": -0.2,
"changePercent": -0.0738,
"close": 270.66,
"earlyTradingChange": -0.35,
"earlyTradingChangePercent": -0.129,
"high": 271.025,
"low": 270.371,
"open": 271.005,
"previousClose": 271.01,
"volume": 23380
},
"ticker": "AAPL",
"type": "stocks"
}
],
"status": "OK"
}Unified Snapshot
Get unified snapshots across multiple asset classes (stocks, options, fx, crypto, indices) in a single request. Comprehensive market data with FMV, last trade, and session information.
Use Case: Create cross-asset portfolio views and multi-market dashboards with real-time pricing across different asset types.
curl --request GET \
--url https://api.aries.com/v1/stocks/unified-snapshot \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aries.com/v1/stocks/unified-snapshot"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aries.com/v1/stocks/unified-snapshot', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aries.com/v1/stocks/unified-snapshot",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.aries.com/v1/stocks/unified-snapshot"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.aries.com/v1/stocks/unified-snapshot")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aries.com/v1/stocks/unified-snapshot")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"requestId": "1d0ab9bef56cd6a18a809d4c4c0070f1",
"results": [
{
"fmv": 270.66,
"fmvLastUpdated": 1767606739184712400,
"lastMinute": {
"close": 270.66,
"high": 270.66,
"low": 270.66,
"open": 270.66,
"transactions": 3,
"volume": 53,
"vwap": 270.66
},
"lastQuote": {
"ask": 285.79,
"askExchange": 15,
"askSize": 100,
"bid": 258.4,
"bidExchange": 15,
"bidSize": 100,
"lastUpdated": 1767387600000915500,
"timeframe": "DELAYED"
},
"lastTrade": {
"conditions": [
12,
37
],
"exchange": 15,
"id": "14717",
"lastUpdated": 1767391050283999700,
"price": 270.81,
"size": 3,
"timeframe": "DELAYED"
},
"marketStatus": "early_trading",
"name": "Apple Inc.",
"session": {
"change": -0.2,
"changePercent": -0.0738,
"close": 270.66,
"earlyTradingChange": -0.35,
"earlyTradingChangePercent": -0.129,
"high": 271.025,
"low": 270.371,
"open": 271.005,
"previousClose": 271.01,
"volume": 23380
},
"ticker": "AAPL",
"type": "stocks"
}
],
"status": "OK"
}Note: In the docs playground, if you entertickers, leavetypeunselected. If you selecttype, yourtickersvalue should stay entered and should not be removed from the form.
Authorizations
OAuth2 Bearer token: obtain an access token from the token endpoint and send it in the Authorization header.
- Authorization URL
- https://app.aries.com/oauth2/authorize
- Token URL
- https://api.aries.com/v1/oauth2/token
- Refresh URL
- https://api.aries.com/v1/oauth2/token
- Token URL
- https://api.aries.com/v1/oauth2/token
- Refresh URL
- https://api.aries.com/v1/oauth2/token
Query Parameters
Which asset class to include in the snapshot. Allowed values:
stocks— equities and ETFs.options— option contracts.fx— foreign-exchange currency pairs.crypto— cryptocurrencies.indices— market indices like SPX, NDX, VIX. Asset class filter for unified snapshot.
stocks, options, fx, crypto, indices "stocks"
Single ticker symbol filter. Enter one ticker such as AAPL to narrow results to one company. In the docs playground, if you enter ticker, do not select type, because selecting type can clear the ticker field.
"AAPL"
Comma-separated list of ticker symbols (maximum 250).
"AAPL,TSLA,GOOG"
Ticker lower-bound filter. Returns symbols alphabetically on or after this ticker.
"A"
Ticker lower-bound filter. Returns symbols alphabetically after this ticker, excluding the ticker itself.
"A"
Ticker upper-bound filter. Returns symbols alphabetically on or before this ticker.
"Z"
Ticker upper-bound filter. Returns symbols alphabetically before this ticker, excluding the ticker itself.
"Z"
Sort order for returned records. Use asc for oldest first or desc for newest first when supported.
asc, desc Maximum number of results to return. Use smaller values for UI pages and larger values for exports within API limits.
1 <= x <= 25010
Sort field used for ordering. Massive documents this separately from order, so enter the provider-supported field name in the text box, for example ticker.
Pagination cursor from the previous response. Omit it on the first request, then send the returned cursor to fetch the next page.
Response
Successful response
URL for next page of results
Unique request ID
Array of unified snapshots
Show child attributes
Show child attributes
Status string from the upstream data provider — typically OK for a successful response. Treat any other value as an error indicator alongside the HTTP status code.
Was this page helpful?