Oil Price API Documentation - Quick Start in 5 Minutes | REST API
GitHub
GitHub
  • Interactive Explorer

    • Interactive API Explorer
  • Price Data

    • API Reference
    • Get Latest Prices
    • Historical Prices
  • Commodities

    • List Commodities
    • Get Commodity Details
  • Marine Fuels

    • List Marine Fuel Ports
    • Get Port Details with Prices
  • Premium Endpoints

    • All Prices API - One Call, All Commodities
    • Cushing Oil Storage Intelligence API
    • Drilling Intelligence API
    • Marine Fuels API
    • ICE Brent Futures API
  • Futures

    • Futures API
    • ICE Brent Futures
    • ICE WTI Futures
    • ICE Gas Oil Futures
    • NYMEX Natural Gas Futures
  • Dark Data (Premium)

    • Dark Data API
    • Rig Counts
    • Oil Inventories
    • OPEC Production
    • Drilling Productivity
    • Forecasts (STEO)
  • Analytics

    • Analytics API
  • Account & Billing

    • Account API

Rig Counts

Weekly rig count data from Baker Hughes, the industry standard for drilling activity.

Source: Baker Hughes Weekly Rig Count Report Release: Every Friday at 1:00 PM ET Tier Required: Reservoir Mastery

Endpoints

MethodEndpointDescription
GET/v1/dark_data/rig_countsList paginated reports
GET/v1/dark_data/rig_counts/latestLatest report with full breakdown
GET/v1/dark_data/rig_counts/by_basinFilter by basin
GET/v1/dark_data/rig_counts/by_stateFilter by US state
GET/v1/dark_data/rig_counts/historicalHistorical trend data
GET/v1/dark_data/rig_counts/:idSpecific report by ID

List Reports

GET /v1/dark_data/rig_counts

Parameters

ParameterTypeDefaultDescription
pageinteger1Page number
per_pageinteger10Results per page (max 50)

Response

{
  "data": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "report_date": "2025-01-10",
      "summary": "US Rig Count: 511 (+2 WoW)",
      "status": "published"
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 10,
    "total_count": 100,
    "total_pages": 10
  }
}

Latest Report

GET /v1/dark_data/rig_counts/latest

Response

{
  "data": {
    "report_date": "2025-01-10",
    "us_total": 511,
    "week_over_week": 2,
    "year_over_year": -45,
    "basins": {
      "permian": { "count": 187, "change": 2 },
      "eagle_ford": { "count": 48, "change": 0 },
      "bakken": { "count": 32, "change": -1 },
      "haynesville": { "count": 41, "change": 1 }
    },
    "top_states": [
      { "state": "Texas", "count": 248, "change": 3 },
      { "state": "New Mexico", "count": 89, "change": 1 },
      { "state": "Oklahoma", "count": 42, "change": -1 }
    ]
  }
}

By Basin

GET /v1/dark_data/rig_counts/by_basin

Parameters

ParameterTypeRequiredDescription
basinsstringNoComma-separated: permian,eagle_ford,haynesville
datedateNoSpecific report date (default: latest)

Valid Basins

permian, bakken, eagle_ford, niobrara, appalachia, anadarko, haynesville

Response

{
  "data": {
    "report_date": "2025-01-10",
    "basins": [
      {
        "region": "permian",
        "region_type": "basin",
        "count": 187,
        "week_over_week": 2,
        "change_direction": "up"
      }
    ]
  }
}

By State

GET /v1/dark_data/rig_counts/by_state

Parameters

ParameterTypeRequiredDescription
statesstringNoComma-separated: texas,oklahoma,wyoming
datedateNoSpecific report date

Response

{
  "data": {
    "report_date": "2025-01-10",
    "states": [
      {
        "state": "texas",
        "count": 248,
        "week_over_week": 3,
        "change_direction": "up"
      }
    ]
  }
}

Historical Trend

GET /v1/dark_data/rig_counts/historical

Parameters

ParameterTypeDefaultDescription
regionstringusRegion name (basin, state, or us)
start_datedate1 year agoStart of range
end_datedatetodayEnd of range
limitinteger52Max records (max 520 = 10 years)

Response

{
  "data": {
    "region": "permian",
    "data_points": [
      {
        "report_date": "2025-01-10",
        "count": 187,
        "week_over_week": 2
      },
      {
        "report_date": "2025-01-03",
        "count": 185,
        "week_over_week": -1
      }
    ]
  }
}

Code Examples

Python

import requests

api_key = "YOUR_API_KEY"
headers = {"Authorization": f"Token {api_key}"}

# Get Permian basin trend
response = requests.get(
    "https://api.oilpriceapi.com/v1/dark_data/rig_counts/historical",
    headers=headers,
    params={"region": "permian", "limit": 52}
)
data = response.json()

for point in data["data"]["data_points"]:
    print(f"{point['report_date']}: {point['count']} rigs")

JavaScript

const response = await fetch(
  "https://api.oilpriceapi.com/v1/dark_data/rig_counts/latest",
  { headers: { "Authorization": "Token YOUR_API_KEY" } }
);
const data = await response.json();

console.log(`US Total: ${data.data.us_total} rigs`);
console.log(`Permian: ${data.data.basins.permian.count} rigs`);

Why Rig Counts Matter

  • Leading Indicator: Rig counts lead production changes by 4-6 months
  • Basin Activity: Track drilling focus across shale plays
  • Investment Signals: Capital allocation trends in E&P sector
  • Supply Forecasting: Project future production capacity

Related

  • Drilling Productivity - DUC wells and productivity
  • Oil Inventories - Storage levels
  • OPEC Production - OPEC output data
Last Updated: 12/30/25, 12:33 PM
Prev
Dark Data API
Next
Oil Inventories