# Federal Register Deadlines (`dataio/federal-register-deadlines`) Actor

US regulations with the days remaining until the comment period closes or the rule takes effect — the countdown the Federal Register never publishes. Sorted by urgency.

- **URL**: https://apify.com/dataio/federal-register-deadlines.md
- **Developed by:** [Tom Awake](https://apify.com/dataio) (community)
- **Categories:** Business, News
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$3.00 / 1,000 regulatory documents

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Federal Register Deadlines

US regulations with **the days remaining** until the comment period closes
or the rule takes effect — sorted by urgency.

**No login. No API key. No proxies.**

### The countdown the source never prints

The Federal Register publishes two dates that bind a company: when the
comment period on a proposed rule **closes**, and when a final rule
**takes effect**. It never publishes the number of days left.

That is the only number a regulatory affairs team actually works from.
*Which proposals affecting us are still open, and how long have we got?*

This Actor does the subtraction on every row, flags what is still open, and
sorts so the tightest deadline is first. A real run, 13 September 2026:

| Document | Agency | Days left |
|---|---|---|
| Request for Information; Clinical Laboratory Improvement | HHS | **1** |
| Medicare and Medicaid Programs; CY 2027 Payment Policies | HHS | **1** |
| Accreditation, Innovation and Modernization | Education | 8 |

Three comment periods closing within eight days, two of them tomorrow —
visible in one column instead of thirty PDF pages.

### Output

| Field | Example |
|---|---|
| `title`, `type`, `action` | Proposed Rule; request for comments |
| `agencies` | Health and Human Services, Food and Drug Administration |
| `commentsCloseOn` | 2026-09-14 |
| **`daysUntilCommentClose`** | **1** |
| `effectiveOn`, **`daysUntilEffective`** | 2026-11-01, 49 |
| `commentPeriodOpen`, `alreadyEffective` | true / false |
| `significant` | flagged under Executive Order 12866 |
| `cfrReferences` | 21 CFR 101 |
| `docketIds`, `regulationIdNumbers` | FDA-2026-N-1234, RIN 0910-AI43 |
| `documentNumber`, `citation`, `startPage`, `pageLength` | |
| `abstract`, `topics` | |
| `htmlUrl`, `pdfUrl` | the document itself |

A negative `daysUntilEffective` means the rule is already in force. A null
means no date was set — not that there is no deadline, so check the
document.

### Input

```json
{
  "documentType": "proposed-rules",
  "openForCommentOnly": true,
  "searchTerm": "artificial intelligence",
  "maxItems": 300
}
```

| Field | Default | Notes |
|---|---|---|
| `documentType` | `proposed-rules` | Proposed, final, notices, presidential |
| `openForCommentOnly` | `true` | Only what you can still influence |
| `searchTerm` | `artificial intelligence` | Full text |
| `maxItems` | `300` | Sorted by nearest deadline |
| `agencies` | — | Slugs, e.g. `food-and-drug-administration` |
| `cfrTitle` | — | 21 food and drugs, 40 environment, 47 telecoms |
| `publishedAfter` | — | YYYY-MM-DD |
| `significantOnly` | `false` | Economically significant rules |

**Proposed rules are the ones you can change.** Final rules are the ones you
must comply with. Pick the type that matches the job.

### Use cases

- **Regulatory affairs** — every open consultation touching your CFR title,
  ranked by how soon it closes.
- **Public affairs and lobbying** — where comment windows are still open, and
  how much time is left to file.
- **Compliance planning** — final rules and their effective dates, so
  deadlines reach the calendar before they reach you.
- **Competitive and policy monitoring** — what a given agency is proposing,
  continuously.
- **Legal research** — docket numbers, RINs and CFR references for follow-up
  on Regulations.gov.

### Limits, honestly

- **Deadlines come from the source.** Agencies extend and reopen comment
  periods; a date read today can move tomorrow. Re-run before relying on it.
- `daysUntilCommentClose` is calculated against the run date, so a stored
  export ages. The dates themselves do not.
- Not every document carries a comment or effective date — notices often
  carry neither. Those sort last rather than being dropped.
- The API stops paginating deep result sets. Narrow by agency, CFR title or
  date rather than sweeping everything.
- Agency filters use the Federal Register's own slugs, which are not always
  the agency's common name.
- Requests are paced out of courtesy to a free public service.
- Not affiliated with the Office of the Federal Register.

# Actor input Schema

## `documentType` (type: `string`):

Proposed rules are the ones you can still influence. Final rules carry an effective date you must comply with.

## `openForCommentOnly` (type: `boolean`):

Keeps documents whose comment period has not closed. This is the actionable set — everything else is history.

## `searchTerm` (type: `string`):

Full-text search, for example "artificial intelligence", "medical device", "emissions".

## `maxItems` (type: `integer`):

One row per document, sorted by how soon the deadline falls.

## `agencies` (type: `array`):

Agency slugs as the Federal Register spells them, for example \["food-and-drug-administration", "environmental-protection-agency"].

## `cfrTitle` (type: `string`):

Code of Federal Regulations title number, for example 21 for food and drugs, 40 for environment, 47 for telecommunications.

## `publishedAfter` (type: `string`):

YYYY-MM-DD.

## `significantOnly` (type: `boolean`):

Rules flagged as significant under Executive Order 12866 — the ones with real economic impact.

## Actor input object example

```json
{
  "documentType": "proposed-rules",
  "openForCommentOnly": true,
  "searchTerm": "artificial intelligence",
  "maxItems": 300,
  "significantOnly": false
}
```

# Actor output Schema

## `results` (type: `string`):

Every row produced by the run, in JSON.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchTerm": "artificial intelligence",
    "maxItems": 300
};

// Run the Actor and wait for it to finish
const run = await client.actor("dataio/federal-register-deadlines").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchTerm": "artificial intelligence",
    "maxItems": 300,
}

# Run the Actor and wait for it to finish
run = client.actor("dataio/federal-register-deadlines").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchTerm": "artificial intelligence",
  "maxItems": 300
}' |
apify call dataio/federal-register-deadlines --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,dataio/federal-register-deadlines"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/vV55LCZDAZG8EPUOS/builds/2JOCDgYsK2pOwxhjW/openapi.json
