Discover/iCrimeWatch API
live

iCrimeWatch APIicrimewatch.net

Access sex offender registry data from OffenderWatch/SheriffAlerts jurisdictions. Search offenders by name or city, list agencies by state, and retrieve full profiles.

Endpoint health
verified 4d ago
list_agencies
search_offenders
get_offender_detail
get_offenders_with_details
4/4 passing latest checkself-healing
Endpoints
4
Updated
26d ago

What is the iCrimeWatch API?

The iCrimeWatch.net API exposes 4 endpoints for querying US sex offender registry data powered by OffenderWatch and SheriffAlerts. Starting with list_agencies, you can discover available law enforcement jurisdictions by state, then use search_offenders to filter by last name or city within a specific agency. Profile data includes physical descriptions, offense history, and address fields across hundreds of participating agencies.

Try it
City to filter by
Page number for pagination
The unique ID of the agency/jurisdiction (from list_agencies endpoint)
Last name to filter by (at least 2-3 characters recommended)
First name to filter by
api.parse.bot/scraper/b0be788a-9bc4-4b4f-9dec-8bb8ea4c1417/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/b0be788a-9bc4-4b4f-9dec-8bb8ea4c1417/search_offenders?page=1&agency_id=56966&last_name=SMITH' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace icrimewatch-net-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: iCrimewatch Sex Offender Registry — discover agencies, search offenders, fetch details."""
from parse_apis.icrimewatch_sex_offender_registry_api import Icrimewatch, State, AgencyRequiresDisclaimer

client = Icrimewatch()

# List agencies in Texas using the State enum.
for agency in client.agencies.list(state=State.TX, limit=5):
    print(agency.agency_id, agency.name)

# Construct an agency by ID and search offenders by last name.
collin = client.agency("54336")
for offender in collin.search_offenders(last_name="SMITH", limit=5):
    print(offender.name, offender.city, offender.zip)

# Drill into ONE offender's full profile via .first() then .details().
summary = collin.search_offenders(last_name="SMITH", limit=1).first()
if summary:
    detail = summary.details(agency_id="54336")
    print(detail.full_name, detail.age, detail.sex, detail.race)
    print(detail.height, detail.weight, detail.hair, detail.eyes)

# Batch fetch detailed profiles (search + detail in one call).
for profile in collin.get_offenders_with_details(last_name="SMITH", limit=3):
    print(profile.full_name, profile.age, profile.address)

# Typed error handling for agencies requiring disclaimer acceptance.
try:
    problem = client.agency("55003")
    for off in problem.search_offenders(last_name="DOE", limit=1):
        print(off.name)
except AgencyRequiresDisclaimer as exc:
    print(f"agency unavailable: {exc}")

print("exercised: agencies.list / search_offenders / details / get_offenders_with_details")
All endpoints · 4 totalmissing one? ·

Search for offenders in a specific agency jurisdiction by name or city. Returns a paginated list of offenders with basic info (name, address, city, zip). Requires an agency_id from the list_agencies endpoint. Some agencies require disclaimer acceptance and will return an error; use agencies that do not require it (e.g. Collin County 54336).

Input
ParamTypeDescription
citystringCity to filter by
pageintegerPage number for pagination
agency_idrequiredstringThe unique ID of the agency/jurisdiction (from list_agencies endpoint)
last_namestringLast name to filter by (at least 2-3 characters recommended)
first_namestringFirst name to filter by
Response
{
  "type": "object",
  "fields": {
    "page": "integer current page number",
    "agency_id": "string agency ID used in the query",
    "offenders": "array of offender objects with offender_id, name, address, city, zip, detail_url",
    "total_found": "integer total number of matching offenders"
  },
  "sample": {
    "data": {
      "page": 1,
      "agency_id": "54336",
      "offenders": [
        {
          "zip": "77033",
          "city": "HOUSTON",
          "name": "CLIFTON ALEXANDER",
          "address": "8142  ROCKFORD DR",
          "detail_url": "https://www.icrimewatch.net/offenderdetails.php?OfndrID=9139219&AgencyID=54336",
          "offender_id": "9139219"
        }
      ],
      "total_found": 272
    },
    "status": "success"
  }
}

About the iCrimeWatch API

Agencies and Jurisdiction Discovery

Before querying offenders, use list_agencies with a two-letter state code to retrieve available jurisdictions. Each agency object returns an agency_id, name, and url. The agency_id is a required parameter for every other endpoint. Not every agency in the list supports automated access — some require disclaimer acceptance that cannot be satisfied programmatically, and those will return an error when queried.

Searching Offenders

search_offenders accepts an agency_id alongside optional filters: last_name, first_name, city, and page for pagination. Results are paginated and include per-offender fields: offender_id, name, address, city, zip, and a detail_url. The total_found integer tells you how many records matched before pagination. At least 2–3 characters are recommended when filtering by last_name to avoid overly broad results.

