Overview
The Federal Register API offers a programmatic interface for accessing a comprehensive dataset of US government public documents. Established in 1935, the Federal Register serves as the official daily publication for rules, proposed rules, and notices of federal agencies and organizations, as well as executive orders and other presidential documents. The API extends this public service by enabling developers and researchers to integrate this critical information directly into their software applications and data analysis workflows.
This API is particularly valuable for applications focused on regulatory compliance, legal research, public policy analysis, and governmental transparency initiatives. Users can retrieve specific documents, filter by agency, date, or topic, and track changes in federal policy over time. For instance, a legal tech platform might use the API to automatically alert clients to new regulations impacting their industry, or a data journalism project could analyze trends in executive orders issued by different administrations. The API provides access to the full text of documents, metadata such as publication dates and issuing agencies, and relationships between documents, allowing for nuanced data exploration.
One of the distinctive aspects of the Federal Register API is its commitment to open public access. It does not require an API key for basic public data retrieval, which simplifies the onboarding process for developers and encourages broader utilization of government information. This approach aligns with broader initiatives for open government data, providing a foundational resource for civic tech and public interest projects. Developers can explore the available endpoints to query for documents, agencies, public inspection documents, and more, facilitating the integration of real-time federal data into various platforms. The API's design supports RESTful principles, making it accessible from a wide range of programming languages and environments.
Beyond simple document retrieval, the API enables more complex use cases such as historical data analysis. Researchers can trace the evolution of specific regulations, identify patterns in agency activities, or conduct quantitative studies on the volume and nature of federal government output. This capability is essential for academic institutions, think tanks, and investigative journalists who require structured access to historical policy records. The official documentation provides detailed guidance on query parameters and response formats, ensuring developers can effectively extract and utilize the vast amount of information available through the Federal Register API.
Key features
- Document Search and Retrieval: Access full text and metadata for rules, proposed rules, notices, and presidential documents published in the Federal Register.
- Agency-Specific Data: Filter documents by specific federal agencies, enabling focused research on particular governmental bodies.
- Date-Based Queries: Retrieve documents published within specific date ranges, supporting temporal analysis and tracking of recent updates.
- Public Inspection Documents: Access documents filed for public inspection before their official publication, offering early insight into upcoming regulations.
- No API Key Required: Basic access to public data is available without authentication, simplifying integration for public projects.
- RESTful Architecture: Follows standard REST principles, allowing for straightforward integration using common HTTP methods.
- Rich Metadata: Provides extensive metadata for each document, including publication date, document number, agency, and associated topics.
Pricing
The Federal Register API provides free access to its public data, reflecting its role as a government resource for transparency and information dissemination.
| Service Tier | Features | Cost |
|---|---|---|
| Public Access | Unlimited access to all publicly available Federal Register documents, agency information, and public inspection documents via the API. | Free |
For more details on access and usage policies, refer to the official Federal Register Developer Resources.
Common integrations
The Federal Register API, as a source of public government data, can be integrated into various systems and platforms:
- Compliance and Regulatory Monitoring Platforms: Integrate new regulations and notices to provide real-time updates and ensure adherence to federal guidelines.
- Legal Research Databases: Enhance legal search engines and case management systems with direct access to official government publications.
- Data Analysis and Visualization Tools: Feed federal policy data into analytical dashboards for public policy research, trend identification, and impact assessment.
- News and Media Applications: Power news feeds and journalistic tools with direct access to government announcements and executive actions.
- Government Transparency Portals: Develop public-facing tools that democratize access to federal information, tracking agency activities and policy changes. For example, similar transparency initiatives are outlined by OpenGov's platform solutions.
Alternatives
- Regulations.gov: A platform for citizens to find and submit comments on federal regulations, primarily focused on public participation.
- GovInfo (GPO): Provides access to official publications from all three branches of the US Federal Government, offering a broader scope of government documents.
- OpenGov: Offers a suite of cloud-based solutions for government budgeting, reporting, and civic engagement, often integrating with public data sources.
Getting started
To begin using the Federal Register API, you can make a simple HTTP GET request to one of its endpoints. No API key is required for public data. The following Python example demonstrates how to retrieve the most recent documents from the API using the requests library:
import requests
import json
# Define the API endpoint for documents
api_url = "https://www.federalregister.gov/api/v1/documents"
# Define parameters for the request
# For example, let's get the 5 most recent documents
params = {
"per_page": 5,
"order": "newest"
}
try:
# Make the GET request to the API
response = requests.get(api_url, params=params)
response.raise_for_status() # Raise an exception for HTTP errors (4xx or 5xx)
# Parse the JSON response
data = response.json()
# Print details of the retrieved documents
print(f"Successfully retrieved {len(data['results'])} documents.")
for doc in data['results']:
print(f"---")
print(f"Title: {doc.get('title')}")
print(f"Publication Date: {doc.get('publication_date')}")
print(f"Agency: {doc.get('agencies', [{}])[0].get('name', 'N/A')}")
print(f"Document Number: {doc.get('document_number')}")
print(f"URL: {doc.get('html_url')}")
except requests.exceptions.RequestException as e:
print(f"An error occurred: {e}")
except json.JSONDecodeError:
print("Failed to decode JSON from response.")
This Python script sends a request to the /documents endpoint, asking for the 5 newest documents. It then parses the JSON response and prints relevant details for each document, such as the title, publication date, and the issuing agency. For more detailed API usage and available endpoints, consult the official Federal Register API reference.