Discover/Wyo API
live

Wyo APIwyobiz.wyo.gov ↗

Search Wyoming Secretary of State business entities by name or filing ID. Returns entity status, standing, registered agent, parties, and filing details.

Endpoint health
monitored
get_entity_details
search_entities
Checks pendingself-healing
Endpoints
2
Updated
2h ago

What is the Wyo API?

The Wyoming Business Search API provides 2 endpoints for querying the Wyoming Secretary of State's public business-entity database. Use search_entities to retrieve paginated summaries of matching entities—including filing ID, entity type, status, and tax standing—or call get_entity_details with a detail_key to pull the full public record for a single entity, including registered agent, formation jurisdiction, parties, and sub-status.

This call costs2 credits / call— charged only on success
Try it
Legal business name (or its beginning / a fragment, depending on match) to search for, up to 50 characters. Required unless filing_id is supplied.
1-based results page (20 rows per page).
How the name is matched: from the beginning of the name, or anywhere within it. Ignored for filing_id lookups.
Exact Secretary of State filing ID in the form YYYY-NNNNNNNNN (one shape: 2008-000554255). When supplied, name is ignored and at most one entity is returned.
→ api.parse.bot/scraper/a745d639-4d4f-4521-baa3-d40b6526b8dd/<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/a745d639-4d4f-4521-baa3-d40b6526b8dd/search_entities?name=Wyoming+Coffee' \
  -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 wyobiz-wyo-gov-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: Wyoming Secretary of State business entity search — bounded, re-runnable."""
from parse_apis.wyobiz_wyo_gov_api import WyoBiz, MatchMode, EntityNotFound

client = WyoBiz()

# Search for entities whose name starts with a term; cap total items.
for summary in client.entity_summaries.search(name="Wyoming Coffee", match=MatchMode.STARTS_WITH, limit=5):
    print(summary.entity_name, summary.filing_id, summary.status)

# Drill into the first result's full detail record.
hit = client.entity_summaries.search(name="Wyoming Coffee", limit=1).first()
if hit is not None:
    entity = hit.details()
    print(entity.entity_name, entity.entity_type, entity.formation_date)
    print("Standing — tax:", entity.standing_tax, "RA:", entity.standing_ra)

    if entity.registered_agent is not None:
        print("Registered agent:", entity.registered_agent.name)

    if entity.latest_annual_report is not None:
        print("Latest annual report:", entity.latest_annual_report.year, entity.latest_annual_report.document_number)

    # Walk filing history on the same entity.
    for filing in entity.filing_history:
        label = f" (doc {filing.document_number})" if filing.document_number else ""
        print(f"  {filing.date} {filing.filing_type}{label}")

    # Point-lookup by detail_key obtained from the search hit.
    try:
        refreshed = client.entities.get(detail_key=hit.detail_key)
        print("Refreshed:", refreshed.entity_name, refreshed.status)
    except EntityNotFound:
        print("Entity no longer available")

print("exercised: entity_summaries.search / EntitySummary.details / entities.get / filing_history")
All endpoints · 2 totalmissing one? ·

Searches the public Wyoming business-entity register by legal name (starts-with or contains) or by exact filing ID and returns one page of 20 summary rows, each carrying the exact entity name, filing ID, entity type code, current status, tax and registered-agent standing, initial filing date, and the detail_key/detail_url needed by get_entity_details. Either name or filing_id must be supplied; when filing_id is given the name is ignored. Results are paginated 20 per page as the site pages them; page defaults to 1 and has_more/total_pages describe the remaining pages (each page costs two or three round trips because the search is replayed before the page is selected). A name with no matches returns an empty results array with total_results 0. total_results is the site's own result count. retrieved_at is the UTC time of the query.

Input
ParamTypeDescription
namestringLegal business name (or its beginning / a fragment, depending on match) to search for, up to 50 characters. Required unless filing_id is supplied.
pageinteger1-based results page (20 rows per page).
matchstringHow the name is matched: from the beginning of the name, or anywhere within it. Ignored for filing_id lookups.
filing_idstringExact Secretary of State filing ID in the form YYYY-NNNNNNNNN (one shape: 2008-000554255). When supplied, name is ignored and at most one entity is returned.
Response
{
  "type": "object",
  "fields": {
    "page": "integer, the page returned",
    "query": "object echoing the name, filing_id, match and page that were applied",
    "results": "array of entity summaries: entity_name, filing_id, entity_type_code (site abbreviation such as LLC or CORP), status, standing_tax, standing_ra, filed_on (YYYY-MM-DD), detail_key (opaque key for get_entity_details), detail_url (public detail page)",
    "has_more": "boolean, true when a later page exists",
    "page_size": "integer, rows per page (20)",
    "total_pages": "integer, number of pages available (0 when no matches)",
    "retrieved_at": "UTC timestamp (ISO 8601) when the search was executed",
    "total_results": "integer, the site's total match count for the query"
  },
  "sample": {
    "data": {
      "page": 1,
      "query": {
        "name": "Wyoming Coffee",
        "page": 1,
        "match": "starts_with",
        "filing_id": null
      },
      "results": [
        {
          "status": "Inactive - Administratively Dissolved (Tax)",
          "filed_on": "2008-04-30",
          "filing_id": "2008-000554255",
          "detail_key": "008217078140236170015037249099126133139003087097",
          "detail_url": "https://wyobiz.wyo.gov/Business/FilingDetails.aspx?eFNum=008217078140236170015037249099126133139003087097",
          "entity_name": "Wyoming Coffee Company, LLC",
          "standing_ra": "Good",
          "standing_tax": "Delinquent",
          "entity_type_code": "LLC"
        }
      ],
      "has_more": false,
      "page_size": 20,
      "total_pages": 1,
      "retrieved_at": "2026-09-26T08:39:46Z",
      "total_results": 4
    },
    "status": "success"
  }
}

