MINING TERMINALAPI 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/stocksList all mining stocks with real-time prices, pagination and filters
Parameters
| Name | Type | Description |
|---|---|---|
| page | number | Page number (default: 1) |
| limit | number | Results per page (default: 20, max: 100) |
| search | string | Search by ticker or company name |
| commodity | string | Filter by commodity (Gold, Silver, Copper, Lithium, Uranium, etc.) |
| exchange | string | Filter by exchange (TSX, TSX-V, ASX, NYSE, LSE, OTC) |
| country | string | Filter by country of operations |
| type | string | Filter by company type (producer, developer, explorer) |
| minMarketCap | number | Minimum market cap filter |
| maxMarketCap | number | Maximum market cap filter |
| sortField | string | Sort by field (marketCap, price, changePercent, volume) |
| sortDirection | string | Sort 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/:idGet detailed stock information with full price history and company data
Parameters
| Name | Type | Description |
|---|---|---|
| id | string | Stock 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/moversGet top gainers and losers for the day
Parameters
| Name | Type | Description |
|---|---|---|
| limit | number | Number 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/:idGet peer companies for comparison
Parameters
| Name | Type | Description |
|---|---|---|
| id | string | Company ID |
| commodity | string | Filter peers by commodity |
| limit | number | Number 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()