Full Profile Details

get_offender_detail takes an agency_id and offender_id (both from search results) and returns the complete profile: age, sex, race, height, weight, hair, eyes, address, and an offenses string covering offense descriptions, dates, and contextual details. If you need enriched results without two separate calls, get_offenders_with_details combines a search pass with per-record detail fetches in a single request. Keep the limit parameter low — higher values require sequential fetches per result and can cause timeouts.

Coverage and Limitations

Data coverage depends entirely on which agencies participate in the OffenderWatch/SheriffAlerts network. Not all US jurisdictions are represented, and availability varies by state. Disclaimer-gated agencies return an error rather than results, so effective coverage within any given state may be a subset of what list_agencies returns.

Reliability & maintenanceVerified

The iCrimeWatch API is a managed, monitored endpoint for icrimewatch.net — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when icrimewatch.net changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official icrimewatch.net API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
4d ago
Latest check
4/4 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Building a neighborhood safety dashboard that maps registered offenders by city using search_offenders and address fields
  • Automating tenant or employee background screening by querying offender registries across multiple state agencies
  • Aggregating offense history strings from get_offender_detail to analyze conviction type patterns across jurisdictions
  • Generating alerts when new offenders appear in a specific agency's registry by comparing paginated search_offenders results over time
  • Enriching address-based datasets with proximity to registered offenders using the address, city, and zip fields
  • Researching agency coverage gaps across states by iterating list_agencies for all 50 state codes
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does iCrimeWatch.net have an official developer API?+
No. iCrimeWatch.net does not publish a documented public developer API. The data is sourced from the OffenderWatch/SheriffAlerts network of law enforcement agency portals.
What does `get_offender_detail` return beyond what `search_offenders` provides?+
search_offenders returns basic identifying fields: name, address, city, zip, and offender_id. get_offender_detail adds physical description fields — height, weight, hair, eyes, race, sex, and age — plus an offenses string containing offense descriptions, dates, and associated details not present in the search listing.
Why do some agencies return errors instead of results?+
Certain agencies in the OffenderWatch/SheriffAlerts network require a user to accept a legal disclaimer before accessing offender data. This acceptance cannot be completed programmatically, so those agencies return an error response. The list_agencies endpoint will still return them — you need to test each agency_id to determine whether it is accessible.
Does the API support searching across all agencies in a state at once rather than one agency at a time?+
Not currently. Each search or detail call requires a single agency_id, so multi-agency queries require iterating over the results from list_agencies. You can fork this API on Parse and revise it to add a batch-search endpoint that loops over all agencies for a given state.
Are photos or mugshots included in offender profiles?+
No photo or image fields are returned by any endpoint — get_offender_detail covers physical description through structured text fields like height, weight, hair, and eyes. You can fork this API on Parse and revise it to add image URL extraction if the source profile pages include offender photos.
Page content last updated . Spec covers 4 endpoints from icrimewatch.net.
Related APIs in Government PublicSee all →
fbi.gov API
Search and retrieve profiles of individuals listed on the FBI's Most Wanted pages, including charges, physical descriptions, aliases, reward amounts, and photographs. Browse by category, search by name, or look up a specific person by ID.
cyberbackgroundchecks.com API
Search for people by name or email to instantly retrieve their public information including addresses, phone numbers, relatives, and associates. Access detailed background records to verify identities, reconnect with contacts, or conduct people searches.
occrp.org API
Search and discover investigative journalism from OCCRP.org, including articles, investigations, and projects organized by section and region. Get the latest news updates and detailed information about specific investigations to stay informed on organized crime and corruption reporting.
offshoreleaks.icij.org API
Search for entities, individuals, and their financial connections across major offshore leak investigations including the Panama Papers and Pandora Papers. Explore detailed relationship graphs, browse officer records, and analyze bulk datasets to uncover offshore financial activities and networks.
violationtracker.goodjobsfirst.org API
Search corporate violations and regulatory penalties across companies, industries, and agencies to research misconduct records and enforcement actions. Get detailed information about specific violations, parent company compliance histories, and regulatory agency enforcement patterns.
opencorporates.com API
Access comprehensive company registration data, officer details, and filing histories from OpenCorporates across jurisdictions worldwide to research businesses and their leadership. Search for specific companies or officers, retrieve detailed corporate information, and explore filing records to support due diligence, compliance checks, and business intelligence.
iardc.org API
Search for Illinois-licensed lawyers and access their registration status, contact information, admission dates, and discipline records through the IARDC database. Find detailed information about any lawyer registered with the Illinois Attorney Registration & Disciplinary Commission to verify credentials and review their professional history.
iafd.com API
Search for adult film performers and movies to access detailed biographies, filmographies, awards, and cast information all in one place. Browse top performers, discover who was born today, and explore comprehensive metadata about films and their casts.