QuickMapTools

Download WFS to GeoJSON, Shapefile, or KML

Paste any public OGC WFS 2.0 endpoint, pick a feature type, and download the result. Runs entirely in your browser — files never leave your device.

STEP 1

Paste the service URL

Try:

OGC WFS (Web Feature Service) is the long-established XML/HTTP standard for serving vector features, supported by GeoServer, MapServer, and QGIS Server. This tool parses the GetCapabilities document, reads each feature type's XSD schema, and fetches features via GetFeature with CQL_FILTER and bounding-box filters — as long as the server supports GeoJSON output.

→ Full guide: Web Service Tools

What is a WFS?

The Web Feature Service is an OGC standard for serving vector geospatial data over HTTP. A client discovers what is published by calling GetCapabilities, learns each feature type's schema via DescribeFeatureType, and fetches features with GetFeature. Unlike a rendered WMS map, WFS gives you the underlying geometry and attributes — which is what you need when you want to download, analyse, or reproject the data.

Typical URLs look like https://server/geoserver/wfs or https://server/cgi-bin/mapserv?map=/some/mapfile. Paste the base endpoint — the tool appends the service=WFS&version=2.0.0&request=… parameters itself.

How it works

  1. Probe. The tool requests GetCapabilities and parses the XML response for the list of feature types and their bounding boxes.
  2. Fetch schemas. For each feature type the tool calls DescribeFeatureType and reads the XSD response to learn the field names and types.
  3. Filter by attribute. Dropdown-built filters are translated into a CQL_FILTER query parameter — a compact text-filter syntax every major WFS stack supports.
  4. Filter by area. Draw a bounding box on the map; the tool adds a bbox=lon,lat,lon,lat,EPSG:4326 parameter so the server only returns features inside the box.
  5. Preview. Fetch the first 10 matching features with count=10 to sanity-check your query.
  6. Download. The tool pages through the service using count + startIndex, concatenates the pages, and converts to your chosen output format in the browser.

GeoJSON output requirement

The download pipeline fetches pages as outputFormat=application/json. Servers that only emit GML 3.x are rejected at probe time — parsing raw GML reliably in the browser is out of scope for this tool. GeoServer, MapServer, and QGIS Server all ship with JSON output enabled. If yours doesn't, ask the administrator whether they can enable it.

About CORS

Browsers require the server to explicitly allow cross-origin requests. Many internal WFS deployments don't. If you get a "Server blocks browser access (CORS)" message, it's a server-side setting — the admin needs to add Access-Control-Allow-Origin headers. On GeoServer this is configured through a CORS filter in web.xml; on MapServer via the web server (Apache/nginx) in front of it.

Frequently asked questions

What is a WFS (Web Feature Service)?

A WFS is the Open Geospatial Consortium (OGC) standard protocol for serving vector GIS data — points, lines, polygons and their attributes — over HTTP. A client calls a small set of XML/HTTP operations (GetCapabilities, DescribeFeatureType, GetFeature) to discover what is published, learn each type's schema, and fetch the features. WFS is the counterpart of WMS, which serves rendered map images rather than the underlying vectors.

What URL do I paste?

The base endpoint of the WFS. On GeoServer that's typically https://server/geoserver/wfs or https://server/geoserver/<workspace>/wfs. On other implementations it may be .../ows or an app-specific path. The tool appends its own service/version/request parameters, so any query string you paste is stripped before probing.

Which WFS versions are supported?

The tool targets WFS 2.0.0, which has been the standard since 2010 and is supported by GeoServer, MapServer, QGIS Server, and every modern publishing platform. The server also needs to advertise outputFormat=application/json — the tool does not parse GML 3.x client-side.

Why does the tool refuse a server that says "no GeoJSON output"?

The download pipeline is built around GeoJSON — we fetch pages as application/json and convert them to other formats (Shapefile, KML, GeoPackage, etc.) in the browser with GDAL-WebAssembly. Parsing raw GML 3 reliably in-browser is a large undertaking we have not taken on. If your server only emits GML, ask its administrator whether they can enable the JSON output format (GeoServer has it built in).

How do attribute filters work on WFS?

The tool builds a CQL_FILTER — a common text-filter syntax that GeoServer, MapServer, and most production WFS stacks accept as a query parameter. Values are typed and quoted according to the field type (integer, number, date, string) so you cannot inject invalid filter syntax. If a filter is rejected by the server, you will see its error message when you click Preview or Fetch.

Why does the tool say "Server blocks browser access (CORS)"?

Browser security requires the server to include CORS headers allowing requests from other origins. Many internal WFS deployments do not. This is a setting only the server admin can change — contact the service owner and ask them to enable CORS for https://www.quickmaptools.com.

Do my data or my queries go through your servers?

No. Your browser queries the WFS directly. QuickMapTools only sees the URL you paste. Results are decoded and converted in your browser with GDAL-WebAssembly.