Reference · built on requestCommons signalEnergy & grid

EPA Clean Air Markets Program Data (CAMPD) API

Hourly SO2, NOx, CO2, and heat input by power plant unit, plus facility, allowance, and compliance data from the U.S. EPA.

About

EPA's Clean Air and Power Division collects continuously monitored emissions from electric generating units under 40 CFR Part 75. Most affected units have nameplate capacity above 25 MW and burn fossil fuel to generate electricity for sale. Each unit reports hourly SO2, NOx, CO2, and mercury emissions, heat input in mmBtu, gross load, and operating time, with facility attributes, fuel types, and control equipment. The CAM API at api.epa.gov/easey exposes this as apportioned emissions at hourly, daily, monthly, quarterly, annual, and ozone season grain, by unit, facility, state, or nationally, beside allowance holdings, transactions, and compliance records. Units submit each calendar quarter's data within 30 days of quarter end.

An operator reads the hourly record for the units you own or buy from and proposes the emissions evidence or benchmark line for review, with the query and period recorded.

This is a reference listing. It documents what Fibric would read from EPA Clean Air Markets Program Data (CAMPD) API and what it could propose, based on the publisher's published interfaces. Fibric builds it under a managed deployment when you request it; selecting it here installs nothing.

Inputs

  • Hourly apportioned emissions per unit from /streaming-services/emissions/apportioned/hourly: so2Mass, noxMass, co2Mass, rates per mmBtu, heatInput, grossLoad, opTime
  • Daily, monthly, quarterly, annual, and ozone season apportioned emissions, each with by-facility, by-state, and nationally rollups
  • Hourly MATS data from /streaming-services/emissions/apportioned/mats/hourly
  • Facility and unit attributes from /streaming-services/facilities/attributes and /facilities-mgmt/facilities/{id}: unit type, fuels, controls, program codes
  • Allowance holdings, transactions, and compliance from /streaming-services/allowance-holdings, /allowance-transactions, /allowance-compliance, and /emissions-compliance
  • Prepackaged bulk files from /camd-services/bulk-files and the quarterly load marker from /streaming-services/emissions/apportioned/quarterly/last-updated

Proposed actions

Read-only. This feed informs operators; it changes nothing.

Proposed actions are target capabilities. Every action runs propose-first and needs a validated deployment and the appropriate permissions.

What you can build

  • Attach plant emissions to a compliance pack

    Compliance Evidence pulls the quarterly apportioned emissions and emissions-compliance records for the units on your checklist and proposes the evidence pack with each figure's endpoint and period.

    With Compliance Evidence

  • Benchmark units against their peers

    Site Benchmark ranks each unit's CO2 rate per mmBtu and heat input against units of the same unitType and fuel in the same state, and proposes a review for the outliers.

    With Site Benchmark

  • Source the emissions line in the board pack

    Board Pack reads annual apportioned emissions by facility for the plants you own or contract from and proposes the figure with its query and reporting quarter cited.

    With Board Pack

Requirements

  • A free api.data.gov API key, requested through the signup form on the CAM API portal
  • The facilityId (EIA ORIS code), stateCode, or programCodeInfo values that select the units you need
  • beginDate and endDate for every emissions query, with page and perPage on paged endpoints
Authentication
A free api.data.gov API key sent in the x-api-key request header; the EPA portal hosts the signup form.

Limits

  • Default rate limit of 1,000 requests per hour per key, a 15-minute timeout per request, and 500 rows per page on paged endpoints
  • Data arrives quarterly: units submit hourly records within 30 days of each calendar quarter's end, so recent hours wait until the quarter is filed
  • Coverage is units affected by EPA's federal trading programs, mostly fossil-fired units above 25 MW; other generators are absent
  • Reference listing: Fibric builds the CAM API pull for a managed deployment on request, scoped to the facility ids you supply

Access and pricing

Reference listing. Public feed access is separate from Fibric integration. If you request this feed, your quote covers the build, usage, and support.

Request EPA Clean Air Markets Program Data (CAMPD) API ↗

Questions and answers

How current is the hourly data?
Affected units must submit each calendar quarter's hourly emissions and operating data within 30 days of quarter end, so fourth quarter data are due by January 30. Query /streaming-services/emissions/apportioned/quarterly/last-updated to see when a quarter was last loaded.
What is the difference between CAMPD and ECMPS data?
EPA states that CAMPD and its APIs serve emissions apportioned for units with complex configurations, while ECMPS holds the raw reported data without apportionment. The apportioned endpoints under /streaming-services and /emissions-mgmt are the CAMPD view.
Is there a download limit?
The CAMPD web application caps a download at 1,000,000 records. EPA states there is no record limit on the streaming services APIs, which return CSV or JSON, though each request has a 15-minute timeout and the key's hourly rate limit still applies.
Ask about EPA Clean Air Markets Program Data (CAMPD) API

Ask about the capabilities and requirements in this listing.

For project-specific requirements, contact Fibric.