How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

National FOIA Portal API

The National FOIA Portal publishes a JSON:API web service on api.foia.gov covering agency components, the agency taxonomy, annual and quarterly FOIA report data, and Chief FOIA Officers Council meetings, committees, councils and pages. Its 24 read operations are described by a first-party Swagger 2.0 contract maintained in the usdoj GitHub organization and rendered at foia.gov/swagger.html. The same host also serves each agency's annual FOIA report as XML conforming to the FOIA Annual Report XML schema, a NIEM IEPD. Requests carry a free api.data.gov key in an X-API-Key header.

National FOIA Portal API is one of 6 APIs that Department of Justice publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Annual Report, FOIA, and XML. The published artifact set on APIs.io includes API documentation, an API reference, and an OpenAPI specification.

This API exposes 24 operations across 24 paths, organized into 8 resource areas, and defines 13 schemas. It is described by OpenAPI 2.0, at version Versioning not supported.

Requests are made against the base URL https://api.foia.gov/api.

24 operations 24 paths 13 schemas 24 GET

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 2.0
API Version
Versioning not supported
Base URL
https://api.foia.gov/api
Authentication
API Key
Resource Areas
8

Authentication & Security 1

National FOIA Portal API declares 1 security scheme for authenticating requests. An API key is passed in the header as X-API-Key (APIKeyHeader). By default, every request must be authenticated.

Paths & Operations 24

Across 24 paths, the API surfaces 24 operations — 24 GET. They span 8 resource areas: Agency Component, Agency Taxonomy, Annual FOIA Report Data, Quarterly FOIA Report Data, CFO Meeting, CFO Committee, CFO Council, CFO Page. Each is listed below with its method, path, parameters, and response codes.

Agency Component 3
GET
/agency_components
Get a List of Agency Components
5 params → 200400403404
GET
/agency_components/{entity}
Get Agency Component Details
1 param → 200400403404
GET
/agency_components/{entity}/request_form
Get Agency Component Request Form
1 param → 200400403404
Agency Taxonomy 2
GET
/agency
List Taxonomy: Agency
3 params → 200
GET
/agency/{entity}
Get Taxonomy Details: Agency
1 param → 200
Annual FOIA Report Data 3
GET
/annual_foia_report
List Annual FOIA Reports
4 params → 200
GET
/annual_foia_report/fiscal_years
Get Annual Report: Fiscal Years
→ 200400403404
GET
/annual-report-xml/{agency}/{year}
Individual Annual Reports in XML format are available via the Annual Report XML Endpoint.
2 params → 200403
Quarterly FOIA Report Data 2
GET
/quarterly_foia_report
List Quarterly FOIA Reports
4 params → 200
GET
/quarterly_foia_report/fiscal_years
Get Quarterly Report: Fiscal Years
→ 200400403404
CFO Meeting 5
GET
/node/cfo_meeting
List CFO Meetings
5 params → 200403
GET
/cfo_meeting/{entity}
Get CFO Meeting
1 param → 200400403404
GET
/cfo_meeting/{entity}/field_meeting_agenda
Get CFO Meeting Agenda Item
1 param → 200400403404
GET
/cfo_meeting/{entity}/field_meeting_documents
Get CFO Meeting Documents
1 param → 200400403404
GET
/cfo_meeting/{entity}/field_meeting_materials
Get CFO Meeting Materials
1 param → 200400403404
CFO Committee 4
GET
/node/cfo_committee
List CFO Committees
5 params → 200400403404
GET
/node/cfo_committee/{entity}
View CFO Committee Details
1 param → 200403
GET
/node/cfo_committee/{entity}/field_working_groups
CFO Committee Working Groups
1 param → 200400403404
GET
/node/cfo_committee/{entity}/field_attachments
CFO Committee Attachments
1 param → 200403
CFO Council 2
GET
/node/cfo_council
List CFO Councils
5 params → 200403
GET
/node/cfo_council/{entity}
Get CFO Council Details
1 param → 200400403404
CFO Page 3
GET
/node/cfo_page
List CFO Pages
4 params → 200400403404
GET
/node/cfo_page/{entity}
Get CFO Page Details
1 param → 200400403404
GET
/node/cfo_page/{entity}/field_attachments
CFO Page Attachments
1 param → 200400403404

Schemas 13

The contract defines 13 schemas that model the data the API accepts and returns. The most detailed are taxonomy_term--agency (4 properties), node--agency_component (4 properties), paragraph--attachments (4 properties), paragraph--link_or_file (4 properties). Each schema is shown below with its type and property counts.

node--agency_component
object
An Agency Component to which a request can be sent and which will be fulfilling requests.
4 properties 1 required
paragraph--agenda_item
object
Describes the payload for 'paragraph' entities of the 'agendaitem' bundle.
4 properties 1 required
node--quarterly_foia_report_data
object
Quarterly total data report given by an agency.
4 properties 1 required
node--annual_foia_report_data
object
Annual total data report given by an agency.
4 properties 1 required
node--cfo_meeting
object
Meetings for the Chief FOIA Officers Council. Contains the date, body, heading, agenda, and links to meeting related documents and information.
4 properties 1 required
node--cfo_committee
object
Committees of the Chief FOIA Officers Council. Includes title and WYSIWYG description fields.
4 properties 1 required
node--cfo_council
object
The main page for the Chief FOIA Officers Council. Assign committees to the council. Meetings will be automatically attached.
4 properties 1 required
node--cfo_page
object
Pages for the Chief FOIA Officers Council. CFO Pages have title, body, and URL slug fields. They are available via a JSON feed.
4 properties 1 required
paragraph--working_groups
object
Describes the payload for 'paragraph' entities of the 'workinggroups' bundle.
3 properties 1 required
paragraph--admin_app_via
object
Describes the payload for 'paragraph' entities of the 'adminappvia' bundle.
4 properties 1 required
paragraph--link_or_file
object
Describes the payload for 'paragraph' entities of the 'linkorfile' bundle.
4 properties 1 required
paragraph--attachments
object
Describes the payload for 'paragraph' entities of the 'attachments' bundle.
4 properties 1 required
taxonomy_term--agency
object
Describes the payload for 'taxonomyterm' entities of the 'agency' bundle.
4 properties 1 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

department-of-justice-foia-api-swagger.json Raw ↑

Other APIs Department of Justice publishes across the network.

DOJ News API
BJS National Crime Victimization Survey (NCVS) API
BJS NIBRS National Estimates API
FARA e-File Registrant API
DOJ Open Data Catalog
Where this information came from

This is an independent, third-party profile of National FOIA Portal API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.