Quantitative Commodities, Energy & Maritime Events API Suite
Ingest daily fishing tonnage, global energy/dark tanker transit volumes, chokepoint freight transit velocity indices (ETVI), and decaying geopolitical/navigational hazard telemetry directly into your quantitative commodities and shipping models.
Output includes row-level cooperative/dark fleet & OFAC sanctions telemetry (parquet.gzip), gridded spatial metrics (GeoJSON & parquet.gzip), and Rolling Dark Fleet Beta & 5-day ETVI recovery curves (JSON).
API Credentials
Generate or re-issue your automated API key to authenticate requests.
Pass your API key in all HTTP requests using the header:
x-api-key: <YOUR_KEY>
Keys are delivered directly to your corporate inbox. Re-requesting a key automatically invalidates the previous key.
Manual Data Download
Paste your active API key, select a dataset & format, and specify a historical target date to download directly to your machine.
Quickstart Integration
The API returns a secure, time-limited S3 pre-signed link (download_url). Select your language below to request and save the datasets locally.
$Headers = @{
"x-api-key" = "YOUR_API_KEY_HERE"
"Content-Type" = "application/json"
}
# Option A: Gridded Tonnage (GeoJSON or Parquet)
$resGrid = Invoke-RestMethod -Method GET -Uri "https://api.androai.us/quant-finance-data/gridded-tonnage?target_date=2026-10-25&format=parquet" -Headers $Headers
Invoke-WebRequest -Uri $resGrid.download_url -OutFile "gridded_tonnage_20261025.parquet.gzip"
# Option B: Energy Chokepoints, Rolling Dark Fleet Beta & 5d Hazard Decay (JSON)
$resEnergy = Invoke-RestMethod -Method GET -Uri "https://api.androai.us/quant-finance-data/energy-chokepoints?target_date=2026-10-25" -Headers $Headers
Invoke-WebRequest -Uri $resEnergy.download_url -OutFile "chokepoint_volume_20261025.json"
# Option C: Chokepoint Freight Velocity ETVI & 5d Recovery Curve (JSON)
$resFreight = Invoke-RestMethod -Method GET -Uri "https://api.androai.us/quant-finance-data/freight-velocity?target_date=2026-10-25" -Headers $Headers
Invoke-WebRequest -Uri $resFreight.download_url -OutFile "freight_velocity_20261025.json"
# Option D: Grid-Mapped Maritime Events & OFAC Sanctioned Vessels (Parquet.gzip)
$resEvents = Invoke-RestMethod -Method GET -Uri "https://api.androai.us/quant-finance-data/gridded-tonnage?target_date=2026-10-25&dataset=grid_events" -Headers $Headers
Invoke-WebRequest -Uri $resEvents.download_url -OutFile "grid_events_20261025.parquet.gzip"
# Option A: Download Gridded Tonnage (format=geojson or format=parquet)
GRID_URL=$(curl -s -H "x-api-key: YOUR_API_KEY_HERE" "https://api.androai.us/quant-finance-data/gridded-tonnage?target_date=2026-10-25&format=parquet" | jq -r .download_url)
curl -o "gridded_tonnage_20261025.parquet.gzip" "$GRID_URL"
# Option B: Download Energy Chokepoints, Dark Beta & Geopolitical Decay (JSON)
ENERGY_URL=$(curl -s -H "x-api-key: YOUR_API_KEY_HERE" "https://api.androai.us/quant-finance-data/energy-chokepoints?target_date=2026-10-25" | jq -r .download_url)
curl -o "chokepoint_volume_20261025.json" "$ENERGY_URL"
# Option C: Download Chokepoint Freight Velocity ETVI & 5d Recovery Curve (JSON)
FREIGHT_URL=$(curl -s -H "x-api-key: YOUR_API_KEY_HERE" "https://api.androai.us/quant-finance-data/freight-velocity?target_date=2026-10-25" | jq -r .download_url)
curl -o "freight_velocity_20261025.json" "$FREIGHT_URL"
# Option D: Download Grid-Mapped Maritime Events (dataset=grid_events or dataset=ofac_sanctions)
EVENTS_URL=$(curl -s -H "x-api-key: YOUR_API_KEY_HERE" "https://api.androai.us/quant-finance-data/gridded-tonnage?target_date=2026-10-25&dataset=grid_events" | jq -r .download_url)
curl -o "grid_events_20261025.parquet.gzip" "$EVENTS_URL"
import requests
import pandas as pd
headers = {
"x-api-key": "YOUR_API_KEY_HERE",
"Content-Type": "application/json"
}
# Option A: Energy Chokepoints, Rolling Dark Fleet Beta & 5d Hazard Decay (JSON)
energy_endpoint = "https://api.androai.us/quant-finance-data/energy-chokepoints?target_date=2026-10-25"
res_energy = requests.get(energy_endpoint, headers=headers).json()
chokepoint_data = requests.get(res_energy["download_url"]).json()
# Option B: Chokepoint Freight Velocity ETVI & 5d Recovery Trajectory (JSON)
freight_endpoint = "https://api.androai.us/quant-finance-data/freight-velocity?target_date=2026-10-25"
res_freight = requests.get(freight_endpoint, headers=headers).json()
freight_data = requests.get(res_freight["download_url"]).json()
# Option C: Grid-Mapped NGA/GDELT Events with Exponential Decay (parquet.gzip)
events_endpoint = "https://api.androai.us/quant-finance-data/gridded-tonnage?target_date=2026-10-25&dataset=grid_events"
res_events = requests.get(events_endpoint, headers=headers).json()
df_events = pd.read_parquet(res_events["download_url"])
# Option D: Point-in-Time OFAC SDN Sanctioned Maritime Vessels (parquet.gzip)
ofac_endpoint = "https://api.androai.us/quant-finance-data/gridded-tonnage?target_date=2026-10-25&dataset=ofac_sanctions"
res_ofac = requests.get(ofac_endpoint, headers=headers).json()
df_ofac = pd.read_parquet(res_ofac["download_url"])
print(chokepoint_data["chokepoints"]["hormuz"]["geopolitical_catalyst_context"])
print(freight_data["chokepoints"][0]["projected_5d_etvi_recovery_curve"])