Offendersearch
For developers · enterprise-grade

The Sex Offender Search API, field by field.

The offender search API: one call searches all 58 US registries — every state, DC and the territories — and returns scored, source-cited, continuously updated records in the richest schema in the category. First 25 calls free.

No card required. Your key works immediately. New here? Start with the sex offender API overview. Still choosing a vendor? The top-5 sex offender API comparison puts every published number side by side.

The contract

One request, one defensible answer

curl https://api.offendersearch.app/v1/search \
  -H "X-API-Key: $OFFENDERSEARCH_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "query": {
      "firstName": "John",
      "lastName": "Doe",
      "dob": "1980-04-12"
    }
  }'
Capabilities

What the offender search API gives you

One call, all 58 US registries

The 50 states, DC and the US territories — 58 registries — searched in a single request, with people de-duplicated across jurisdictions into one record.

Scored, explained matches

Every record carries matchConfidence, matchState and matchBasis: how much identity evidence exists, how the date of birth verified, and which fields matched and how.

The richest record in the category

A 76-field schema: photographs, aliases and nicknames, typed addresses with coordinates, statute-level offense history, physical description, flags and normalized housing status.

Provenance on every record

Each record names the registry that holds it, that registry’s own permanent record link, and when we last read it — a citation you can store beside the decision.

Completeness you can trust

Every response says which of the 58 sources answered in full. An incomplete search is labelled — never silently returned as an empty result.

Batch, async and webhooks

POST a CSV or JSON batch and get one scored result per row; run large sweeps async and receive the finished result at your callback URL.

Search the way callers ask

Name with nickname and misspelling handling, DOB or age with tolerance, city, ZIP, street address, free text, and lat/lng radius up to 100 miles.

Drop-in migration

A compatibility endpoint accepts the request shape and returns the envelope other offender APIs use — switch by changing the base URL and key.

Code examples

Call the sex offender search API from Python or JavaScript

Every request is a single POST /v1/search with your key in the X-API-Key header. The same body works from any language; these are the two we are asked for most. The full field list is in the record object reference.

import os, requests

resp = requests.post(
    "https://api.offendersearch.app/v1/search",
    headers={"X-API-Key": os.environ["OFFENDERSEARCH_KEY"]},
    json={"query": {"firstName": "John", "lastName": "Doe", "dob": "1980-04-12"}},
    timeout=30,
)
resp.raise_for_status()
for r in resp.json()["records"]:
    print(r["name"]["full"], r["matchState"], r["sources"][0]["recordUrl"])
Query shapes

Search by name, date of birth, address or radius

One endpoint answers every way people actually ask. Add a date of birth whenever you have one: it is the single biggest cut in false positives, because a common name stops matching everyone who shares it. How matching and scoring work.

Search byUse it whenRequest body
Name + date of birthScreening a known person — an applicant, tenant, volunteer or patient.{ "query": { "firstName": "John", "lastName": "Doe", "dob": "1980-04-12" } }
Name + approximate ageYou have an age but not a full date of birth.{ "query": { "firstName": "John", "lastName": "Doe", "age": 46 } }
Name + state of residenceNarrowing a common name to people who live in one state.{ "query": { "firstName": "John", "lastName": "Doe", "state": "TX" } }
Address or ZIPChecking who is registered at or near a property.{ "query": { "address": "123 Main St", "zipcode": "60614" } }
Latitude / longitude radiusMapping registrants around a school, facility or listing.{ "query": { "lat": 41.9, "lng": -87.65, "radiusMiles": 1 } }

Screening a list rather than one person? Use bulk sex offender search — one row in, one scored row out.

Who builds on it

Where teams use the sex offender search API

Property management

Screen rental applicants and check the registrants around a listing before you sign a lease.

Senior living and nursing homes

Check every admission automatically, with a date of birth so one resident means one answer.

Staffing and recruiting

Add a registry check to onboarding without sending the candidate anywhere.

Gig platforms and marketplaces

Screen providers at signup and keep watching them with monitoring.

Schools, childcare and youth programs

Check staff, coaches and volunteers before they work with children.

Dating and social apps

Run a safety check at signup or before a match meets in person.

Need criminal history as well as the registry? The criminal records API runs on the same key, and the background check API page shows both layers together.

Pricing

Sex offender search API pricing

First 25 callsFree, no card required
Each search$0.15
Past 2,000 calls in a month$0.11 per call
Live re-verification+$0.02 per completed source, capped at $2.00 a search
Verification PDF+$0.02 each
BatchEach row billed as one call
Seats, minimums, contractsNone

Full detail, monitoring and volume terms: API pricing.

FAQ

Sex offender API questions

How fast can I make my first call?

Minutes. Sign up, create a key, and your first 25 calls are free with no payment method. The quickstart is a single curl command, and the response above is the real shape you get back.

What does the API cost?

$0.15 per call, dropping to $0.11 after 2,000 calls in a month. No seats, no minimum, no annual commitment. Live re-verification adds $0.02 per completed source, capped at $2.00 a search, and verification PDFs are $0.02 each. Volume and enterprise terms are available.

How current is the data?

Continuously updated. Every record carries its own lastCheckedAt, so you can see the currency of each answer per record and per source instead of trusting a blanket claim.

Does one search really cover every state?

Yes — omit jurisdictions and the search runs across all 58 US registries at once. A state in the query is a residence filter on the results; it never narrows where the search looks, so an out-of-state registration still surfaces.

Is there a dashboard as well as the API?

Yes. The same account includes a full no-code dashboard — search by name, upload CSVs, stored search history and teammates — so your compliance team can screen today while your engineers integrate the API on their own schedule.

Is this a consumer report?

Not on the standard API: standard results are not a consumer report. FCRA-regulated use runs through FCRA Partner Access, a separately enabled service for approved consumer reporting agencies and screening platforms under a written FCRA agreement. Use is subject to our acceptable-use terms and applicable law.

The Offendersearch APIs

One account, one key, one bill — the sex offender registry and criminal records, side by side.

Sex offender registry

Criminal records

Build with it

Comparisons & research

Further reading

Independent comparisons of the tools in this category — including where other vendors are the better answer.

The best sex offender APIs in 2026, compared

Five ways to search US registries programmatically, measured on coverage you can enumerate, provenance, match quality and price.

The best criminal record search APIs in 2026

Jail bookings, prison custody, court cases and warrants are four different systems. Which API you want depends on which one your question needs.

The best background check APIs in 2026

Five brands, three companies: the consolidation nobody mentions, each vendor’s real published price, and the only per-call API on the list.

More in our comparisons and research.

Ship offender screening this week

25 free calls, a five-minute quickstart, and a compatibility endpoint if you are migrating. The dashboard covers your operations team while you build.