EPA — U.S. Environmental Protection Agency · Capability
U.S. EPA Enforcement and Compliance History Online (ECHO) - Enforcement Case Search — Case Enforcement
Case Enforcement. 18 operations. Lead operation: Enforcement Case Search (new Version). Self-contained Naftiko capability covering one EPA business surface.
What You Can Do
GET
Getcaserestservicesgetcaseinfo
— Enforcement Case Search (new Version)
/v1/case_rest_services.get_case_info
POST
Postcaserestservicesgetcaseinfo
— Enforcement Case Search (new Version)
/v1/case_rest_services.get_case_info
GET
Getcaserestservicesgetcasereport
— Enforcement Case Summary Report Search
/v1/case_rest_services.get_case_report
POST
Postcaserestservicesgetcasereport
— Enforcement Case Summary Report Search
/v1/case_rest_services.get_case_report
GET
Getcaserestservicesgetcases
— Enforcement Case Search
/v1/case_rest_services.get_cases
POST
Postcaserestservicesgetcases
— Enforcement Case Search
/v1/case_rest_services.get_cases
GET
Getcaserestservicesgetcasesfromfacility
— Placeholder
/v1/case_rest_services.get_cases_from_facility
POST
Postcaserestservicesgetcasesfromfacility
— Placeholder
/v1/case_rest_services.get_cases_from_facility
GET
Getcaserestservicesgetcrcasereport
— Enforcement Criminal Case Summary Report Search
/v1/case_rest_services.get_crcase_report
POST
Postcaserestservicesgetcrcasereport
— Enforcement Criminal Case Summary Report Search
/v1/case_rest_services.get_crcase_report
GET
Getcaserestservicesgetdownload
— Enforcement Case Download Data Service
/v1/case_rest_services.get_download
POST
Postcaserestservicesgetdownload
— Enforcement Case Download Data Service
/v1/case_rest_services.get_download
GET
Getcaserestservicesgetfacilitiesfromcase
— Placeholder
/v1/case_rest_services.get_facilities_from_case
POST
Postcaserestservicesgetfacilitiesfromcase
— Placeholder
/v1/case_rest_services.get_facilities_from_case
GET
Getcaserestservicesgetmap
— Enforcement Case Map Service
/v1/case_rest_services.get_map
POST
Postcaserestservicesgetmap
— Enforcement Case Map Service
/v1/case_rest_services.get_map
GET
Getcaserestservicesgetqid
— Enforcement Case Paginated Results Service
/v1/case_rest_services.get_qid
POST
Postcaserestservicesgetqid
— Enforcement Case Paginated Results Service
/v1/case_rest_services.get_qid
MCP Tools
enforcement-case-search-new-version
Enforcement Case Search (new Version)
read-only
idempotent
enforcement-case-search-new-version-2
Enforcement Case Search (new Version)
read-only
enforcement-case-summary-report-search
Enforcement Case Summary Report Search
read-only
idempotent
enforcement-case-summary-report-search-2
Enforcement Case Summary Report Search
read-only
enforcement-case-search
Enforcement Case Search
read-only
idempotent
enforcement-case-search-2
Enforcement Case Search
read-only
placeholder
Placeholder
read-only
idempotent
placeholder-2
Placeholder
enforcement-criminal-case-summary-report-search
Enforcement Criminal Case Summary Report Search
read-only
idempotent
enforcement-criminal-case-summary-report-search-2
Enforcement Criminal Case Summary Report Search
read-only
enforcement-case-download-data-service
Enforcement Case Download Data Service
read-only
idempotent
enforcement-case-download-data-service-2
Enforcement Case Download Data Service
placeholder-3
Placeholder
read-only
idempotent
placeholder-4
Placeholder
enforcement-case-map-service
Enforcement Case Map Service
read-only
idempotent
enforcement-case-map-service-2
Enforcement Case Map Service
enforcement-case-paginated-results-service
Enforcement Case Paginated Results Service
read-only
idempotent
enforcement-case-paginated-results-service-2
Enforcement Case Paginated Results Service
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: U.S. EPA Enforcement and Compliance History Online (ECHO) - Enforcement Case Search — Case Enforcement
description: 'Case Enforcement. 18 operations. Lead operation: Enforcement Case Search (new Version). Self-contained Naftiko capability covering one EPA business surface.'
tags:
- EPA
- Case Enforcement
created: '2026-05-29'
modified: '2026-05-29'
binds:
- namespace: env
keys: {}
capability:
consumes:
- type: http
namespace: echo-case-case-enforcement
baseUri: https://echodata.epa.gov/echo
description: U.S. EPA Enforcement and Compliance History Online (ECHO) - Enforcement Case Search — Case Enforcement business capability. Self-contained, no shared references.
resources:
- name: case-rest-services-get-case-info
path: /case_rest_services.get_case_info
operations:
- name: getcaserestservicesgetcaseinfo
method: GET
description: Enforcement Case Search (new Version)
inputParameters:
- name: output
in: query
type: string
required: false
description: "Output Format Flag. Enter one of the following keywords:\n- JSON = Data model formatted as Javascript Object Notation (default).\n- JSONP = Data model formatted as Javascript Object Notation with Paddi"
- name: p_case_category
in: query
type: string
required: false
description: "Case Category Filter. Enter one or more case category codes to filter results. Provide multiple values as a comma-delimited list.\n- AFR = Administrative - Formal\n- AIF = Administrative - Informal\n-"
- name: p_case_status
in: query
type: string
required: false
description: Case Status Code Filter. Enter one or more case status codes to limit results. Provide multiple values as a comma-delimited list.
- name: p_milestone
in: query
type: string
required: false
description: Administrative or Judicial Milestone Filter. Enter one or milestone values to restrict results. Provide multiple values as a comma-delimited list.
- name: p_from_date
in: query
type: string
required: false
description: Administrative or Judicial Milestone Date Range Start Limiter. Enter a date value in MM/DD/YYYY format to limit milestone results. Parameter p_to_date must also be populated when using this paramete
- name: p_to_date
in: query
type: string
required: false
description: Administrative or Judicial Milestone Date Range End Limiter. Enter a date value in MM/DD/YYYY format to limit milestone results. Parameter p_from_date must also be populated when using this paramete
- name: p_milestone_fy
in: query
type: string
required: false
description: Administrative or Judicial Milestone Fiscal Year Limiter. Enter a single fiscal year value to limit milestone searches to a given fiscal year.
- name: p_name
in: query
type: string
required: false
description: Case Name Filter. Enter one or more case names to restrict results. Provide multiple values as a comma-delimited list. When using this parameter the p_name_type parameter is required.
- name: p_name_type
in: query
type: string
required: false
description: Case Name Filter Modifier.
- name: p_case_number
in: query
type: string
required: false
description: Case Number Filter. Enter one or more case numbers to restrict results. Provide multiple values as a comma-delimited list.
- name: p_docket_number
in: query
type: string
required: false
description: DOJ Docket Number Filter. Enter a single docket number or partial docket number to restrict results. Use "%" as a wildcard for more complex filtering.
- name: p_court_docket_number
in: query
type: string
required: false
description: p_court_docket_number
- name: p_activity_number
in: query
type: string
required: false
description: Case Activity Number Filter. Enter a single case activity number to filter results.
- name: p_case_lead
in: query
type: string
required: false
description: "Case Lead Limiter. Enter E or S to limit results.\n- E = EPA is the case lead.\n- S = The state is the case lead."
- name: p_case_sens_flg
in: query
type: string
required: false
description: Case Sensitive Data Flag. Enter a Y or N to include or exclude cases with sensitive data.
- name: p_region
in: query
type: string
required: false
description: EPA Region Filter. Provide a single value of 01 thru 10 to restrict results to a single EPA region.
- name: p_state
in: query
type: string
required: false
description: Case Location State Filter. Enter one or more state USPS postal codes to filter results. Provide multiple values as a comma-delimited list.
- name: p_district
in: query
type: string
required: false
description: Case Location Court District Limiter. Enter a single state court district code to limit results.
- name: p_sic
in: query
type: string
required: false
description: Standard Industrial Classification (SIC) Code Filter. Enter a single 4-digit SIC Code to filter results.
- name: p_sic_ao_naics
in: query
type: string
required: false
description: "Case Location SIC/NAICS And/Or Modifier. Enter either AND or OR to govern the search logic of SIC and NAICS codes.\n- AND = Search will return results having both the provided SIC code(s) and provided"
- name: p_sic_primary_flg
in: query
type: string
required: false
description: Case Location Primary SIC Flag. Enter Y to limit SIC search results to primary SIC codes only.
- name: p_sic_frs_flg
in: query
type: string
required: false
description: Case Location Extended FRS SIC Search Flag. Enter Y to expand SIC search to include Federal Registry Service datasets.
- name: p_naics
in: query
type: string
required: false
description: 'North American Industry Classification System Filter. Enter two to six digits to filter results to facilities having matching NAICS codes. Digits less than six will match to all codes beginning with '
- name: p_naics_primary_flg
in: query
type: string
required: false
description: Case Location Primary NAICS Flag. Enter Y to limit NAICS search results to primary NAICS codes only.
- name: p_naics_frs_flg
in: query
type: string
required: false
description: Case Location Extended FRS NAICS Search Flag. Enter Y to expand NAICS search to include Federal Registry Service datasets.
- name: p_enf_type
in: query
type: string
required: false
description: Case Enforcement Type Filter. Enter one or more case enforcement type codes to limit results. Provide multiple values as a comma-delimited list.
- name: p_law
in: query
type: string
required: false
description: Law Statute Code Filter. Enter a single statute code to limit results.
- name: p_section
in: query
type: string
required: false
description: Law Section Code Filter. Enter one or more law section codes to limit results. Provide multiple values as a comma-delimited list.
- name: p_cp_citation
in: query
type: string
required: false
description: Law Section Code Filter Alternative. Enter a single law section code to limit results. This parameter accepts partial codes and allows for advanced search modifiers.
- name: p_rank_order
in: query
type: string
required: false
description: Law Status Rank Order Limiter. Enter a single integer rank order to limit results.
- name: p_enf_program
in: query
type: string
required: false
description: 'Enforcement Program Code Limiter. Enter one or more enforcement program codes to limit results. Provide multiple values as a comma-delimited list. '
- name: p_violation
in: query
type: string
required: false
description: Violation Type Code Filter. Enter one or more violation type codes to limit results. Provide multiple values as a comma-delimited list.
- name: p_priority_area
in: query
type: string
required: false
description: Case Priority Area Filter. Enter one or more case priority areas to limit results. Provide multiple values as a comma-delimited list.
- name: p_priority_area_desc
in: query
type: string
required: false
description: Case Priority Area Description Filter. Enter a single case priority area description or partial case priority area description to limit results. Use "%" as a wild-card match for more complex searche
- name: p_tribal
in: query
type: string
required: false
description: Case Location Tribal Land Flag. Enter Y or N to include or disallow cases on tribal land.
- name: p_oeca_core
in: query
type: string
required: false
description: OECA Core Program Flag. Enter Y or N to include or exclude core program cases.
- name: p_multimedia
in: query
type: string
required: false
description: Enforcement Multimedia Case Flag. Enter Y or N to include or exclude multimedia cases.
- name: p_fed_case
in: query
type: string
required: false
description: Federal Facility Involvement Flag. Enter a Y or N to include or exclude cases involving federal facilities.
- name: p_activity_contact
in: query
type: string
required: false
description: Activity Contact Last Name Filter. Enter a single last name or partial last name to filter results. Use "%" as a wild-card for advanced searching.
- name: p_role
in: query
type: string
required: false
description: Activity Contact Role Code Filter. Enter a single role code to restrict results.
- name: p_fed_penalty
in: query
type: string
required: false
description: "Federal Penalty Assessed Amount Filter. Provide one of the following keywords to restrict results.\n- ANY = cases with any penalty amount.\n- LE5000 = cases with penalty amount less than or equal to $5"
- name: p_total_fed_penalty
in: query
type: string
required: false
description: "Total Federal Penalty Limiter. Enter a keyword value to limit results to cases with given total federal penalties.\n- ANY = Cases with any federal penalty greater than zero.\n- LEXX = Replacing XX with"
- name: p_cost_recovery
in: query
type: string
required: false
description: "Cost Recovery Awarded Amount Limiter. Enter a keyword value to limit results to cases with given cost recovery amounts.\n- ANY = Cases with any cost recovery amount greater than zero.\n- LEXX = Replaci"
- name: p_total_cost_recovery
in: query
type: string
required: false
description: "Total Cost Recovery Amount Limiter. Enter a keyword value to limit results to cases with given cost recovery amounts.\n- ANY = Cases with any cost recovery amount greater than zero.\n- LEXX = Replacing"
- name: p_complying_actions
in: query
type: string
required: false
description: Complying Actions Type Code Limiter. Enter one or more complying action codes to restrict results. Provide multiple values as a comma-delimited list.
- name: p_comp_act_val
in: query
type: string
required: false
description: "Compliance Action Cost Limiter. Enter a keyword value to limit results to cases with given compliance cost amounts.\n- ANY = Cases with any compliance cost amount greater than zero.\n- LEXX = Replacing "
- name: p_total_comp_act_val
in: query
type: string
required: false
description: "Total Compliance Action Amount Limiter. Enter a keyword value to limit results to cases with given total compliance action amounts.\n- ANY = Cases with any total compliance action amount greater than "
- name: p_sep_cats
in: query
type: string
required: false
description: Supplemental Environmental Projects Activity Category Code Limiter. Provide one or more SEP activity category codes to limit results. Provide multiple values as a comma-delimited list.
- name: p_sep_val
in: query
type: string
required: false
description: "Supplemental Environmental Projects Activity Value Limiter. Provide a keyword to limit results.\n- ANY = return cases with any SEP activity amount.\n- LE10000 = return cases with SEP activity amount le"
- name: p_total_sep_val
in: query
type: string
required: false
description: "Supplemental Environmental Projects Total Value Limiter. Provide a keyword to limit results.\n- ANY = return cases with any SEP total amount.\n- LE10000 = return cases with SEP total amount less than o"
- name: p_lodged_date
in: query
type: string
required: false
description: Settlement Lodged Date Limiter. Enter a single settlement lodged date in MM/DD/YYYY format to limit results.
- name: p_entered_date
in: query
type: string
required: false
description: Settlement Entered Date Limiter. Enter a single settlement entered date in MM/DD/YYYY format to limit results.
- name: p_facility_id
in: query
type: string
required: false
description: Case Facility Registration Identifier Limiter. Enter a single complete facility identifier to limit results.
- name: p_fac_city
in: query
type: string
required: false
description: Case Facility City Limiter. Enter a single complete city name to filter cases by facility location city.
- name: p_fac_zip
in: query
type: string
required: false
description: Case Facility ZIP Code Limiter. Enter a single 5-digit zip code to filter cases by facility location zip code.
- name: p_fac_county
in: query
type: string
required: false
description: Case Facility County Limiter. Enter a single complete county name to filter cases by facility location county name.
- name: p_case_summary
in: query
type: string
required: false
description: Case Summary Search Limiter. Enter a single case summary to limit results. This parameter accepts partial codes and allows for advanced search modifiers.
- name: p_case_summary_type
in: query
type: string
required: false
description: Identifies how the the search terms enterened in p_case_summary are searched. Valid values are ALL (Default), WITHIN, and CONTAINS. Must be used with p_case_summary.
- name: p_usmex
in: query
type: string
required: false
description: US-Mexico Border Flag. Enter Y/N to restrict searches to facilities located within 100KM of the border.
- name: p_c1lat
in: query
type: number
required: false
description: In decimal degrees. Latitude of 1st corner of box that bounds the resulting facilities. The latitude and longitude of both corners of the bounding box must be provided.
- name: p_c1lon
in: query
type: number
required: false
description: In decimal degrees. Longitude of 1st corner of box that bounds the resulting facilities. The latitude and longitude of both corners of the bounding box must be provided.
- name: p_c2lat
in: query
type: number
required: false
description: In decimal degrees. Latitude of 2nd corner of box that bounds the resulting facilities. The latitude and longitude of both corners of the bounding box must be provided.
- name: p_c2lon
in: query
type: number
required: false
description: In decimal degrees. Longitude of 2nd corner of box that bounds the resulting facilities. The latitude and longitude of both corners of the bounding box must be provided.
- name: p_voluntary
in: query
type: string
required: false
description: Voluntary Self Disclosure Flag. Enter Y or N to include or exclude cases results having voluntary disclosure.
- name: p_fed_indicator
in: query
type: string
required: false
description: Federal Facility/Cross Media Flag. Enter Y or N to limit results to cases with federal facility cross media.
- name: p_fntype
in: query
type: string
required: false
description: "Controls type of text search performed on facility name with parameter p_fn.\n- EXACT = Find facilities having the exact provided name(s).\n- BEGINS = Find facilities with names starting with the provid"
- name: p_civil_criminal_indicator
in: query
type: string
required: false
description: "Civil/Criminal Case Limiter. Provide a keyword to limit results.\n- ANY = return both civil and criminal cases.\n- CI = return only civil cases.\n- CR = return only criminal cases."
- name: queryset
in: query
type: number
required: false
description: Query Limiter. Enter a value to limit the number of records returned for each query. Value cannot exceed 70,000.
- name: responseset
in: query
type: number
required: false
description: Response Set Limiter. Enter a value to limit the number of records per page. Value cannot exceed 1,000.
- name: mapset
in: query
type: string
required: false
description: Identifies the maxium number of case facilities to return from the case_rest_services.get_case_info query.
- name: callback
in: query
type: string
required: false
description: JSONP Callback. For use with JSONP and GEOJSONP output only. Enter a name of the function in which to wrap the JSON response.
- name: qcolumns
in: query
type: string
required: false
description: Used to customize service output. A list of comma-separated column IDs of output objects that will be returned in the service query object or download. Use the metadata service endpoint for a comple
- name: p_pretty_print
in: query
type: number
required: false
description: Optional flag to request GeoJSON formatted results to be pretty printed. Only provide a numeric value when the output needs to be human readable as pretty printing has a performance cost.
- name: p_ocmap_fy
in: query
type: string
required: false
description: Fiscal Year to select cases that are displayed in the Office of Complicance Fiscal Year Map Services
- name: p_qs
in: query
type: string
required: false
description: Quick Search. Allows entry for city, state, and/or zip code.
- name: p_has_map
in: query
type: string
required: false
description: p_has_map
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: case-rest-services-get-case-info
path: /case_rest_services.get_case_info
operations:
- name: postcaserestservicesgetcaseinfo
method: POST
description: Enforcement Case Search (new Version)
inputParameters:
- name: output
in: formData
type: string
required: false
description: "Output Format Flag. Enter one of the following keywords:\n- JSON = Data model formatted as Javascript Object Notation (default).\n- JSONP = Data model formatted as Javascript Object Notation with Paddi"
- name: p_case_category
in: formData
type: string
required: false
description: "Case Category Filter. Enter one or more case category codes to filter results. Provide multiple values as a comma-delimited list.\n- AFR = Administrative - Formal\n- AIF = Administrative - Informal\n-"
- name: p_case_status
in: formData
type: string
required: false
description: Case Status Code Filter. Enter one or more case status codes to limit results. Provide multiple values as a comma-delimited list.
- name: p_milestone
in: formData
type: string
required: false
description: Administrative or Judicial Milestone Filter. Enter one or milestone values to restrict results. Provide multiple values as a comma-delimited list.
- name: p_from_date
in: formData
type: string
required: false
description: Administrative or Judicial Milestone Date Range Start Limiter. Enter a date value in MM/DD/YYYY format to limit milestone results. Parameter p_to_date must also be populated when using this paramete
- name: p_to_date
in: formData
type: string
required: false
description: Administrative or Judicial Milestone Date Range End Limiter. Enter a date value in MM/DD/YYYY format to limit milestone results. Parameter p_from_date must also be populated when using this paramete
- name: p_milestone_fy
in: formData
type: string
required: false
description: Administrative or Judicial Milestone Fiscal Year Limiter. Enter a single fiscal year value to limit milestone searches to a given fiscal year.
- name: p_name
in: formData
type: string
required: false
description: Case Name Filter. Enter one or more case names to restrict results. Provide multiple values as a comma-delimited list. When using this parameter the p_name_type parameter is required.
- name: p_name_type
in: formData
type: string
required: false
description: Case Name Filter Modifier.
- name: p_case_number
in: formData
type: string
required: false
description: Case Number Filter. Enter one or more case numbers to restrict results. Provide multiple values as a comma-delimited list.
- name: p_docket_number
in: formData
type: string
required: false
description: DOJ Docket Number Filter. Enter a single docket number or partial docket number to restrict results. Use "%" as a wildcard for more complex filtering.
- name: p_court_docket_number
in: formData
type: string
required: false
description: p_court_docket_number
- name: p_activity_number
in: formData
type: string
required: false
description: Case Activity Number Filter. Enter a single case activity number to filter results.
- name: p_case_lead
in: formData
type: string
required: false
description: "Case Lead Limiter. Enter E or S to limit results.\n- E = EPA is the case lead.\n- S = The state is the case lead."
- name: p_case_sens_flg
in: formData
type: string
required: false
description: Case Sensitive Data Flag. Enter a Y or N to include or exclude cases with sensitive data.
- name: p_region
in: formData
type: string
required: false
description: EPA Region Filter. Provide a single value of 01 thru 10 to restrict results to a single EPA region.
- name: p_state
in: formData
type: string
required: false
description: Case Location State Filter. Enter one or more state USPS postal codes to filter results. Provide multiple values as a comma-delimited list.
- name: p_district
in: formData
type: string
required: false
description: Case Location Court District Limiter. Enter a single state court district code to limit results.
- name: p_sic
in: formData
type: string
required: false
description: Standard Industrial Classification (SIC) Code Filter. Enter a single 4-digit SIC Code to filter results.
- name: p_sic_ao_naics
in: formData
type: string
required: false
description: "Case Location SIC/NAICS And/Or Modifier. Enter either AND or OR to govern the search logic of SIC and NAICS codes.\n- AND = Search will return results having both the provided SIC code(s) and provided"
- name: p_sic_primary_flg
in: formData
type: string
required: false
description: Case Location Primary SIC Flag. Enter Y to limit SIC search results to primary SIC codes only.
- name: p_sic_frs_flg
in: formData
type: string
required: false
description: Case Location Extended FRS SIC Search Flag. Enter Y to expand SIC search to include Federal Registry Service datasets.
- name: p_naics
in: formData
type: string
required: false
description: 'North American Industry Classification System Filter. Enter two to six digits to filter results to facilities having matching NAICS codes. Digits less than six will match to all codes beginning with '
- name: p_naics_primary_flg
in: formData
type: string
required: false
description: Case Location Primary NAICS Flag. Enter Y to limit NAICS search results to primary NAICS codes only.
- name: p_naics_frs_flg
in: formData
type: string
required: false
description: Case Location Extended FRS NAICS Search Flag. Enter Y to expand NAICS search to include Federal Registry Service datasets.
- name: p_enf_type
in: formData
type: string
required: false
description: Case Enforcement Type Filter. Enter one or more case enforcement type codes to limit results. Provide multiple values as a comma-delimited list.
- name: p_law
in: formData
type: string
required: false
description: Law Statute Code Filter. Enter a single statute code to limit results.
- name: p_section
in: formData
type: string
required: false
description: Law Section Code Filter. Enter one or more law section codes to limit results. Provide multiple values as a comma-delimited list.
- name: p_cp_citation
in: formData
type: string
required: false
description: Law Section Code Filter Alte
# --- truncated at 32 KB (164 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/epa/refs/heads/main/capabilities/echo-case-case-enforcement.yaml