Quickstart
Make your first API request in under two minutes.
1
Get an API key
Sign up at dashboard.parley.dev to get your free API key. Free tier includes 100 requests per day -- no credit card required.
Your key will look like this:
prl_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p62
Make your first request
Search for facilities in Texas with active Clean Air Act programs:
Shell
curl "https://api.parley.dev/v1/facilities?state=TX&program=CAA&per_page=5" \ -H "X-API-Key: prl_YOUR_KEY_HERE"3
Get the response
200OKapplication/json
{ "data": [ { "id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "name": "ACME CHEMICAL PLANT", "address": { "street": "1234 Industrial Blvd", "city": "Houston", "state": "TX", "zip": "77001", "county": "Harris" }, "compliance_score": 78, "compliance_status": "in_violation", "programs": ["CAA", "RCRA"], "active_violations": true } ], "pagination": { "total": 342, "page": 1, "per_page": 5, "has_more": true }, "meta": { "request_id": "req_7f3a1b2c", "timestamp": "2026-03-20T12:00:00Z" }}Examples in other languages
Node.js / fetch
const response = await fetch( "https://api.parley.dev/v1/facilities?state=TX&program=CAA", { headers: { "X-API-Key": process.env.PARLEY_API_KEY }, });const { data, pagination } = await response.json();console.log(data[0].name); // "ACME CHEMICAL PLANT"console.log(data[0].compliance_score); // 78Python / requests
import requestsresp = requests.get( "https://api.parley.dev/v1/facilities", params={"state": "TX", "program": "CAA"}, headers={"X-API-Key": "prl_YOUR_KEY_HERE"},)data = resp.json()["data"]print(data[0]["name"]) # ACME CHEMICAL PLANTprint(data[0]["compliance_score"]) # 78Base URL
All API requests should be made to:
https://api.parley.dev/v1All responses are JSON. All timestamps are ISO 8601 in UTC.