About the Wyo API

Search Wyoming Business Entities

The search_entities endpoint accepts a legal business name (name) or an exact Secretary of State filing ID (filing_id, format YYYY-NNNNNNNNN). Name searches support two match modes via the match parameter: starts-with or contains. Results come back 20 per page; the page parameter (1-based) navigates across multiple pages. Each result row includes entity_name, filing_id, entity_type_code (e.g. LLC, CORP), status, standing_tax, standing_ra (registered-agent standing), and an opaque detail_key needed for the detail endpoint. The response envelope also returns total_results, total_pages, and a has_more flag so callers can implement full pagination without an extra round-trip.

Entity Detail Records

Passing a detail_key emitted by search_entities to get_entity_details returns the complete public record for one entity. Fields include entity_name, entity_type (full label such as Limited Liability Company - Domestic), filing_id, status, sub_status (Current or Archived), formed_in (formation jurisdiction), and standing_ra. The parties array lists every recorded party—name, role, organization, and address—covering registered agents, officers, and other principals on file. A detail_url pointing to the canonical public page is also returned.

Coverage and Freshness

The API covers all entity types visible in the Wyoming Secretary of State's public FilingSearch database, including domestic and foreign LLCs, corporations, limited partnerships, and similar structures. The retrieved_at timestamp in every search_entities response reflects when the data was fetched, so callers can track freshness. Filing history and annual-report data referenced in the plan description are surfaced through the detail record; no separate history endpoint exists in the current two-endpoint design.

Reliability & maintenance

The Wyo API is a managed, monitored endpoint for wyobiz.wyo.gov — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when wyobiz.wyo.gov 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 wyobiz.wyo.gov 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.

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 whether a Wyoming LLC or corporation is in good standing before entering a business relationship, using the standing_tax and standing_ra fields.
  • Look up the registered agent name and address for a Wyoming entity via the parties array in get_entity_details.
  • Resolve a company's exact legal name and entity type from a known Secretary of State filing ID using the filing_id parameter.
  • Build a bulk compliance checker that pages through search_entities results with has_more and flags entities whose status is not active.
  • Identify the formation jurisdiction of a foreign entity using the formed_in field returned by get_entity_details.
  • Enumerate all entities matching a brand name fragment using the contains match mode to surface potential trademark conflicts or related companies.
  • Populate a B2B prospecting database with Wyoming entity names, types, and statuses from the public register.
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 Wyoming Secretary of State offer an official developer API for wyobiz.wyo.gov?+
No official public developer API is documented by the Wyoming Secretary of State for the FilingSearch database. The wyobiz.wyo.gov API on Parse gives you structured programmatic access to that public data.
What does `search_entities` return, and how do I page through results?+
Each call returns up to 20 entity summaries including entity_name, filing_id, entity_type_code, status, standing_tax, and standing_ra. The response includes total_results, total_pages, and a has_more boolean. Increment the page parameter (1-based) to retrieve subsequent pages.
Does the API return filing history documents or annual report PDFs?+
Not currently. The API returns the entity detail record (status, parties, standings, formation info) and search summaries, but does not expose individual filing documents or downloadable annual report PDFs. You can fork the API on Parse and revise it to add an endpoint that retrieves filing history line items for a given entity.
Can I search by registered agent name or by officer/principal name?+
Not currently. Search is limited to legal entity name (via the name parameter with starts-with or contains matching) and exact filing ID (via filing_id). Registered agent and party names appear in get_entity_details results but cannot be used as search inputs. You can fork the API on Parse and revise it to add a party-name search endpoint if the source supports it.
What is the `detail_key` and where does it come from?+
The detail_key is an opaque numeric identifier returned in every record inside search_entities results (results[*].detail_key). It must be passed as the sole required input to get_entity_details to retrieve the full public record for that entity. It is not the same as the filing_id.
Page content last updated . Spec covers 2 endpoints from wyobiz.wyo.gov.
Related APIs in Government PublicSee all →