FastDOL · Rate Limits

Fastdol Rate Limits

FastDOL enforces two overlapping restrictions. A per-key monthly lookup quota (50 lookups on the free tier, custom on Enterprise) tracked through standard `X-RateLimit-*` response headers. Layered on top is per-IP request-rate throttling that varies by endpoint family — 60 req/min on the main search endpoints, 30 req/min on inspection detail endpoints, and 10 req/min on industry metadata. Exceeding either trigger returns HTTP 429. Batch requests count as 1 lookup per item submitted toward the monthly quota.

Fastdol Rate Limits is the machine-readable rate-limit profile for FastDOL on the APIs.io network, conforming to the API Commons Rate Limits specification.

It captures 10 rate-limit definitions, measuring requests_per_month, requests_per_minute, items_per_request, rows_per_request, and megabytes_per_request.

The profile also includes 8 backoff/retry policies defined and response codes documented for throttled, quotaExceeded, validationError, unauthorized, forbidden, notFound, and serviceDegraded.

Tagged areas include Rate Limiting, Federal Enforcement, Workplace Safety, and Public Records.

10 Limits Throttle: 429 Quota: 429
Rate LimitingFederal EnforcementWorkplace SafetyPublic Records

Limits

Monthly quota — Free tier key
requests_per_month · month
50
50 lookups per API key per month on the Free tier. Batch requests count as 1 lookup per submitted item.
Monthly quota — Enterprise key
requests_per_month
custom (contact ben@fastdol.com)
Custom quotas issued under enterprise / data-licensing contracts.
Per-IP request rate — main search endpoints IP
requests_per_minute · minute
60
Applies to /v1/employers search and per-employer profile endpoints.
Per-IP request rate — inspection detail endpoints IP
requests_per_minute · minute
30
Applies to /v1/inspections/{activity_nr}/violations and related detail endpoints.
Per-IP request rate — industry metadata endpoints IP
requests_per_minute · minute
10
Applies to /v1/industries and NAICS metadata endpoints.
Batch lookup batch size request
items_per_request · usage
100
Maximum number of items in a single POST /v1/employers/batch request.
CSV upload rows per request request
rows_per_request · usage
500
Maximum CSV rows accepted by POST /v1/employers/upload-csv.
CSV upload size cap request
megabytes_per_request · usage
5
Maximum upload size for POST /v1/employers/upload-csv.
Async export rows per job account
rows_per_job · usage
100000
Enterprise-only — maximum rows in a single POST /v1/export job.
Pagination page size request
items_per_page · usage
100
limit query parameter accepts 1–100 (default 20). Offset paginates the rest.

Policies

Per-key quota
Monthly lookup quota is bound to the API key, not the IP. Use one key per workload to isolate budgets.
Per-IP throttle
Burst protection enforced at the IP level independently of plan tier; raise via support if you have legitimate higher-throughput need.
Batch counts per item
Each item in a /v1/employers/batch request consumes one lookup against the monthly quota — size batches to your budget, not to the 100-item ceiling.
Empty results are still 200
Zero-result searches return HTTP 200 with an empty results array, so a 200 does not imply data was returned — inspect the response payload.
503 on degraded dependencies
When upstream federal-data ingestion is degraded, FastDOL returns 503 on affected resources. Retry with exponential backoff.
Key rotation grace
Rotating an API key keeps the previous key valid for a 48-hour grace window — rotate proactively without breaking running pipelines.
Exponential backoff on 429
Honor the Retry-After header and back off exponentially when a 429 is returned; avoid hammering retries against per-IP throttles.
Idempotent reads
All GET endpoints are safe to retry. Mutating endpoints (/auth/*, /dashboard/keys, /v1/employers/*/feedback, /v1/usage/*) should be retried with idempotency guards on the caller.

Sources