Discover/puc.ny.gov API
live

puc.ny.gov APIpuc.ny.gov

Search and retrieve regulatory filings, case metadata, and documents from the NY Public Service Commission DMM system via 3 structured API endpoints.

Endpoints
3
Updated
10d ago
Try it
Page number for pagination
Search keyword or phrase (e.g. 'testimony', 'rate case')
api.parse.bot/scraper/3049f238-c58c-42d9-a436-623487309d55/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Use it in your codegrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/3049f238-c58c-42d9-a436-623487309d55/search_documents?page=1&query=rate+case' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 3 totalclick to expand

Search for documents by keyword using the DPS document search engine. Returns paginated results with titles, snippets, and download links. Pagination requires a session-based state: the initial search is performed first, then subsequent pages are fetched.

Input
ParamTypeDescription
pageintegerPage number for pagination
querystringSearch keyword or phrase (e.g. 'testimony', 'rate case')
Response
{
  "type": "object",
  "fields": {
    "page": "integer — current page number",
    "query": "string — the search query used",
    "results": "array of document objects with title, document_id, download_url, snippet, and page",
    "total_results": "string — total results text from the page header (may be empty)"
  },
  "sample": {
    "data": {
      "page": 1,
      "query": "rate case",
      "results": [
        {
          "page": 1,
          "title": "Comments of the National Energy Marketers Association",
          "snippet": "STATE OF NEW YORK PUBLIC SERVICE COMMISSION ...",
          "document_id": "{42E70C00-6D13-4FAC-B3B0-2BD0FC8D1396}",
          "download_url": "https://documents.dps.ny.gov/search/Home/DownloadDoc/Find?id=%7B42E70C00-6D13-4FAC-B3B0-2BD0FC8D1396%7D&ext=pdf&docTitle=Comments%20of%20the%20National%20Energy%20Marketers%20Association"
        }
      ],
      "total_results": ""
    },
    "status": "success"
  }
}

About the puc.ny.gov API

The puc.ny.gov API exposes 3 endpoints for searching and retrieving documents and case records from the New York Public Service Commission's Document Matter Management system. Use search_documents to run full-text keyword searches across regulatory filings, get_case_details to resolve a case number like '07-E-0949' into metadata and an internal matter sequence ID, and get_case_documents to pull the complete document list for any proceeding.

Searching Regulatory Documents

The search_documents endpoint accepts a query string — such as 'testimony' or 'rate case' — and an optional page integer for paginated results. Each item in the results array includes a title, document_id, download_url, snippet, and page number. Note that pagination is stateful: the first request establishes the search session, and subsequent pages are retrieved by incrementing the page parameter. The total_results field returns the header text from the source page and may occasionally be empty.

Resolving Cases and Fetching Documents

get_case_details takes a case_number in the format NN-X-NNNN (for example, 26-G-0016) and returns a metadata object containing fields such as matter_number, industry, matter_type, company, status, and title, alongside the matter_seq — the internal numeric ID used throughout the DMM system. This matter_seq value is the key input for get_case_documents.

get_case_documents accepts either a case_number or a matter_seq directly; when a case_number is supplied, the matter sequence is resolved internally. The response includes a documents array where each entry carries item_no, date_filed, document_type, title, file_name, file_size, doc_ref_id, and download_url. The total_documents integer tells you exactly how many records were returned for that proceeding.

Coverage Scope

All three endpoints target publicly accessible proceedings in the NY PSC DMM system, covering a wide range of regulated industries including electric, gas, telecommunications, and water utilities. Document types vary by proceeding and can include tariff filings, orders, testimony, and correspondence.

Common use cases
  • Track all filings in a specific PSC rate case by case number to monitor proceeding activity over time.
  • Build a full-text search index of NY PSC regulatory documents using search_documents query results and download_url fields.
  • Resolve a case number to its matter_seq with get_case_details to feed downstream document retrieval workflows.
  • Extract date_filed and document_type fields from get_case_documents to audit filing timelines for utility proceedings.
  • Identify all public filings by a specific company by combining get_case_details company metadata with get_case_documents output.
  • Aggregate document counts across multiple proceedings by comparing total_documents values returned per case.
  • Download and archive proceeding documents programmatically using the download_url field from case document listings.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000250 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does the NY Public Service Commission provide an official developer API for the DMM system?+
No. The NY Department of Public Service does not publish a documented public developer API for the DMM system. The puc.ny.gov API on Parse provides structured access to the same publicly available case and document data.
What does `get_case_details` return beyond the matter sequence ID?+
In addition to matter_seq, the response includes a metadata object with fields such as matter_number, case_number, industry, matter_type, company, status, and title. Field availability can vary by case — not every proceeding populates all metadata fields.
How does pagination work in `search_documents`?+
Pagination requires a session-based state. The first call with a query string initiates the search, and subsequent calls increment the page integer to retrieve additional result pages. Skipping directly to a later page without an initial search may not return expected results. The total_results field reflects the header text from the source and may be empty in some responses.
Can I filter case documents by document type or date range?+
Not currently. get_case_documents returns all public documents for a case in a single array; filtering by document_type or date_filed must be done client-side on the returned data. You can fork this API on Parse and revise it to add server-side filtering parameters against those fields.
Does the API cover docket comments, party intervenor lists, or hearing schedules?+
Not currently. The API covers case metadata via get_case_details and filed documents via get_case_documents, but does not expose comment submissions, intervenor rosters, or scheduled hearing dates. You can fork it on Parse and revise to add endpoints targeting those sections of the DMM system.
Page content last updated . Spec covers 3 endpoints from puc.ny.gov.
Related APIs in Government PublicSee all →
identify.plantnet.org API
Identify and explore plant species by searching through Pl@ntNet's comprehensive botanical database to access detailed information like taxonomic families, genera, species descriptions, photos, and community observations. Track plant distributions, view contribution trends, and discover expert contributors within the platform's collaborative plant identification community.
data.lime.bike API
Access real-time availability data for Lime bikes and scooters, including station locations, vehicle status, system alerts, and geofencing zones across multiple cities. Monitor micromobility inventory and service information to find nearby vehicles or plan your trips effectively.
accessdata.fda.gov API
Search and retrieve comprehensive FDA premarket approval information for medical devices, including approval status, supplements, applicant details, and advisory committee data. Get instant access to specific PMA records with all relevant approval information in one place.
eprocurement.gov API
Monitor India's public procurement opportunities by accessing active tenders, bids closing today, global tenders, high-value contracts, and cancelled tenders from the Central Public Procurement Portal. Search tender details, browse participating organizations, and track real-time procurement statistics to stay informed on government contracting opportunities.
cmegroup.com API
Get CME Group market data including FedWatch interest-rate probabilities, futures quotes and settlements, volume/open interest history, and options expirations and near-the-money option chains.
alienvault.com API
Search and analyze global threat intelligence data including indicators of compromise, threat pulses, and adversary profiles from the Open Threat Exchange community. Monitor recent security alerts and access detailed information about threats and adversaries to strengthen your cybersecurity defenses.
api.nasa.gov API
Access NASA's suite of open data APIs — including the Astronomy Picture of the Day, Near Earth Object tracking, DONKI space weather events, EPIC Earth imagery, Mars weather, the NASA Image and Video Library, the Exoplanet Archive, and EONET natural events.
mahatenders.gov.in API
Access Maharashtra government tenders from mahatenders.gov.in, browsing them by closing date or by organization with full tender details and pagination support. Find and review procurement opportunities across different government departments in one place.