Texas Department of Insurance Agent Lookup avatar

Texas Department of Insurance Agent Lookup

Pricing

Pay per event

Go to Apify Store
Texas Department of Insurance Agent Lookup

Texas Department of Insurance Agent Lookup

Search and export official Texas insurance agent, adjuster, agency, active appointment, and business relationship records.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Search and export official Texas Department of Insurance agent lookup data for producer verification, agency research, appointment due diligence, and recurring compliance checks.

This Actor reads the public datasets linked by the Texas Department of Insurance (TDI). It returns normalized person licenses, agency licenses, active agency appointments, and business relationships as JSON, CSV, Excel, or any other Apify dataset format.

What this Texas insurance license lookup does

Use one input to search current official records by:

  • agent, adjuster, or agency name;
  • Texas license number;
  • National Producer Number (NPN);
  • city, state, or postal code;
  • license type or qualification;
  • appointing insurance company;
  • record type.

The Actor applies filters at the Texas Open Data API, paginates automatically, removes duplicate rows, and stops at your maxItems limit.

It does not scrape search-engine snippets or resell a third-party directory.

Who is it for?

Insurance compliance teams

Verify displayed license identity, qualification, and expiration before onboarding or periodic review.

Agencies and carriers

Check agency appointments and public business relationships by stable NPN.

Producer operations teams

Export repeatable license searches into a spreadsheet, CRM, warehouse, or audit workflow.

Researchers and developers

Use a consistent JSON contract instead of handling several Socrata datasets and field names independently.

Official data sources

TDI links these datasets from its Agent Download Lists page.

Record typeOfficial datasetTypical use
personLicenseAgents, adjusters, and other licensed peopleSearch a producer or verify a person license
agencyLicenseAgencies and approved insurance businessesVerify an agency, business license, or qualification
agencyAppointmentActive company appointments for agenciesCheck which insurers actively appoint an agency
relationshipBusiness relationships among licenseesReview sub-agent, owner, and related-entity links

Every output row includes sourceDatasetId and sourceUrl for traceability.

Data you can extract

Depending on the selected record type, records include:

  • record type and official dataset ID;
  • person, agency, or licensee name;
  • National Producer Number;
  • Texas license number;
  • license or entity type;
  • qualification;
  • issue and expiration dates;
  • expiration status derived from the displayed expiration date;
  • city, state, postal code, province, or county when published;
  • appointing company and NAIC ID;
  • appointment type and active date;
  • business association type, related name, NPN, and begin date;
  • retrieval timestamp;
  • official source link.

Fields that do not apply to a record type are null, so downstream integrations can use one stable schema.

Get started

  1. Open the Actor input page.
  2. Choose one or more Record types.
  3. Enter a name, NPN, license number, location, qualification, or company filter.
  4. Set Maximum records.
  5. Click Start.
  6. Open the Dataset tab.
  7. Download JSON, CSV, Excel, XML, or RSS, or connect the dataset API.

For a first test, search personLicense records for JOHN SMITH in TX with maxItems set to 25.

Input parameters

FieldTypeDefaultDescription
recordTypesstring arrayperson and agency licensesDatasets to search
querystringnoneFull-text search across selected datasets
namestringnonePartial person or primary agency name
npnstringnoneExact National Producer Number
licenseNumberstringnoneExact Texas person or agency license number
citystringnoneExact city, case-insensitive
statestringnone (TX is prefilled)Exact displayed state
postalCodestringnoneExact displayed postal code
licenseTypestringnonePartial official license type
qualificationstringnonePartial official qualification
companyNamestringnonePartial appointing company or associated entity
maxItemsinteger100Overall result limit from 1 to 10,000

Filters that do not exist on a selected record type produce no rows for that type rather than returning an unfiltered list.

Input examples

Find a Texas agent by name

{
"recordTypes": ["personLicense"],
"name": "JOHN SMITH",
"state": "TX",
"maxItems": 25
}

Export licensed Austin agencies

{
"recordTypes": ["agencyLicense"],
"city": "AUSTIN",
"state": "TX",
"maxItems": 100
}

Verify an agency's active appointments

{
"recordTypes": ["agencyAppointment"],
"npn": "22142794",
"maxItems": 50
}

Output example

A current person-license search produces records shaped like this:

{
"recordType": "personLicense",
"sourceDatasetId": "kxv3-diwf",
"sourceUrl": "https://data.texas.gov/resource/kxv3-diwf",
"npn": "1167317",
"licenseNumber": "769759",
"name": "JOHN SMITH",
"entityType": "General Lines Agent",
"qualification": "Life, Accident, Health & HMO",
"licenseIssueDate": "1990-11-09T00:00:00Z",
"expirationDate": "2027-01-31T00:00:00Z",
"expirationStatus": "active",
"city": "FORT WORTH",
"state": "TX",
"postalCode": "762447045",
"companyName": null,
"appointmentType": null,
"retrievedAt": "2026-08-13T20:58:34.896Z"
}

The default dataset contains all selected record types. Use recordType to route rows in a data pipeline.

How much does it cost to look up Texas insurance licenses?

Pricing uses one small start event and one item event for each unique dataset row returned.

The exact rate depends on your Apify pricing tier. The current pricing table is always visible before you start a run.

TierPrice per returned record
Free$0.00736
Bronze$0.00640
Silver$0.004992
Gold$0.00384
Platinum$0.00256
Diamond$0.001792

