Screen a whole list against every US registry.
Upload a CSV and every person on it is searched across all 58 US registries at once. Each row comes back clear or review, and the whole run is stored as your audit trail. No code needed — and a batch API when you want one.
From spreadsheet to screened, in minutes
Bring the file you already have
A header row with names is enough — firstName and lastName, plus dob, city, state or zipcode when you have them. Your own columns, like a case number or a note, ride along untouched, so an export from your applicant system usually works as-is.
Every row is one search
Each person on the list is searched across all 58 US registries — the same nationwide search you would run one at a time, priced the same way: one metered search per row, stated up front before anything runs.
Read the answers at a glance
Every row comes back marked clear or review, with the match count and the top match beside it. Rows that need eyes stand out; rows that are clear say so in words. The full profiles — photographs, records, official links — are one click away.
Keep the whole run on file
The batch lands in your search history like everything else: who was screened, when, and what came back — the audit trail your next review will ask for.
What goes in, and what comes back
A three-row file, and the result for each. Your own columns — here a case_id — ride along untouched so you can match answers back to your records.
firstName,lastName,dob,state,case_id
Jane,Roe,1985-07-30,TX,APP-1042
John,Public,1979-02-14,CA,APP-1043
Mary,Sample,1990-11-02,FL,APP-1044| case_id | Name | Result | Matches | Top match |
|---|---|---|---|---|
| APP-1042 | Jane Roe | Review | 1 | dob_match · TX registry |
| APP-1043 | John Public | Clear | 0 | — |
| APP-1044 | Mary Sample | Clear | 0 | — |
Illustration uses fictional data. A Review row means at least one candidate to check by eye — open it for photographs, the offense detail and the official record link. A Clear row found nothing to review across all 58 registries.
Columns the CSV understands
A header row and a last name per row is the only requirement. Everything else narrows the match — send what you hold, leave the rest out.
| Column | Required? | Example | What it does |
|---|---|---|---|
lastName | Required | Roe | The one field every row needs. |
firstName | Recommended | Jane | Narrows matches and raises confidence. |
dob | Optional | 1985-07-30 | The strongest single narrowing field. |
age | Optional | 39 | Use when you have no date of birth. |
state | Optional | TX | Filters where people live, not where we look. |
city / zipcode | Optional | Austin / 78701 | Narrow to a place when that is the question. |
your own columns | Passed through | APP-1042 | Case IDs and notes ride along untouched. |
Columns we don’t recognise are ignored, not rejected — so an export from your applicant or admissions system usually works without editing.
One upload, whatever the list is
Skilled nursing & senior living
Screen a referral census or a new admission list before beds are offered.
Landlords & property managers
Clear a stack of rental applications, or a whole portfolio, in one pass.
Nonprofits & youth programs
Run a season of volunteer sign-ups against every US registry at once.
HR & staffing teams
Screen a hiring list or an agency roster alongside your other checks.
The same batch, as one API call
POST the CSV itself — or JSON — and get one scored result per row, in order. Same engine, same records, same per-search pricing as the dashboard.
curl https://api.offendersearch.app/v1/batch \
-H "X-API-Key: $OFFENDERSEARCH_KEY" \
-H "Content-Type: text/csv" \
--data-binary @applicants.csvBatch screening questions
How is a batch billed?
Per search, not per file. A CSV of 100 people is 100 metered searches at the normal per-search rate, and the dashboard tells you the exact count before you run it — never a surprise on the invoice.
What columns does the CSV need?
A header row, and at minimum a name per row. Any query field the API accepts works as a column — firstName, lastName, dob, age, city, state, zipcode and more. A batch runs in Regular mode against the continuously-updated corpus. Columns we do not recognise are ignored rather than rejected, so your internal IDs can stay in the file.
How big can a list be?
Up to 1,000 rows per upload in the dashboard, and larger volumes through the batch API. If you screen tens of thousands at a time, talk to us about enterprise terms.
Can developers do this through the API?
Yes — POST the same CSV (or JSON) to the batch endpoint and get one result per row, in order, with the same scored records the dashboard shows. It is the same engine either way.
Can I use batch results for hiring or housing decisions?
Offendersearch is not a consumer reporting agency and results are not a consumer report, so they must not be used for FCRA-covered decisions without appropriate process. Use is subject to our acceptable-use terms and applicable law.
Your list, screened before lunch
Sign up, upload the CSV you already have, and read the answers row by row. 25 free searches to try it on a real slice of your list.