# Using published services in other applications

Connect QGIS, ArcGIS Online, Aphex, a web map or a script to a published Civillo service.

Once a layer is published you consume it from your project's service URL on pub.civillo.com (opens new window) rather than from Civillo itself. Each collection, service and imagery layer page in the portal has a HOW TO USE button in the top-right corner that opens step-by-step instructions for that specific layer, pre-filled with the correct endpoint. That button is the easiest way to learn how a service can be used in another application. The notes below explain what each option gives you so you know which one to use.

The HOW TO USE menu options.

TIP

The HOW TO USE helper is only shown on tablet-sized screens and larger.

# Getting to the right page

  1. Open your project's service URL, or click one of the quick links on the Publish GIS services administration page.
  2. Choose the service - OGC API - Features, ESRI Vector Tile Service, or Web Map Tile Service.
  3. Open the collection, service or imagery layer you want.
  4. Click HOW TO USE.

Which options appear depends on the service:

OGC API - Features ESRI Vector Tile Service WMTS
QGIS
ArcGIS Online
Aphex
Web code
Python
Convert to file

# QGIS

The QGIS (opens new window) option gives you a QGIS layer definition file (opens new window) (.qlr) to download. This is more useful than a bare URL: the file carries the connection details and the layer's styling, symbols, labelling and attribute definitions, so the layer arrives in QGIS looking close to how it looks in Civillo.

  1. In the HOW TO USE menu, click QGIS.
  2. Click Download QGIS Layer Definition (.qlr).
  3. In QGIS, go to Layer → Add Layer → Add Layer Definition File, select the downloaded file and click Open.

You can also drag the .qlr file onto the QGIS Layers or Browser panel.

The layer remains a live connection to the published service, so it picks up changes when the Civillo layer is revised.

# ArcGIS Online and ArcGIS Pro

The ArcGIS option gives you the service URL to copy, along with the steps for ArcGIS Online Map Viewer:

  1. In the HOW TO USE menu, click AGOL and copy the endpoint shown.
  2. In ArcGIS Online Map Viewer, under Layers, click Add, then Add Layer from URL.
  3. Paste the endpoint and click Next.
  4. Rename the layer from its service identifier (for example L28) to something meaningful.
  5. Click Add to map.

For a styled basemap layer use the ESRI Vector Tile Service. Remember it is tiles-only, so you can display and style it but not query or edit it - if you need attributes in ArcGIS, use the OGC API - Features endpoint instead.

# Aphex

Aphex (opens new window) is planning software for construction delivery teams and can consume the imagery and tile services directly.

  1. In the HOW TO USE menu, click APHEX and copy the endpoint shown.
  2. In Aphex, open your account and select your project, then go to Settings → Locations and click Create Location.
  3. Paste the endpoint as the Layer URL and adjust the Layer Name.
  4. To add a single layer rather than all of them, choose Custom Selections and select the layer.
  5. Click Confirm.

# Web code

WEB CODE shows a ready-made HTML and JavaScript snippet that draws the layer in a MapLibre GL JS (opens new window) map, with a copy button. Paste it into your own page as a starting point - it already references the correct endpoint and style for the layer you opened it from.

# Python

PYTHON shows a Python snippet, again with a copy button, that requests the collection's features and writes them out. Use it as a template for scripted extracts or scheduled jobs. Nothing is downloaded for you here; you run the code yourself.

# Convert to a file

CONVERT TO FILE produces a downloadable dataset from a published vector layer, styled and in the projection you nominate. Use it when someone needs a deliverable rather than a live connection.

CONVERT TO FILE options.

This is the part of publishing that closes the loop on deliverable datasets. Preparing a dataset for a client, a principal contractor or an asset owner usually means three things: reproject it to the coordinate system named in the specification, drop the attributes the recipient should not receive, and rename the rest to the field names they have asked for. Those steps are normally done in a separate data-transformation tool sitting between Civillo and the recipient. Convert to file does them inside Civillo, so the deliverable can be produced - and reproduced when the data changes - from the browser by the person who owns the data.

# Choose a format

Format Delivered as How styling arrives
GeoPackage (default) A single .gpkg file Carried inside the file; QGIS applies it on load
Esri File Geodatabase A .zip containing the .gdb and a companion .qlr Open the .qlr in QGIS to load every layer already styled

Both formats are generated from the same symbology as the rest of the published service, so a layer looks the same however you take it.

# GeoPackage styling

GeoPackage carries styling natively. The export writes the layer's symbology into the file itself. Add the .gpkg to QGIS the normal way - there is nothing to import alongside it - and each layer draws with its Civillo colors, per-sublayer categories, labels and field aliases already applied.

# File Geodatabase styling

A File Geodatabase cannot hold QGIS styling inside it, so the styling ships beside it. The .zip contains the .gdb plus a QGIS layer definition file (.qlr) at the top level:

  1. Extract the .zip, keeping the .qlr next to the .gdb. The .qlr refers to the .gdb by a relative path, so the pair works wherever you extract them, but they must stay together.
  2. In QGIS, go to Layer → Add Layer → Add Layer Definition File and open the .qlr, or drag it onto the Layers panel.
  3. Every exported geometry layer loads from the .gdb, already styled and labelled.

If you only want the raw data, add the .gdb to QGIS or ArcGIS directly and ignore the .qlr.

# Choose and rename attributes

The Attributes section is where a deliverable is shaped. Attributes are grouped by geometry type, and for each one you can:

  • Include or exclude it. Untick an attribute and it is not written to the output file at all. Select all and Clear act on the whole list or on one geometry group, and the filter box narrows a long attribute list by name.
  • Rename it. Type the output name in the Rename to column. The original name is shown as the placeholder, so anything you do not rename keeps its Civillo name. Renames flow through to the styling as well, so field aliases in the exported file match the columns you have named.

Whole geometry types can be excluded too: untick a geometry group and none of its features or attributes are exported.

A small number of columns are required and cannot be excluded or renamed - the feature identifier and the columns that carry Civillo's styling. They are marked with a padlock. Everything else is yours to shape.

# Attribute presets

Renames are remembered per layer. The next time you open CONVERT TO FILE for the same layer, the rename fields are pre-filled with what you used last time, so a recurring deliverable does not have to be re-specified each issue. If a remembered rename refers to an attribute the layer no longer publishes, a note says so and the export continues without it.

Which attributes are included is not remembered - that choice is made fresh each time, so a preset can never quietly change what a deliverable contains.

# Notes and limits

  • A file export is a point-in-time copy. It will not update when the Civillo layer is revised - for that, connect to the service instead, or run the export again.
  • Exports are generated on demand and are subject to a size limit (500 MB by default) and a time limit (five minutes per geometry type). A very large layer may need to be exported with fewer attributes, or one geometry type at a time.

# Reading the features directly

If you are writing your own integration and do not want a helper, request the features straight from the OGC API - Features endpoint:

{service URL}/oapif/collections/{collectionId}/items

The response is GeoJSON in EPSG:4326. See Available services for the supported query parameters, paging behaviour and limits, and /oapif/api for the service's OpenAPI description.

Last Updated: 30/08/2026