The one-time start event is $0.005 per run. At the Bronze rate:

  • a 1-record run uses one $0.005 start event and one $0.0064 item event;
  • a 25-record run uses one $0.005 start event and 25 item events at $0.0064 each;
  • a 100-record run uses one $0.005 start event and 100 item events at $0.0064 each.

No event is charged for duplicate, rejected, empty, or failed records. Apify platform usage may be billed according to your plan.

Export and integration workflows

Compliance spreadsheet

Schedule a name, NPN, or city search and export the dataset as CSV or Excel for reviewer sign-off.

Producer verification pipeline

Send NPN-based results to a webhook, compare expirationDate with the previous run, and flag changed records.

Appointment due diligence

Run agencyAppointment by NPN and compare company and NAIC ID pairs between scheduled runs.

Data warehouse

Fetch dataset items through the API and upsert by recordType, npn, licenseNumber, qualification, company NAIC ID, and association fields.

The Actor returns current snapshots. Change detection and alert delivery are downstream workflows, not separate Actor features.

Run with the Apify API

Replace YOUR_TOKEN with an Apify API token.

cURL

curl -X POST \
"https://api.apify.com/v2/acts/automation-lab~texas-insurance-license-lookup/runs?token=YOUR_TOKEN&waitForFinish=120" \
-H "Content-Type: application/json" \
-d '{"recordTypes":["agencyLicense"],"city":"AUSTIN","state":"TX","maxItems":25}'

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/texas-insurance-license-lookup').call({
recordTypes: ['personLicense'],
name: 'JOHN SMITH',
state: 'TX',
maxItems: 25,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("automation-lab/texas-insurance-license-lookup").call(run_input={
"recordTypes": ["agencyAppointment"],
"npn": "22142794",
"maxItems": 50,
})
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(items)

Use with Apify MCP

Add this Actor to Claude Code:

claude mcp add --transport http apify \
"https://mcp.apify.com?tools=automation-lab/texas-insurance-license-lookup"

Claude Desktop

Add the following remote MCP server configuration in Claude Desktop:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=automation-lab/texas-insurance-license-lookup"
}
}
}

Cursor

Use the same JSON under Cursor's MCP settings and keep the Actor slug in the url query.

VS Code

Add the same remote HTTP MCP URL to your VS Code MCP configuration.

Example prompts:

  • "Search Texas person licenses for John Smith and return NPN, license number, qualification, and expiration."
  • "Export up to 100 licensed insurance agencies in Austin, Texas."
  • "Check active agency appointments for NPN 22142794 and group them by company."

Scheduling and monitoring

Use an Apify Schedule to run the same stable query daily, weekly, or monthly.

For change monitoring:

  1. use a precise NPN, license number, or location input;
  2. retain each run's dataset ID and retrieval time;
  3. compare stable identity and appointment fields;
  4. send changes through an Apify webhook or your own integration.

The Actor does not maintain a private historical registry or send alerts by itself.

Accuracy and limitations

  • Results reflect the public Texas datasets when the run executes.
  • TDI and Texas Open Data control update timing, field definitions, and availability.
  • expirationStatus is derived from expirationDate; verify consequential decisions against the official source.
  • The appointment mode currently covers the public active agency appointments dataset.
  • TDI's linked person-appointment dataset currently requires authentication and is not included.
  • Public records can contain abbreviations, uppercase text, missing fields, or multiple qualifications per license.
  • A name is not a unique identity. Prefer NPN or license number for verification.
  • maxItems applies across all selected record types in their selected order.
  • This Actor does not access private accounts, non-public records, or historical report-generator data.

Legality and responsible use

The Actor accesses public records linked by a Texas government agency.

You are responsible for complying with applicable laws, source terms, privacy obligations, and your organization's policies. Use public license data for legitimate verification, compliance, research, and operational purposes. Do not use it for harassment, unlawful discrimination, identity theft, or deceptive outreach.

For a licensing or enforcement decision, open the included official source URL and consult TDI when appropriate.

Troubleshooting

Why did my search return no records?

Check the selected record type and filter compatibility. License numbers only apply to person and agency license datasets. Company filters apply to appointment and relationship datasets. Try an NPN or remove an overly narrow location filter.

Why are there several rows for one NPN?

A producer can have multiple license qualifications, appointments, or business relationships. These are distinct official rows and are intentionally preserved.

Why did a run fail with an upstream error?

Texas Open Data may be temporarily unavailable or rate-limited. The Actor retries transient responses with backoff and then fails clearly instead of returning an unlabelled partial result. Retry later or reduce the requested volume.

Is expirationStatus an official enforcement status?

No. It is a convenience value calculated from the source's displayed expiration date. Review the date, qualification, and official source before making a consequential decision.

FAQ

Does this Actor require a TDI or Sircon login?

No. It uses anonymous public Texas Open Data endpoints linked by TDI.

Does it use a proxy or browser?

No. It makes lightweight direct HTTP requests to the official structured-data API.

Can I search by exact license number?

Yes. Set recordTypes to personLicense or agencyLicense and pass licenseNumber.

Can I retrieve agency appointments?

Yes. Select agencyAppointment and filter by an agency NPN, company name, or public location.

Can I export more than 500 records?

Yes. The Actor paginates in bounded batches up to maxItems, with a maximum of 10,000 records per run.

Are empty results charged as items?

No. Item events are emitted only for unique normalized rows pushed to the dataset.

Choose this Actor when the primary record is a Texas insurance person, agency, appointment, or business relationship published by TDI.