Skip to content
MapPull
MapPullby Zanevan
All guides

How to export an ArcGIS REST service (MapServer or FeatureServer) to a shapefile

Have a MapServer or FeatureServer address? Turning one of its layers into a usable shapefile, in the right place on the ground, takes more than it should.

What you're working with

An address ending in /MapServer or /FeatureServer is a service; a number after it (/MapServer/3) is one layer. Every server sets a limit on how many features it returns per request, and every layer has its own coordinate system.

What it takes by hand

Either desktop GIS software, or scripting. Either way:

  1. Query the layer in batches up to the server's limit, then page through until you have every feature.
  2. Handle the servers that time out, cap results silently, or refuse large requests.
  3. Convert the results to a shapefile with a conversion tool.
  4. Request the output in the layer's own spatial reference and write the matching projection file, or it lands in the wrong place.
  5. Check that field names, which shapefiles cap at 10 characters, still make sense.

With MapPull

Paste the service or layer address. MapPull lists the layers, shows the coordinate system, and exports a shapefile with its projection file in that same system, paging and all. The full field names are kept if you choose GeoJSON.

Try it on a real map: one layer, one download, free.Open MapPullBrowse public maps by state →