CivicDataForge

Developer path

One address in. One source-bound decision out.

Call the live STR Permit Registry Actor directly from any HTTP client. Address evidence mode evaluates the complete selected publisher query and returns one decision per submitted address.

Request

Use your own Apify API token in the Authorization header. The endpoint accepts one supported city and 1-25 addresses.

curl -X POST \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "outputMode": "address_evidence",
    "cities": ["orlando"],
    "addresses": [
      "100 Sample St, Sampleton, ZZ"
    ]
  }' \
  "https://api.apify.com/v2/actors/civicdataforge~str-permit-registry/run-sync-get-dataset-items"

Decision contract

Every row carries scope_completeness, observed_at, source_url, match detail, and a decision_receipt_hash.

Evidence boundary: NO_PUBLISHED_MATCH does not prove illegality, ineligibility, or absence from every government system. If the official source cannot be evaluated completely, the run fails instead of manufacturing a negative result.

Choose the commercial path

Use the live Actor for machine self-service. Choose the $4.99 Permit Audit for guided intake and a private, automatically prepared evidence bundle for up to 25 addresses in one supported jurisdiction. Choose $19.99/month for weekly checks, change history and email change alerts for up to 25 addresses across up to five cities. Ambiguous matches remain review candidates; neither option is a legal determination.

Open the live Actor

Receipt-bound evidence in your automation

Use the Evidence Gateway when your workflow needs a combined, source-bound evidence packet. Your existing HTTP client can use your own Apify credential, kept in its secret store. Review the Actor tariff and set an explicit run-cost ceiling before starting. Start once and retain the run ID; retries should read that run, not buy a replacement.

The Gateway's authoritative result is GATEWAY-PACKET in the run's default key-value store, not the STR dataset described above. Check the Gateway Actor identity, stored INPUT, and packet receipt bindings before accepting the result. Preserve its source dates, completeness and decision state.

With a CivicDataForge first-party key, use our MCP endpoint. Recover a pending call by repeating the original tools/call body and Idempotency-Key. The service reads the bound run and does not start another one. A lost start with no confirmed run ID requires reconciliation; UNRESOLVED is not delivery. First-party keys do not grant Apify account or storage access. See the agent catalog for supported tasks and routes.

Check our work

This moved here from the homepage, which now keeps to what hosts need.

Coverage

Free check in 18 cities. Permit Audit ($4.99) and $19.99/month monitoring in 54. Raw data feed on Apify in the same 54.

Free check (18): Albuquerque, Arlington, Asheville, Aspen, Bend, Coconino County, Denver, Houston, Huntington Beach, Louisville, Marin County, Nashville, New Orleans, Norfolk, Orlando, Sacramento, San Bernardino County, Seattle.

Also in the audit (36): Austin, Baldwin County, Bedford, Belton, Big Bear Lake, Boston, Breckenridge, Cambridge, Chattanooga, Chicago, Clear Creek County, Cody, Columbus, Cook County, Corpus Christi, Covington, Green Bay, Honolulu, Kansas City, Key West, Las Vegas, Little Rock, Long Lake Township, North Las Vegas, Osceola County, Philadelphia, Placer County, Polk County, Ruidoso, San Diego, San Juan County, Scottsdale, Shreveport, South Haven, Summit County, Washington.

Also in the raw data feed (2): Washington DC, Honolulu.

Result codes

CodeMeaningHomepage tag
EXACT_PUBLISHED_MATCHThe address is on the city's published list.Has one, or Expired from the status and expiry date
NOT_FOUND_IN_PUBLISHED_SOURCENo exact match in the city's published list.Needed
REVIEW_CANDIDATEA near match, left for you to review.(audit only)
INVALID_INPUTThe line could not be read as an address.(audit only)
LISTED_ACTIVE_AFTER_EXPIRYExpiry flag: listed active, but the published expiry date has passed.Expired
EXPIRED_NOT_ACTIVEExpiry flag: the expiry date has passed and the city lists it as not active.Expired

See real rows

Every row we deliver comes from a city's own published list. To see real rows, check an address on the homepage, see the live city board, or run the permit registry on Apify for one city and download the result as JSON, CSV or Excel. Each run also saves OUTPUT.csv and OUTPUT.xlsx; the Excel file has a tab explaining every column.

Raw records and API pricing