U.S. EPA Enforcement and Compliance History Online (ECHO) - Resource Conservation and Recovery Act
epa · Government
Enforcement and Compliance History Online (ECHO) is a tool developed and maintained by EPA's Office of Enforcement and Compliance Assurance for public use. ECHO provides integrated compliance and enforcement information for over 1 million regulated facilities nationwide. RCRA Rest Services provides multiple service endpoints, each with specific capabilities, to search and retrieve data on hazardous waste handlers/facilities regulated under the Resource Conservation and Recovery Act (RCRA).
Authentication
Sample Requests
Based on the QID obtained from a get_facilities or get_facility_info query, return a comma separated value (CSV) file of the facilities found.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_download?qid=example&output=json&qcolumns=example&p_pretty_print=1"
import requests
params = {
"qid": "example",
"output": "json",
"qcolumns": "example",
"p_pretty_print": "1"
}
response = requests.get(
"https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_download",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_download');
url.searchParams.set('qid', 'example');
url.searchParams.set('output', 'json');
url.searchParams.set('qcolumns', 'example');
url.searchParams.set('p_pretty_print', '1');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_download")
q := baseURL.Query()
q.Set("qid", "example")
q.Set("output", "json")
q.Set("qcolumns", "example")
q.Set("p_pretty_print", "1")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_download")
uri.query = URI.encode_www_form({
"qid" => "example",
"output" => "json",
"qcolumns" => "example",
"p_pretty_print" => "1"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_download?" . http_build_query([
"qid" => "example",
"output" => "json",
"qcolumns" => "example",
"p_pretty_print" => "1"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Validates query search parameters and returns query identifier. Use the responseset parameter to set the page size
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facilities?p_co=example&p_ct=example&p_fa=example&p_fn=example&p_pd=NONE&p_pm=NONE&p_qs=example&p_sa=example&p_st=example&p_act=Y&p_des=example&p_dwd=0&p_fcv=example&p_fea=W&p_frs=example&p_huc=example&p_ico=Y&p_iea=W&p_lat=1&p_law=example&p_med=A&p_ncs=example&p_ncv=example&p_oct=Z&p_olr=example&p_opc=example&p_opd=example&p_owc=example&p_owd=example&p_pen=example&p_pid=example&p_qiv=0&p_reg=01&p_sa1=example&p_sfs=example&p_sic=example&p_wbd=example&p_ysl=W&p_zip=example&output=JSONP&p_agoo=AND&p_cmps=example&p_feaa=A&p_feay=1&p_fips=example&p_icoo=example&p_idt1=example&p_idt2=example&p_ieaa=E&p_ieay=1&p_impw=Y&p_long=1&p_owop=PRIVATE&p_sic2=example&p_sic4=example&p_trep=CURR&p_ysla=E&p_ysly=1&maplist=Y&p_c1lat=1&p_c1lon=1&p_c2lat=1&p_c2lon=1&p_cifdi=Any&p_pfeat=example&p_pityp=example&p_psncq=GT1&p_usmex=Y&p_violt=example&p_violy=1&callback=example&p_fntype=ALL&p_pfead1=example&p_pfead2=example&p_pidall=Y&p_radius=1&p_stdist=example&qcolumns=example&queryset=1&p_fac_ico=Y&p_section=example&p_tribeid=1&p_trichem=example&tablelist=Y&p_decouple=Y&p_ejscreen=example&p_fac_icos=example&p_tri_lr_yr=example&p_tribedist=1&p_tribename=example&responseset=1&summarylist=Y&p_limit_addr=Y&p_tri_lr_amt=example&p_tri_lr_pol=example&p_ejscreen_over80cnt=1"
import requests
params = {
"p_co": "example",
"p_ct": "example",
"p_fa": "example",
"p_fn": "example",
"p_pd": "NONE",
"p_pm": "NONE",
"p_qs": "example",
"p_sa": "example",
"p_st": "example",
"p_act": "Y",
"p_des": "example",
"p_dwd": "0",
"p_fcv": "example",
"p_fea": "W",
"p_frs": "example",
"p_huc": "example",
"p_ico": "Y",
"p_iea": "W",
"p_lat": "1",
"p_law": "example",
"p_med": "A",
"p_ncs": "example",
"p_ncv": "example",
"p_oct": "Z",
"p_olr": "example",
"p_opc": "example",
"p_opd": "example",
"p_owc": "example",
"p_owd": "example",
"p_pen": "example",
"p_pid": "example",
"p_qiv": "0",
"p_reg": "01",
"p_sa1": "example",
"p_sfs": "example",
"p_sic": "example",
"p_wbd": "example",
"p_ysl": "W",
"p_zip": "example",
"output": "JSONP",
"p_agoo": "AND",
"p_cmps": "example",
"p_feaa": "A",
"p_feay": "1",
"p_fips": "example",
"p_icoo": "example",
"p_idt1": "example",
"p_idt2": "example",
"p_ieaa": "E",
"p_ieay": "1",
"p_impw": "Y",
"p_long": "1",
"p_owop": "PRIVATE",
"p_sic2": "example",
"p_sic4": "example",
"p_trep": "CURR",
"p_ysla": "E",
"p_ysly": "1",
"maplist": "Y",
"p_c1lat": "1",
"p_c1lon": "1",
"p_c2lat": "1",
"p_c2lon": "1",
"p_cifdi": "Any",
"p_pfeat": "example",
"p_pityp": "example",
"p_psncq": "GT1",
"p_usmex": "Y",
"p_violt": "example",
"p_violy": "1",
"callback": "example",
"p_fntype": "ALL",
"p_pfead1": "example",
"p_pfead2": "example",
"p_pidall": "Y",
"p_radius": "1",
"p_stdist": "example",
"qcolumns": "example",
"queryset": "1",
"p_fac_ico": "Y",
"p_section": "example",
"p_tribeid": "1",
"p_trichem": "example",
"tablelist": "Y",
"p_decouple": "Y",
"p_ejscreen": "example",
"p_fac_icos": "example",
"p_tri_lr_yr": "example",
"p_tribedist": "1",
"p_tribename": "example",
"responseset": "1",
"summarylist": "Y",
"p_limit_addr": "Y",
"p_tri_lr_amt": "example",
"p_tri_lr_pol": "example",
"p_ejscreen_over80cnt": "1"
}
response = requests.get(
"https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facilities",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facilities');
url.searchParams.set('p_co', 'example');
url.searchParams.set('p_ct', 'example');
url.searchParams.set('p_fa', 'example');
url.searchParams.set('p_fn', 'example');
url.searchParams.set('p_pd', 'NONE');
url.searchParams.set('p_pm', 'NONE');
url.searchParams.set('p_qs', 'example');
url.searchParams.set('p_sa', 'example');
url.searchParams.set('p_st', 'example');
url.searchParams.set('p_act', 'Y');
url.searchParams.set('p_des', 'example');
url.searchParams.set('p_dwd', '0');
url.searchParams.set('p_fcv', 'example');
url.searchParams.set('p_fea', 'W');
url.searchParams.set('p_frs', 'example');
url.searchParams.set('p_huc', 'example');
url.searchParams.set('p_ico', 'Y');
url.searchParams.set('p_iea', 'W');
url.searchParams.set('p_lat', '1');
url.searchParams.set('p_law', 'example');
url.searchParams.set('p_med', 'A');
url.searchParams.set('p_ncs', 'example');
url.searchParams.set('p_ncv', 'example');
url.searchParams.set('p_oct', 'Z');
url.searchParams.set('p_olr', 'example');
url.searchParams.set('p_opc', 'example');
url.searchParams.set('p_opd', 'example');
url.searchParams.set('p_owc', 'example');
url.searchParams.set('p_owd', 'example');
url.searchParams.set('p_pen', 'example');
url.searchParams.set('p_pid', 'example');
url.searchParams.set('p_qiv', '0');
url.searchParams.set('p_reg', '01');
url.searchParams.set('p_sa1', 'example');
url.searchParams.set('p_sfs', 'example');
url.searchParams.set('p_sic', 'example');
url.searchParams.set('p_wbd', 'example');
url.searchParams.set('p_ysl', 'W');
url.searchParams.set('p_zip', 'example');
url.searchParams.set('output', 'JSONP');
url.searchParams.set('p_agoo', 'AND');
url.searchParams.set('p_cmps', 'example');
url.searchParams.set('p_feaa', 'A');
url.searchParams.set('p_feay', '1');
url.searchParams.set('p_fips', 'example');
url.searchParams.set('p_icoo', 'example');
url.searchParams.set('p_idt1', 'example');
url.searchParams.set('p_idt2', 'example');
url.searchParams.set('p_ieaa', 'E');
url.searchParams.set('p_ieay', '1');
url.searchParams.set('p_impw', 'Y');
url.searchParams.set('p_long', '1');
url.searchParams.set('p_owop', 'PRIVATE');
url.searchParams.set('p_sic2', 'example');
url.searchParams.set('p_sic4', 'example');
url.searchParams.set('p_trep', 'CURR');
url.searchParams.set('p_ysla', 'E');
url.searchParams.set('p_ysly', '1');
url.searchParams.set('maplist', 'Y');
url.searchParams.set('p_c1lat', '1');
url.searchParams.set('p_c1lon', '1');
url.searchParams.set('p_c2lat', '1');
url.searchParams.set('p_c2lon', '1');
url.searchParams.set('p_cifdi', 'Any');
url.searchParams.set('p_pfeat', 'example');
url.searchParams.set('p_pityp', 'example');
url.searchParams.set('p_psncq', 'GT1');
url.searchParams.set('p_usmex', 'Y');
url.searchParams.set('p_violt', 'example');
url.searchParams.set('p_violy', '1');
url.searchParams.set('callback', 'example');
url.searchParams.set('p_fntype', 'ALL');
url.searchParams.set('p_pfead1', 'example');
url.searchParams.set('p_pfead2', 'example');
url.searchParams.set('p_pidall', 'Y');
url.searchParams.set('p_radius', '1');
url.searchParams.set('p_stdist', 'example');
url.searchParams.set('qcolumns', 'example');
url.searchParams.set('queryset', '1');
url.searchParams.set('p_fac_ico', 'Y');
url.searchParams.set('p_section', 'example');
url.searchParams.set('p_tribeid', '1');
url.searchParams.set('p_trichem', 'example');
url.searchParams.set('tablelist', 'Y');
url.searchParams.set('p_decouple', 'Y');
url.searchParams.set('p_ejscreen', 'example');
url.searchParams.set('p_fac_icos', 'example');
url.searchParams.set('p_tri_lr_yr', 'example');
url.searchParams.set('p_tribedist', '1');
url.searchParams.set('p_tribename', 'example');
url.searchParams.set('responseset', '1');
url.searchParams.set('summarylist', 'Y');
url.searchParams.set('p_limit_addr', 'Y');
url.searchParams.set('p_tri_lr_amt', 'example');
url.searchParams.set('p_tri_lr_pol', 'example');
url.searchParams.set('p_ejscreen_over80cnt', '1');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facilities")
q := baseURL.Query()
q.Set("p_co", "example")
q.Set("p_ct", "example")
q.Set("p_fa", "example")
q.Set("p_fn", "example")
q.Set("p_pd", "NONE")
q.Set("p_pm", "NONE")
q.Set("p_qs", "example")
q.Set("p_sa", "example")
q.Set("p_st", "example")
q.Set("p_act", "Y")
q.Set("p_des", "example")
q.Set("p_dwd", "0")
q.Set("p_fcv", "example")
q.Set("p_fea", "W")
q.Set("p_frs", "example")
q.Set("p_huc", "example")
q.Set("p_ico", "Y")
q.Set("p_iea", "W")
q.Set("p_lat", "1")
q.Set("p_law", "example")
q.Set("p_med", "A")
q.Set("p_ncs", "example")
q.Set("p_ncv", "example")
q.Set("p_oct", "Z")
q.Set("p_olr", "example")
q.Set("p_opc", "example")
q.Set("p_opd", "example")
q.Set("p_owc", "example")
q.Set("p_owd", "example")
q.Set("p_pen", "example")
q.Set("p_pid", "example")
q.Set("p_qiv", "0")
q.Set("p_reg", "01")
q.Set("p_sa1", "example")
q.Set("p_sfs", "example")
q.Set("p_sic", "example")
q.Set("p_wbd", "example")
q.Set("p_ysl", "W")
q.Set("p_zip", "example")
q.Set("output", "JSONP")
q.Set("p_agoo", "AND")
q.Set("p_cmps", "example")
q.Set("p_feaa", "A")
q.Set("p_feay", "1")
q.Set("p_fips", "example")
q.Set("p_icoo", "example")
q.Set("p_idt1", "example")
q.Set("p_idt2", "example")
q.Set("p_ieaa", "E")
q.Set("p_ieay", "1")
q.Set("p_impw", "Y")
q.Set("p_long", "1")
q.Set("p_owop", "PRIVATE")
q.Set("p_sic2", "example")
q.Set("p_sic4", "example")
q.Set("p_trep", "CURR")
q.Set("p_ysla", "E")
q.Set("p_ysly", "1")
q.Set("maplist", "Y")
q.Set("p_c1lat", "1")
q.Set("p_c1lon", "1")
q.Set("p_c2lat", "1")
q.Set("p_c2lon", "1")
q.Set("p_cifdi", "Any")
q.Set("p_pfeat", "example")
q.Set("p_pityp", "example")
q.Set("p_psncq", "GT1")
q.Set("p_usmex", "Y")
q.Set("p_violt", "example")
q.Set("p_violy", "1")
q.Set("callback", "example")
q.Set("p_fntype", "ALL")
q.Set("p_pfead1", "example")
q.Set("p_pfead2", "example")
q.Set("p_pidall", "Y")
q.Set("p_radius", "1")
q.Set("p_stdist", "example")
q.Set("qcolumns", "example")
q.Set("queryset", "1")
q.Set("p_fac_ico", "Y")
q.Set("p_section", "example")
q.Set("p_tribeid", "1")
q.Set("p_trichem", "example")
q.Set("tablelist", "Y")
q.Set("p_decouple", "Y")
q.Set("p_ejscreen", "example")
q.Set("p_fac_icos", "example")
q.Set("p_tri_lr_yr", "example")
q.Set("p_tribedist", "1")
q.Set("p_tribename", "example")
q.Set("responseset", "1")
q.Set("summarylist", "Y")
q.Set("p_limit_addr", "Y")
q.Set("p_tri_lr_amt", "example")
q.Set("p_tri_lr_pol", "example")
q.Set("p_ejscreen_over80cnt", "1")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facilities")
uri.query = URI.encode_www_form({
"p_co" => "example",
"p_ct" => "example",
"p_fa" => "example",
"p_fn" => "example",
"p_pd" => "NONE",
"p_pm" => "NONE",
"p_qs" => "example",
"p_sa" => "example",
"p_st" => "example",
"p_act" => "Y",
"p_des" => "example",
"p_dwd" => "0",
"p_fcv" => "example",
"p_fea" => "W",
"p_frs" => "example",
"p_huc" => "example",
"p_ico" => "Y",
"p_iea" => "W",
"p_lat" => "1",
"p_law" => "example",
"p_med" => "A",
"p_ncs" => "example",
"p_ncv" => "example",
"p_oct" => "Z",
"p_olr" => "example",
"p_opc" => "example",
"p_opd" => "example",
"p_owc" => "example",
"p_owd" => "example",
"p_pen" => "example",
"p_pid" => "example",
"p_qiv" => "0",
"p_reg" => "01",
"p_sa1" => "example",
"p_sfs" => "example",
"p_sic" => "example",
"p_wbd" => "example",
"p_ysl" => "W",
"p_zip" => "example",
"output" => "JSONP",
"p_agoo" => "AND",
"p_cmps" => "example",
"p_feaa" => "A",
"p_feay" => "1",
"p_fips" => "example",
"p_icoo" => "example",
"p_idt1" => "example",
"p_idt2" => "example",
"p_ieaa" => "E",
"p_ieay" => "1",
"p_impw" => "Y",
"p_long" => "1",
"p_owop" => "PRIVATE",
"p_sic2" => "example",
"p_sic4" => "example",
"p_trep" => "CURR",
"p_ysla" => "E",
"p_ysly" => "1",
"maplist" => "Y",
"p_c1lat" => "1",
"p_c1lon" => "1",
"p_c2lat" => "1",
"p_c2lon" => "1",
"p_cifdi" => "Any",
"p_pfeat" => "example",
"p_pityp" => "example",
"p_psncq" => "GT1",
"p_usmex" => "Y",
"p_violt" => "example",
"p_violy" => "1",
"callback" => "example",
"p_fntype" => "ALL",
"p_pfead1" => "example",
"p_pfead2" => "example",
"p_pidall" => "Y",
"p_radius" => "1",
"p_stdist" => "example",
"qcolumns" => "example",
"queryset" => "1",
"p_fac_ico" => "Y",
"p_section" => "example",
"p_tribeid" => "1",
"p_trichem" => "example",
"tablelist" => "Y",
"p_decouple" => "Y",
"p_ejscreen" => "example",
"p_fac_icos" => "example",
"p_tri_lr_yr" => "example",
"p_tribedist" => "1",
"p_tribename" => "example",
"responseset" => "1",
"summarylist" => "Y",
"p_limit_addr" => "Y",
"p_tri_lr_amt" => "example",
"p_tri_lr_pol" => "example",
"p_ejscreen_over80cnt" => "1"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facilities?" . http_build_query([
"p_co" => "example",
"p_ct" => "example",
"p_fa" => "example",
"p_fn" => "example",
"p_pd" => "NONE",
"p_pm" => "NONE",
"p_qs" => "example",
"p_sa" => "example",
"p_st" => "example",
"p_act" => "Y",
"p_des" => "example",
"p_dwd" => "0",
"p_fcv" => "example",
"p_fea" => "W",
"p_frs" => "example",
"p_huc" => "example",
"p_ico" => "Y",
"p_iea" => "W",
"p_lat" => "1",
"p_law" => "example",
"p_med" => "A",
"p_ncs" => "example",
"p_ncv" => "example",
"p_oct" => "Z",
"p_olr" => "example",
"p_opc" => "example",
"p_opd" => "example",
"p_owc" => "example",
"p_owd" => "example",
"p_pen" => "example",
"p_pid" => "example",
"p_qiv" => "0",
"p_reg" => "01",
"p_sa1" => "example",
"p_sfs" => "example",
"p_sic" => "example",
"p_wbd" => "example",
"p_ysl" => "W",
"p_zip" => "example",
"output" => "JSONP",
"p_agoo" => "AND",
"p_cmps" => "example",
"p_feaa" => "A",
"p_feay" => "1",
"p_fips" => "example",
"p_icoo" => "example",
"p_idt1" => "example",
"p_idt2" => "example",
"p_ieaa" => "E",
"p_ieay" => "1",
"p_impw" => "Y",
"p_long" => "1",
"p_owop" => "PRIVATE",
"p_sic2" => "example",
"p_sic4" => "example",
"p_trep" => "CURR",
"p_ysla" => "E",
"p_ysly" => "1",
"maplist" => "Y",
"p_c1lat" => "1",
"p_c1lon" => "1",
"p_c2lat" => "1",
"p_c2lon" => "1",
"p_cifdi" => "Any",
"p_pfeat" => "example",
"p_pityp" => "example",
"p_psncq" => "GT1",
"p_usmex" => "Y",
"p_violt" => "example",
"p_violy" => "1",
"callback" => "example",
"p_fntype" => "ALL",
"p_pfead1" => "example",
"p_pfead2" => "example",
"p_pidall" => "Y",
"p_radius" => "1",
"p_stdist" => "example",
"qcolumns" => "example",
"queryset" => "1",
"p_fac_ico" => "Y",
"p_section" => "example",
"p_tribeid" => "1",
"p_trichem" => "example",
"tablelist" => "Y",
"p_decouple" => "Y",
"p_ejscreen" => "example",
"p_fac_icos" => "example",
"p_tri_lr_yr" => "example",
"p_tribedist" => "1",
"p_tribename" => "example",
"responseset" => "1",
"summarylist" => "Y",
"p_limit_addr" => "Y",
"p_tri_lr_amt" => "example",
"p_tri_lr_pol" => "example",
"p_ejscreen_over80cnt" => "1"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Returns either an array of Facilities or an array of Clusters that meet the specified search criteria.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facility_info?p_co=example&p_ct=example&p_fa=example&p_fn=example&p_pd=NONE&p_pm=NONE&p_qs=example&p_sa=example&p_st=example&xmax=1&xmin=1&ymax=1&ymin=1&p_act=Y&p_des=example&p_dwd=0&p_fcv=example&p_fea=W&p_frs=example&p_huc=example&p_ico=Y&p_iea=W&p_lat=1&p_law=example&p_med=A&p_ncs=example&p_ncv=example&p_oct=Z&p_olr=example&p_opc=example&p_opd=example&p_owc=example&p_owd=example&p_pen=example&p_pid=example&p_qiv=0&p_reg=01&p_sa1=example&p_sfs=example&p_sic=example&p_wbd=example&p_ysl=W&p_zip=example&output=json&p_agoo=AND&p_cmps=example&p_feaa=A&p_feay=1&p_fips=example&p_icoo=example&p_idt1=example&p_idt2=example&p_ieaa=E&p_ieay=1&p_impw=Y&p_long=1&p_owop=PRIVATE&p_sic2=example&p_sic4=example&p_trep=CURR&p_ysla=E&p_ysly=1&p_cifdi=Any&p_pfeat=example&p_pityp=example&p_psncq=GT1&p_usmex=Y&p_violt=example&p_violy=1&callback=example&p_fntype=ALL&p_pfead1=example&p_pfead2=example&p_pidall=Y&p_radius=1&p_stdist=example&qcolumns=example&queryset=1&p_fac_ico=Y&p_section=example&p_tribeid=1&p_trichem=example&p_decouple=Y&p_ejscreen=example&p_fac_icos=example&p_tri_lr_yr=example&p_tribedist=1&p_tribename=example&responseset=1&summarylist=Y&p_limit_addr=Y&p_tri_lr_amt=example&p_tri_lr_pol=example&p_pretty_print=1&p_ejscreen_over80cnt=1"
import requests
params = {
"p_co": "example",
"p_ct": "example",
"p_fa": "example",
"p_fn": "example",
"p_pd": "NONE",
"p_pm": "NONE",
"p_qs": "example",
"p_sa": "example",
"p_st": "example",
"xmax": "1",
"xmin": "1",
"ymax": "1",
"ymin": "1",
"p_act": "Y",
"p_des": "example",
"p_dwd": "0",
"p_fcv": "example",
"p_fea": "W",
"p_frs": "example",
"p_huc": "example",
"p_ico": "Y",
"p_iea": "W",
"p_lat": "1",
"p_law": "example",
"p_med": "A",
"p_ncs": "example",
"p_ncv": "example",
"p_oct": "Z",
"p_olr": "example",
"p_opc": "example",
"p_opd": "example",
"p_owc": "example",
"p_owd": "example",
"p_pen": "example",
"p_pid": "example",
"p_qiv": "0",
"p_reg": "01",
"p_sa1": "example",
"p_sfs": "example",
"p_sic": "example",
"p_wbd": "example",
"p_ysl": "W",
"p_zip": "example",
"output": "json",
"p_agoo": "AND",
"p_cmps": "example",
"p_feaa": "A",
"p_feay": "1",
"p_fips": "example",
"p_icoo": "example",
"p_idt1": "example",
"p_idt2": "example",
"p_ieaa": "E",
"p_ieay": "1",
"p_impw": "Y",
"p_long": "1",
"p_owop": "PRIVATE",
"p_sic2": "example",
"p_sic4": "example",
"p_trep": "CURR",
"p_ysla": "E",
"p_ysly": "1",
"p_cifdi": "Any",
"p_pfeat": "example",
"p_pityp": "example",
"p_psncq": "GT1",
"p_usmex": "Y",
"p_violt": "example",
"p_violy": "1",
"callback": "example",
"p_fntype": "ALL",
"p_pfead1": "example",
"p_pfead2": "example",
"p_pidall": "Y",
"p_radius": "1",
"p_stdist": "example",
"qcolumns": "example",
"queryset": "1",
"p_fac_ico": "Y",
"p_section": "example",
"p_tribeid": "1",
"p_trichem": "example",
"p_decouple": "Y",
"p_ejscreen": "example",
"p_fac_icos": "example",
"p_tri_lr_yr": "example",
"p_tribedist": "1",
"p_tribename": "example",
"responseset": "1",
"summarylist": "Y",
"p_limit_addr": "Y",
"p_tri_lr_amt": "example",
"p_tri_lr_pol": "example",
"p_pretty_print": "1",
"p_ejscreen_over80cnt": "1"
}
response = requests.get(
"https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facility_info",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facility_info');
url.searchParams.set('p_co', 'example');
url.searchParams.set('p_ct', 'example');
url.searchParams.set('p_fa', 'example');
url.searchParams.set('p_fn', 'example');
url.searchParams.set('p_pd', 'NONE');
url.searchParams.set('p_pm', 'NONE');
url.searchParams.set('p_qs', 'example');
url.searchParams.set('p_sa', 'example');
url.searchParams.set('p_st', 'example');
url.searchParams.set('xmax', '1');
url.searchParams.set('xmin', '1');
url.searchParams.set('ymax', '1');
url.searchParams.set('ymin', '1');
url.searchParams.set('p_act', 'Y');
url.searchParams.set('p_des', 'example');
url.searchParams.set('p_dwd', '0');
url.searchParams.set('p_fcv', 'example');
url.searchParams.set('p_fea', 'W');
url.searchParams.set('p_frs', 'example');
url.searchParams.set('p_huc', 'example');
url.searchParams.set('p_ico', 'Y');
url.searchParams.set('p_iea', 'W');
url.searchParams.set('p_lat', '1');
url.searchParams.set('p_law', 'example');
url.searchParams.set('p_med', 'A');
url.searchParams.set('p_ncs', 'example');
url.searchParams.set('p_ncv', 'example');
url.searchParams.set('p_oct', 'Z');
url.searchParams.set('p_olr', 'example');
url.searchParams.set('p_opc', 'example');
url.searchParams.set('p_opd', 'example');
url.searchParams.set('p_owc', 'example');
url.searchParams.set('p_owd', 'example');
url.searchParams.set('p_pen', 'example');
url.searchParams.set('p_pid', 'example');
url.searchParams.set('p_qiv', '0');
url.searchParams.set('p_reg', '01');
url.searchParams.set('p_sa1', 'example');
url.searchParams.set('p_sfs', 'example');
url.searchParams.set('p_sic', 'example');
url.searchParams.set('p_wbd', 'example');
url.searchParams.set('p_ysl', 'W');
url.searchParams.set('p_zip', 'example');
url.searchParams.set('output', 'json');
url.searchParams.set('p_agoo', 'AND');
url.searchParams.set('p_cmps', 'example');
url.searchParams.set('p_feaa', 'A');
url.searchParams.set('p_feay', '1');
url.searchParams.set('p_fips', 'example');
url.searchParams.set('p_icoo', 'example');
url.searchParams.set('p_idt1', 'example');
url.searchParams.set('p_idt2', 'example');
url.searchParams.set('p_ieaa', 'E');
url.searchParams.set('p_ieay', '1');
url.searchParams.set('p_impw', 'Y');
url.searchParams.set('p_long', '1');
url.searchParams.set('p_owop', 'PRIVATE');
url.searchParams.set('p_sic2', 'example');
url.searchParams.set('p_sic4', 'example');
url.searchParams.set('p_trep', 'CURR');
url.searchParams.set('p_ysla', 'E');
url.searchParams.set('p_ysly', '1');
url.searchParams.set('p_cifdi', 'Any');
url.searchParams.set('p_pfeat', 'example');
url.searchParams.set('p_pityp', 'example');
url.searchParams.set('p_psncq', 'GT1');
url.searchParams.set('p_usmex', 'Y');
url.searchParams.set('p_violt', 'example');
url.searchParams.set('p_violy', '1');
url.searchParams.set('callback', 'example');
url.searchParams.set('p_fntype', 'ALL');
url.searchParams.set('p_pfead1', 'example');
url.searchParams.set('p_pfead2', 'example');
url.searchParams.set('p_pidall', 'Y');
url.searchParams.set('p_radius', '1');
url.searchParams.set('p_stdist', 'example');
url.searchParams.set('qcolumns', 'example');
url.searchParams.set('queryset', '1');
url.searchParams.set('p_fac_ico', 'Y');
url.searchParams.set('p_section', 'example');
url.searchParams.set('p_tribeid', '1');
url.searchParams.set('p_trichem', 'example');
url.searchParams.set('p_decouple', 'Y');
url.searchParams.set('p_ejscreen', 'example');
url.searchParams.set('p_fac_icos', 'example');
url.searchParams.set('p_tri_lr_yr', 'example');
url.searchParams.set('p_tribedist', '1');
url.searchParams.set('p_tribename', 'example');
url.searchParams.set('responseset', '1');
url.searchParams.set('summarylist', 'Y');
url.searchParams.set('p_limit_addr', 'Y');
url.searchParams.set('p_tri_lr_amt', 'example');
url.searchParams.set('p_tri_lr_pol', 'example');
url.searchParams.set('p_pretty_print', '1');
url.searchParams.set('p_ejscreen_over80cnt', '1');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facility_info")
q := baseURL.Query()
q.Set("p_co", "example")
q.Set("p_ct", "example")
q.Set("p_fa", "example")
q.Set("p_fn", "example")
q.Set("p_pd", "NONE")
q.Set("p_pm", "NONE")
q.Set("p_qs", "example")
q.Set("p_sa", "example")
q.Set("p_st", "example")
q.Set("xmax", "1")
q.Set("xmin", "1")
q.Set("ymax", "1")
q.Set("ymin", "1")
q.Set("p_act", "Y")
q.Set("p_des", "example")
q.Set("p_dwd", "0")
q.Set("p_fcv", "example")
q.Set("p_fea", "W")
q.Set("p_frs", "example")
q.Set("p_huc", "example")
q.Set("p_ico", "Y")
q.Set("p_iea", "W")
q.Set("p_lat", "1")
q.Set("p_law", "example")
q.Set("p_med", "A")
q.Set("p_ncs", "example")
q.Set("p_ncv", "example")
q.Set("p_oct", "Z")
q.Set("p_olr", "example")
q.Set("p_opc", "example")
q.Set("p_opd", "example")
q.Set("p_owc", "example")
q.Set("p_owd", "example")
q.Set("p_pen", "example")
q.Set("p_pid", "example")
q.Set("p_qiv", "0")
q.Set("p_reg", "01")
q.Set("p_sa1", "example")
q.Set("p_sfs", "example")
q.Set("p_sic", "example")
q.Set("p_wbd", "example")
q.Set("p_ysl", "W")
q.Set("p_zip", "example")
q.Set("output", "json")
q.Set("p_agoo", "AND")
q.Set("p_cmps", "example")
q.Set("p_feaa", "A")
q.Set("p_feay", "1")
q.Set("p_fips", "example")
q.Set("p_icoo", "example")
q.Set("p_idt1", "example")
q.Set("p_idt2", "example")
q.Set("p_ieaa", "E")
q.Set("p_ieay", "1")
q.Set("p_impw", "Y")
q.Set("p_long", "1")
q.Set("p_owop", "PRIVATE")
q.Set("p_sic2", "example")
q.Set("p_sic4", "example")
q.Set("p_trep", "CURR")
q.Set("p_ysla", "E")
q.Set("p_ysly", "1")
q.Set("p_cifdi", "Any")
q.Set("p_pfeat", "example")
q.Set("p_pityp", "example")
q.Set("p_psncq", "GT1")
q.Set("p_usmex", "Y")
q.Set("p_violt", "example")
q.Set("p_violy", "1")
q.Set("callback", "example")
q.Set("p_fntype", "ALL")
q.Set("p_pfead1", "example")
q.Set("p_pfead2", "example")
q.Set("p_pidall", "Y")
q.Set("p_radius", "1")
q.Set("p_stdist", "example")
q.Set("qcolumns", "example")
q.Set("queryset", "1")
q.Set("p_fac_ico", "Y")
q.Set("p_section", "example")
q.Set("p_tribeid", "1")
q.Set("p_trichem", "example")
q.Set("p_decouple", "Y")
q.Set("p_ejscreen", "example")
q.Set("p_fac_icos", "example")
q.Set("p_tri_lr_yr", "example")
q.Set("p_tribedist", "1")
q.Set("p_tribename", "example")
q.Set("responseset", "1")
q.Set("summarylist", "Y")
q.Set("p_limit_addr", "Y")
q.Set("p_tri_lr_amt", "example")
q.Set("p_tri_lr_pol", "example")
q.Set("p_pretty_print", "1")
q.Set("p_ejscreen_over80cnt", "1")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facility_info")
uri.query = URI.encode_www_form({
"p_co" => "example",
"p_ct" => "example",
"p_fa" => "example",
"p_fn" => "example",
"p_pd" => "NONE",
"p_pm" => "NONE",
"p_qs" => "example",
"p_sa" => "example",
"p_st" => "example",
"xmax" => "1",
"xmin" => "1",
"ymax" => "1",
"ymin" => "1",
"p_act" => "Y",
"p_des" => "example",
"p_dwd" => "0",
"p_fcv" => "example",
"p_fea" => "W",
"p_frs" => "example",
"p_huc" => "example",
"p_ico" => "Y",
"p_iea" => "W",
"p_lat" => "1",
"p_law" => "example",
"p_med" => "A",
"p_ncs" => "example",
"p_ncv" => "example",
"p_oct" => "Z",
"p_olr" => "example",
"p_opc" => "example",
"p_opd" => "example",
"p_owc" => "example",
"p_owd" => "example",
"p_pen" => "example",
"p_pid" => "example",
"p_qiv" => "0",
"p_reg" => "01",
"p_sa1" => "example",
"p_sfs" => "example",
"p_sic" => "example",
"p_wbd" => "example",
"p_ysl" => "W",
"p_zip" => "example",
"output" => "json",
"p_agoo" => "AND",
"p_cmps" => "example",
"p_feaa" => "A",
"p_feay" => "1",
"p_fips" => "example",
"p_icoo" => "example",
"p_idt1" => "example",
"p_idt2" => "example",
"p_ieaa" => "E",
"p_ieay" => "1",
"p_impw" => "Y",
"p_long" => "1",
"p_owop" => "PRIVATE",
"p_sic2" => "example",
"p_sic4" => "example",
"p_trep" => "CURR",
"p_ysla" => "E",
"p_ysly" => "1",
"p_cifdi" => "Any",
"p_pfeat" => "example",
"p_pityp" => "example",
"p_psncq" => "GT1",
"p_usmex" => "Y",
"p_violt" => "example",
"p_violy" => "1",
"callback" => "example",
"p_fntype" => "ALL",
"p_pfead1" => "example",
"p_pfead2" => "example",
"p_pidall" => "Y",
"p_radius" => "1",
"p_stdist" => "example",
"qcolumns" => "example",
"queryset" => "1",
"p_fac_ico" => "Y",
"p_section" => "example",
"p_tribeid" => "1",
"p_trichem" => "example",
"p_decouple" => "Y",
"p_ejscreen" => "example",
"p_fac_icos" => "example",
"p_tri_lr_yr" => "example",
"p_tribedist" => "1",
"p_tribename" => "example",
"responseset" => "1",
"summarylist" => "Y",
"p_limit_addr" => "Y",
"p_tri_lr_amt" => "example",
"p_tri_lr_pol" => "example",
"p_pretty_print" => "1",
"p_ejscreen_over80cnt" => "1"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/epa.gov/rcra/2019.10.15/rcra_rest_services.get_facility_info?" . http_build_query([
"p_co" => "example",
"p_ct" => "example",
"p_fa" => "example",
"p_fn" => "example",
"p_pd" => "NONE",
"p_pm" => "NONE",
"p_qs" => "example",
"p_sa" => "example",
"p_st" => "example",
"xmax" => "1",
"xmin" => "1",
"ymax" => "1",
"ymin" => "1",
"p_act" => "Y",
"p_des" => "example",
"p_dwd" => "0",
"p_fcv" => "example",
"p_fea" => "W",
"p_frs" => "example",
"p_huc" => "example",
"p_ico" => "Y",
"p_iea" => "W",
"p_lat" => "1",
"p_law" => "example",
"p_med" => "A",
"p_ncs" => "example",
"p_ncv" => "example",
"p_oct" => "Z",
"p_olr" => "example",
"p_opc" => "example",
"p_opd" => "example",
"p_owc" => "example",
"p_owd" => "example",
"p_pen" => "example",
"p_pid" => "example",
"p_qiv" => "0",
"p_reg" => "01",
"p_sa1" => "example",
"p_sfs" => "example",
"p_sic" => "example",
"p_wbd" => "example",
"p_ysl" => "W",
"p_zip" => "example",
"output" => "json",
"p_agoo" => "AND",
"p_cmps" => "example",
"p_feaa" => "A",
"p_feay" => "1",
"p_fips" => "example",
"p_icoo" => "example",
"p_idt1" => "example",
"p_idt2" => "example",
"p_ieaa" => "E",
"p_ieay" => "1",
"p_impw" => "Y",
"p_long" => "1",
"p_owop" => "PRIVATE",
"p_sic2" => "example",
"p_sic4" => "example",
"p_trep" => "CURR",
"p_ysla" => "E",
"p_ysly" => "1",
"p_cifdi" => "Any",
"p_pfeat" => "example",
"p_pityp" => "example",
"p_psncq" => "GT1",
"p_usmex" => "Y",
"p_violt" => "example",
"p_violy" => "1",
"callback" => "example",
"p_fntype" => "ALL",
"p_pfead1" => "example",
"p_pfead2" => "example",
"p_pidall" => "Y",
"p_radius" => "1",
"p_stdist" => "example",
"qcolumns" => "example",
"queryset" => "1",
"p_fac_ico" => "Y",
"p_section" => "example",
"p_tribeid" => "1",
"p_trichem" => "example",
"p_decouple" => "Y",
"p_ejscreen" => "example",
"p_fac_icos" => "example",
"p_tri_lr_yr" => "example",
"p_tribedist" => "1",
"p_tribename" => "example",
"responseset" => "1",
"summarylist" => "Y",
"p_limit_addr" => "Y",
"p_tri_lr_amt" => "example",
"p_tri_lr_pol" => "example",
"p_pretty_print" => "1",
"p_ejscreen_over80cnt" => "1"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- See official documentation for authentication and setup.
What can you build with U.S. EPA Enforcement and Compliance History Online (ECHO) - Resource Conservation and Recovery Act ?
U.S. EPA Enforcement and Compliance History Online (ECHO) - Resource Conservation and Recovery Act is a Government API. Developers commonly use government APIs for:
- surfacing public datasets in citizen-facing apps
- building transparency and civic engagement tools
- accessing legislation, court records, and official data
- powering research and journalism tools
- creating compliance and regulatory monitoring dashboards
No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. U.S. EPA Enforcement and Compliance History Online (ECHO) - Resource Conservation and Recovery Act is free to use, making it a low-risk choice to experiment with.
New to APIs? Read our beginner's guide · Learn about API keys · What is REST?