Discover/Mn API
live

Mn APIroster.aelslagid.state.mn.us

Search Minnesota professional licenses for architects, engineers, surveyors, and more via the AELSLAGID roster. Returns name, license number, profession, and expiration date.

Endpoint health
verified 2h ago
search_licenses
1/1 passing latest checkself-healing
Endpoints
1
Updated
21d ago

What is the Mn API?

The Minnesota AELSLAGID License Search API provides access to professional license records from the Minnesota Board of Architecture, Engineering, Land Surveying, Landscape Architecture, Geoscience, and Interior Design through a single search_licenses endpoint. Each response includes up to four fields per record — full name, license number, profession, and expiration date — covering all board-regulated disciplines including civil engineers, architects, geologists, and interior designers.

This call costs2 credits / call— charged only on success
Try it
Last name to search for. Partial matches are supported (e.g. 'John' matches Johnson, Johns, Johnsen).
api.parse.bot/scraper/295a73c2-3e63-4fe9-9235-cb4f3cbaa098/<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/295a73c2-3e63-4fe9-9235-cb4f3cbaa098/search_licenses?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 roster-aelslagid-state-mn-us-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: Minnesota License Search — find and inspect professional licenses."""
from parse_apis.roster_aelslagid_state_mn_us_api import MinnesotaLicenses, InputFormatInvalid

client = MinnesotaLicenses()

# Search for licenses by last name prefix; limit caps total items fetched.
for license in client.licenses.search(last_name="Johnson", limit=5):
    print(license.full_name, "|", license.profession, "|", license.expiration_date)

# Drill-down: grab the first result for a different query.
first_license = client.licenses.search(last_name="Anderson", limit=1).first()
if first_license is not None:
    print(f"License #{first_license.license_number}: {first_license.full_name}, {first_license.profession}")

# Handle invalid input gracefully.
try:
    client.licenses.search(last_name="", limit=1).first()
except InputFormatInvalid as e:
    print(f"Invalid input: {e.message}")

print("exercised: licenses.search")
All endpoints · 1 totalmissing one? ·

Search for professional licenses by last name. Returns all matching records including full name, license number, profession/discipline, and expiration date. Results include all professions (architects, engineers, surveyors, geologists, interior designers, landscape architects). A partial last name matches all names starting with that prefix.

Input
ParamTypeDescription
last_namerequiredstringLast name to search for. Partial matches are supported (e.g. 'John' matches Johnson, Johns, Johnsen).
Response
{
  "type": "object",
  "fields": {
    "total": "integer count of matching records",
    "results": "array of license records, each containing full_name, license_number, profession, and expiration_date"
  },
  "sample": {
    "data": {
      "total": 265,
      "results": [
        {
          "full_name": "Smith, Aaron D.",
          "profession": "Professional Engineer [Structural I]",
          "license_number": "44131",
          "expiration_date": "06/30/2028"
        },
        {
          "full_name": "Smith II, Addison R",
          "profession": "Professional Engineer [Electrical]",
          "license_number": "23041",
          "expiration_date": "EXPIRED"
        }
      ]
    },
    "status": "success"
  }
}

About the Mn API

What the API Returns

The search_licenses endpoint queries the Minnesota AELSLAGID public license roster by last name and returns a total count alongside a results array. Each record in the array contains full_name, license_number, profession, and expiration_date. The profession field distinguishes all disciplines regulated by the board: Architecture, Engineering (various specialties), Land Surveying, Landscape Architecture, Geoscience, and Interior Design.

Searching by Last Name

The single required parameter is last_name. The endpoint supports partial matches, so submitting John will return records for Johnson, Johns, Johnsen, and any other last name beginning with that string. This makes it useful for fuzzy lookups when the exact spelling is uncertain. There is no first-name filter; narrowing results must be done client-side against the returned full_name field.

License Verification Use

The expiration_date field in each record indicates current licensure status — comparing it against today's date tells you whether a credential is active. The license_number is the board-assigned identifier and can be used to cross-reference credentials in legal, contracting, or compliance workflows. All professions in the AELSLAGID board's jurisdiction appear in the same response, so a single query may return records across multiple disciplines for common last names.

Reliability & maintenanceVerified

The Mn API is a managed, monitored endpoint for roster.aelslagid.state.mn.us — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when roster.aelslagid.state.mn.us 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 roster.aelslagid.state.mn.us 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
2h ago
Latest check
1/1 endpoint 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
  • Verify active licensure status of a Minnesota engineer or architect before awarding a contract, using the expiration_date field
  • Build a credential-checking tool for construction procurement that flags expired professional licenses
  • Aggregate license data for all professionals sharing a last name to identify potential candidates in a hiring pipeline
  • Confirm a surveyor or geologist holds a valid Minnesota board license during due diligence on a land transaction
  • Power a compliance dashboard that monitors license expiration dates across a firm's registered professionals
  • Cross-reference license numbers submitted on permit applications against the state board roster
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does the Minnesota AELSLAGID board provide an official developer API?+
No. The board publishes a public license search at roster.aelslagid.state.mn.us but does not offer a documented developer API or bulk data export endpoint.
What does search_licenses return, and how do I distinguish between professions in the results?+
The endpoint returns a total integer and a results array. Each element includes full_name, license_number, profession, and expiration_date. The profession field carries the board discipline text (e.g., 'Civil Engineer', 'Architect', 'Geologist'), so you can filter client-side to isolate records for a specific discipline.
Can I search by first name, license number, or city?+
The API currently supports search by last_name only. First name, license number, city, and company name filters are not exposed. You can fork this API on Parse and revise it to add those additional search parameters if the source supports them.
Does the API return license status (active/inactive) explicitly?+
There is no explicit status flag in the response. Active vs. expired status must be inferred by comparing expiration_date against the current date. Records for expired licenses are included in results alongside active ones.
Does the API cover professional licenses from other U.S. states?+
No. Coverage is limited to licenses issued by the Minnesota AELSLAGID board. Professionals licensed in other states are not included. You can fork this API on Parse and revise it to point at equivalent license roster sources for other states.
Page content last updated . Spec covers 1 endpoint from roster.aelslagid.state.mn.us.
Related APIs in Government PublicSee all →
pha.hlb.state.mn.us API
Search and retrieve current license and registration information for Minnesota pharmacy professionals including pharmacists, pharmacy technicians, interns, and preceptors, as well as facility licenses regulated by the Minnesota Board of Pharmacy. Verify credentials and check professional standing for anyone in the pharmacy field operating in Minnesota.
myfloridalicense.com API
Search and verify Florida veterinary licenses issued by the Department of Business & Professional Regulation, retrieving detailed practitioner information, license status, and credentials. Look up veterinarians by name or license number to confirm their professional standing and qualifications.
www2.dre.ca.gov API
Search and look up California real estate agent licenses to instantly verify license status, expiration dates, broker information, and disciplinary history. Get comprehensive details including agent names, mailing addresses, license types, and issue dates for any California DRE licensee.
nursys.com API
Search nurse licensure records across multiple state boards and verify nursing credentials in real-time through Nursys QuickConfirm. Get detailed information about participating jurisdictions and their specific licensure requirements.
medicalcouncil.org.nz API
Search for registered doctors in New Zealand by name, location, specialty, and professional status, then access their detailed profiles including qualifications and scope of practice. Use this to verify practitioner credentials and find healthcare professionals that match your needs.
registers.maryland.gov API
Search Maryland estate records and retrieve detailed case information including Personal Representative and Attorney contacts. Access newly filed estates by county and date range, look up claims, and retrieve docket history for probate research and due-diligence workflows.
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.
sra.org.uk API
Search for UK solicitors by name and retrieve their detailed registration information from the SRA register, including their SRA number and professional credentials. Browse through the complete solicitor directory to verify qualifications and find regulated legal professionals in the United Kingdom.
Minnesota AELSLAGID License Search API · Parse