Automated parcel integration and publishing

Two county data sources, recurring spatial checks, and a shared municipal GIS publishing workflow.

What I did

I built scheduled workflows that integrate county parcel geometry and appraisal attributes, select municipal records, update enterprise geodatabases, and publish to ArcGIS Online.

Result: Saved execution logs document recurring hosted-layer updates. An August 2, 2026 run selected 30,686 parcels spatially and added 10 explicitly selected records from a 382,240-feature county source.

Tools

  • Python
  • ArcPy
  • ArcGIS REST
  • SQL Server
  • ArcGIS Online

Counts describe one archived run. The retained source mixes implementation versions, so it is presented as historical workflow evidence rather than a verified runnable release.

Different inputs, consistent GIS delivery

The integration challenge was handling the two delivery formats while producing municipal layers with consistent fields and selection rules. Each source has its own preparation steps before loading the shared GIS destinations.

Two county inputs pass through source-specific preparation and checks before enterprise and hosted GIS updates
A simplified architecture of the historical workflow. The diagram contains no parcel records or internal connection details. Scroll horizontally to explore the diagram.
Source-specific preparation
SourceInputPreparation
Denton CountyArcGIS REST feature serviceExtract geometry and attributes; select parcel centroids within the municipal boundary and include explicit additional records.
Dallas CountyShapefile and appraisal CSV archivesCombine appraisal tables, join them to parcel geometry, and select the municipal subset.

Checks before publication

The retained publisher logs record successful update calls across July and August 2026. They establish execution history, not an independent check of every hosted feature. The historical database load uses replacement steps without a demonstrated transactional rollback.

  • Parcel-count bounds block downstream processing when the selected population is unexpected.
  • Comparison with the previous parcel population helps identify changes that need review.
  • Run logs record extraction, selection, and publication stages so a failed update can be investigated.
Technical details

City of Lewisville · GIS automation

A city spanning two counties needs a consistent parcel layer even when its appraisal districts deliver data in different formats.

  • Read one county source through ArcGIS REST and download the other as shapefile and CSV archives.
  • Join appraisal attributes to geometry, select municipal parcels, and derive fields used in City GIS applications.
  • Check record counts and changes in the selected parcel population before continuing the refresh.
  • Load enterprise geodatabase targets and update the hosted layer through scheduled Python jobs.

Image viewer

100%