Adaptive batching
Large REST requests are downloaded in batches and recursively subdivided when a provider times out or rejects the request.
GIS DEVELOPER CASE STUDY · ARCGIS PRO · PYTHON · ARCPY · REST
A production-oriented ArcGIS Pro Python toolbox that turns a point, line, or polygon study area into a project-ready geodatabase by automating public GIS data acquisition, clipping, projection, provenance, QA, reporting, and delivery.

THE PROBLEM
Environmental and infrastructure projects routinely require analysts to visit multiple agency portals, identify the right dataset, download it, clip it to a study area, project it, organize outputs, and document where it came from. The work is necessary, but much of it is repetitive and inconsistent.
THE SOLUTION
The toolbox accepts a point, polyline, or polygon study area, applies an optional buffer, communicates directly with public ArcGIS REST and ImageServer services, and delivers standardized GIS outputs inside a project geodatabase.
Study area and optional buffer.
Validate, dissolve, buffer, and project as required.
Query authoritative REST and ImageServer sources.
Batch, clip, mosaic, project, and standardize.
Geodatabase, provenance log, QA report, and manifest.
ENGINEERING CHALLENGE
8000 × 8000A large B2H-style 20-mile study area exceeded the USGS 3DEP ImageServer export-size limit. A normal raster request could not complete.
THE FIX
I added an automatic raster fallback that detects service-size errors, recursively subdivides the AOI, downloads manageable raster tiles, mosaics the results, and projects the final raster to the study-area coordinate system. In testing, the failed 3DEP request automatically became four successful tiles and a single final raster.
GIS DEVELOPER FEATURES
Large REST requests are downloaded in batches and recursively subdivided when a provider times out or rejects the request.
NHD Flowline acquisition uses the actual study-area geometry and optimized 125-feature batches to reduce unnecessary candidate features and timeout risk.
ImageServer size-limit failures trigger AOI subdivision, tile acquisition, mosaicking, and reprojection without manual intervention.
A temporary failure from one public provider is logged without terminating acquisition from the remaining selected sources.
Each run records source agency, service URL, year, feature or raster properties, CRS, runtime, acquisition status, and QA status.
The workflow produces a geodatabase log, an HTML QA report, and a CSV acquisition manifest alongside the GIS deliverables.
RESULT
The project demonstrates GIS development beyond geoprocessing: API integration, adaptive error handling, vector and raster processing, provenance, QA, packaging, documentation, and versioned software delivery.