Municipal Planning & Development Signals avatar

Municipal Planning & Development Signals

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Municipal Planning & Development Signals

Municipal Planning & Development Signals

Source-linked Austin site-plan signals for data centers, solar, battery storage, multifamily, and warehouses.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

BRADLEY B

BRADLEY B

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

14 days ago

Last modified

Share

Turn Austin site-plan records into source-linked commercial development signals for data centers, solar projects, battery storage, multifamily projects, and warehouses.

The Actor reads the official City of Austin Site Plan Cases open dataset, applies deterministic evidence rules to source-authored fields, and writes normalized records ready for scheduled monitoring, CRM enrichment, research, webhooks, and AI agents.

Why use this Actor?

Raw municipal records are difficult to monitor repeatedly. This Actor provides:

  • stable source IDs and official record links;
  • deterministic project-type matches with the exact matched terms;
  • data-minimized source retrieval that never requests applicant/owner names, addresses, phone numbers, or case-manager fields;
  • parcel, address, status, area, unit, and building-size fields where the source provides them;
  • provenance, observation timestamps, evidence text, and completeness status;
  • updatedSince support for filtering by the dataset refresh timestamp;
  • honest partial-run summaries instead of silently dropping upstream failures.

Source and permitted use

The MVP uses the City of Austin Development Services Site Plan Cases dataset (mavg-96ck):

The dataset metadata identifies it as official and public domain. The City's terms say portal data is offered free and without restriction unless otherwise noted, request attribution, prohibit attempts to re-identify individuals, and disclaim accuracy, completeness, quality, and timeliness warranties.

This Actor attributes every result to the City of Austin Development Services and deliberately does not request or emit source applicant/owner names, phone numbers, personal addresses, or case-manager names. It does not infer legal approval, investment value, developer identity, or project viability.

Input

{
"jurisdiction": "austin-tx",
"projectTypes": ["data-center", "solar", "battery-storage", "multifamily", "warehouse"],
"keywords": ["semiconductor", "industrial campus"],
"updatedSince": "2026-07-01T00:00:00Z",
"maxResults": 100,
"requestDelayMillis": 1000
}

Input fields

  • jurisdiction: currently austin-tx only.
  • projectTypes: one or more supported deterministic categories.
  • keywords: optional phrases matched locally against official project text. They are never interpolated into the upstream query.
  • updatedSince: optional RFC 3339 timestamp applied to update_date, which the source defines as the date the dataset was updated. It is a dataset-refresh filter, not a record-level change timestamp.
  • maxResults: global output cap, 1–1,000.
  • requestDelayMillis: 1,000–10,000 ms between API pages.

Output example

{
"signalId": "austin-site-plan:12529218",
"jurisdiction": "Austin, Texas",
"recordType": "site-plan-case",
"projectName": "Example Battery Storage Campus",
"projectTypes": ["battery-storage"],
"matchedTerms": ["battery energy storage", "battery storage"],
"status": "In Review",
"address": "9224 BLUFF SPRINGS RD, AUSTIN, TX 78747",
"sourceDatasetId": "mavg-96ck",
"sourceRecordId": "12529218",
"sourceRecordUrl": "https://abc.austintexas.gov/web/permit/public-search-other?...",
"attribution": "City of Austin Development Services via the City of Austin Open Data Portal",
"observedAt": "2026-08-12T00:00:00.000Z",
"completenessStatus": "complete",
"evidence": "Example Battery Storage Campus — A 250 MW battery energy storage system..."
}

Scheduled monitoring

Run the Actor on a schedule and deduplicate downstream using signalId plus source fields. updatedSince filters the source dataset refresh timestamp; because many or all rows can receive the same refresh time, it does not identify records that substantively changed. The Actor does not claim to reconstruct a field-level historical diff without a prior snapshot.

Example API call:

curl -X POST "https://api.apify.com/v2/acts/ACTOR_ID/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"updatedSince":"2026-08-01T00:00:00Z","projectTypes":["data-center","battery-storage"],"maxResults":100}'

Never embed an Apify token in source control or public automation examples.

Cost controls

The Actor uses the official JSON API rather than browser automation or proxies. Control cost with:

  • updatedSince for dataset-refresh windows;
  • maxResults for a hard global result cap;
  • deterministic local matching without paid AI APIs;
  • Apify SDK pay-per-event budget enforcement before default-dataset items are published;
  • one-second request spacing and 100 source rows per page.

Limitations

  • Coverage is currently limited to Austin site-plan cases.
  • Source data can be delayed, corrected, incomplete, or historically rewritten.
  • Runs stop after 10,000 source rows as a safety bound; the run summary explicitly reports partial, truncated, and sourcePageLimitReached when that bound is reached. Use updatedSince for bounded incremental monitoring.
  • Categories are deterministic keyword evidence, not legal or professional conclusions.
  • A record may match multiple categories.
  • updatedSince filters dataset refresh time and is not proof that an individual record changed.
  • Records with no matching category or user keyword are omitted.
  • No personal contact information is emitted.
  • Output is research infrastructure, not legal, planning, investment, procurement, or real-estate advice.

Development

npm ci
npm run check
npm run build
apify validate-schema
apify run --purge

Local Actor input belongs at storage/key_value_stores/default/INPUT.json. Local storage is not synchronized to the Apify Cloud.