Mining TerminalMINING TERMINAL

API Documentation

Access mining data programmatically

Data Coverage

3,070 companies, 12,500+ projects, 2,623 stocks with real-time prices

Documents

1.79M filings, NI 43-101 reports, news releases, financials

Rate Limits

1,000 req/hr (Free), 10,000/hr (Pro), 100,000/hr (Enterprise)

Authentication

API key via Authorization header

Available Data Types

Stocks & PricesCompaniesProjects & MapsFilings & DocumentsDrill InterceptsResources & ReservesProduction MetricsProject EconomicsSector AnalyticsCommodity PricesSatellite Imagery

Authentication

Include your API key in the Authorization header for all requests:

curl -X GET "https://api.orebody.io/api/stocks" \
  -H "Authorization: Bearer YOUR_API_KEY"
GET/api/stocks

List all mining stocks with real-time prices, pagination and filters

Parameters

NameTypeDescription
pagenumberPage number (default: 1)
limitnumberResults per page (default: 20, max: 100)
searchstringSearch by ticker or company name
commoditystringFilter by commodity (Gold, Silver, Copper, Lithium, Uranium, etc.)
exchangestringFilter by exchange (TSX, TSX-V, ASX, NYSE, LSE, OTC)
countrystringFilter by country of operations
typestringFilter by company type (producer, developer, explorer)
minMarketCapnumberMinimum market cap filter
maxMarketCapnumberMaximum market cap filter
sortFieldstringSort by field (marketCap, price, changePercent, volume)
sortDirectionstringSort direction (asc, desc)

Response

{
  "stocks": [
    {
      "id": "2584",
      "ticker": "AHR",
      "name": "Amarc Resources",
      "exchange": "TSX-V",
      "price": 1.19,
      "change": -0.08,
      "changePercent": -6.30,
      "volume": 65398,
      "marketCap": 125000000,
      "type": "explorer",
      "commodities": ["Copper", "Gold"],
      "country": "Canada",
      "sparkline": [1.15, 1.18, 1.22, 1.19]
    }
  ],
  "totalCount": 2623,
  "page": 1,
  "totalPages": 132,
  "pageSize": 20
}
GET/api/stocks/:id

Get detailed stock information with full price history and company data

Parameters

NameTypeDescription
idstringStock ID or ticker symbol (e.g., "AHR" or "2584")

Response

{
  "stock": {
    "id": "2584",
    "ticker": "AHR",
    "name": "Amarc Resources",
    "exchange": "TSX-V",
    "price": 1.19,
    "change": -0.08,
    "changePercent": -6.30,
    "volume": 65398,
    "marketCap": 125000000,
    "week52High": 1.85,
    "week52Low": 0.92,
    "avgVolume": 45000,
    "commodities": ["Copper", "Gold"],
    "country": "Canada",
    "sparkline": [1.15, 1.18, 1.22, 1.19]
  },
  "company": {
    "id": 1234,
    "description": "Amarc Resources Ltd. engages in...",
    "website": "https://amarcresources.com",
    "industry": "Junior Explorer",
    "minerals": ["Copper", "Gold", "Silver"],
    "countries": ["Canada"],
    "projectsCount": 3
  },
  "priceHistory": [
    { "time": "2025-12-15", "open": 1.27, "high": 1.27, "low": 1.19, "close": 1.19, "volume": 65398 }
  ],
  "filings": [
    { "id": "doc-123", "title": "Q3 2025 MD&A", "type": "quarterly", "date": "2025-11-15", "url": "..." }
  ],
  "projects": [
    { "id": 456, "name": "IKE Project", "stage": "Exploration", "country": "Canada" }
  ]
}
GET/api/stocks/movers

Get top gainers and losers for the day

Parameters

NameTypeDescription
limitnumberNumber of stocks per category (default: 10, max: 50)

Response

{
  "gainers": [
    { "id": "123", "ticker": "ALTN", "name": "Altona Mining", "changePercent": 55.56, "price": 0.07, "volume": 1250000 }
  ],
  "losers": [
    { "id": "456", "ticker": "HML", "name": "Hemi Mining", "changePercent": -40.0, "price": 0.015, "volume": 890000 }
  ]
}
GET/api/stocks/peers/:id

Get peer companies for comparison

Parameters

NameTypeDescription
idstringCompany ID
commoditystringFilter peers by commodity
limitnumberNumber of peers (default: 5)

Response

{
  "peers": [
    { "id": "789", "ticker": "NGC", "name": "Northern Gold", "price": 2.35, "marketCap": 180000000, "stage": "Developer" }
  ]
}

Quick Start

JSJavaScript / TypeScript

const response = await fetch(
  'https://api.orebody.io/api/stocks',
  {
    headers: {
      'Authorization': 'Bearer YOUR_API_KEY'
    }
  }
);
const data = await response.json();

PYPython

import requests

response = requests.get(
  'https://api.orebody.io/api/stocks',
  headers={
    'Authorization': 'Bearer YOUR_API_KEY'
  }
)
data = response.json()