Skip to main content

Qarta API (Layers API)

Overview​

Qarta is Quarticle's geospatial intelligence platform, providing APIs for location-based analysis, portfolio reporting, and risk assessment. The Layers API gives developers programmatic access to powerful geospatial capabilities including geocoding, spatial analysis, risk reporting, and point enrichment.

Key Capabilities​

Qarta provides six core capability areas:

πŸ“ Location Services​

  • Geocoding - Convert addresses to geographic coordinates (latitude/longitude)
  • Reverse Geocoding - Convert coordinates to readable addresses
  • Place Autocomplete - Search suggestions for address queries

πŸ“Š Portfolio Analysis​

  • Points Selection - Retrieve point data within geographic shapes (polygons)
  • Buffer Selection - Retrieve data within circular buffer zones around a location
  • Entries Selection - Retrieve detailed entry/record data with spatial filtering
  • Accumulation Reports - Aggregate and summarize data by column across geographic areas

⚠️ Risk Reporting​

  • Point Risk - Generate detailed risk assessment PDFs/HTML for a specific location
  • Point-Buffer Risk - Generate risk reports with accumulated data in buffer zones

πŸ” Point Enrichment​

  • Single Point Enrichment - Enrich a single point with geospatial layer data
  • Batch Enrichment - Enrich multiple points in one request with layer information

πŸ—ΊοΈ Web Services (WMS/WFS)​

  • Web Map Service (WMS) - Stream map tiles, legends, and feature information
  • Web Feature Service (WFS) - Query geographic features using OGC standards
  • πŸ‘‰ GeoServer Web Services Guide

πŸ“‘ Live Events​

  • Live Event Enrichment - Process and enrich live event data with geofencing filters

API Base URL​

https://graph.quarticle.ro

Authentication​

All endpoints require API key authentication via the Authorization header:

Authorization: YOUR_API_KEY

See Authentication Guide for setup instructions.

API Versions​

Qarta supports two API versions:

VersionDescriptionFilter Model
V1Original API with simple filters{field, value}
V2Enhanced API with nested/recursive filtersRecursive filter trees

V2 introduces a more powerful filter model that supports nested conditions. See V1 vs V2 Guide for migration details.

Output Formats​

Different endpoints support various output formats:

  • JSON - Default response format (application/json)
  • CSV - Tabular data export via Accept: text/csv header (entries/points endpoints)
  • PDF - Risk reports in PDF format
  • HTML - Risk reports as HTML documents
  • PNG - Map images and legend graphics (WMS)
  • XML - WMS/WFS capabilities documents
  • GeoJSON - Geographic features (native format for shape inputs)

Core Concepts​

Geographic Shapes​

Qarta accepts geographic shapes as GeoJSON features:

{
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [[[lon, lat], [lon, lat], ...]]
},
"properties": {}
}

All coordinates must be in WGS84 (EPSG:4326) format: [longitude, latitude].

Buffers​

Buffer zones are circular areas around a point. Specify by:

{
"type": "Point",
"coordinates": [lon, lat],
"radiuses": [1000, 5000, 10000] // meters
}

Filters​

Filters narrow down results based on data attributes:

V1 Format:

[
{"field": "oe_id", "value": "someValue"},
{"field": "property_type", "value": "residential"}
]

V2 Format (nested):

[
{
"field": "oe_id",
"value": "someValue",
"filters": [
{"field": "property_type", "value": "residential"}
]
}
]

The source Parameter​

Most portfolio endpoints require a source parameter that identifies which data layer to query. A source represents a provisioned dataset in your account β€” for example, a specific insurance portfolio, property catalog, or risk dataset.

  • Each account may have one or more sources provisioned
  • The source value is a string identifier (e.g., "portfolio_01")
  • To discover available sources and their configuration, call the Provision endpoint:
curl -X GET "https://graph.quarticle.ro/graph/api/v1/reports/portfolio/provision" \
-H "Authorization: YOUR_API_KEY"

The response contains a provisioning object keyed by source name, with each source listing its available columns, filters, point configuration, and report capabilities:

{
"provisioning": {
"portfolio_01": {
"columns": [
{ "field": "insured_value", "type": "number" },
{ "field": "property_type", "type": "string" }
],
"filters": [
{ "field": "oe_id", "label": "Organization", "required": true, "values": ["org_1", "org_2"] }
],
"reports": {
"accumulation": { "enabled": true }
}
}
}
}

Use the source name as the source parameter in all subsequent portfolio, entries, and points API calls.

Use Cases​

Common Integration Patterns​

Risk Assessment

  1. Get risk factors for properties using point risk endpoint
  2. Generate detailed PDF reports for client presentations

Portfolio Analysis

  1. Define geographic areas of interest
  2. Query points or entries within those areas
  3. Accumulate key metrics (count, sum, average)
  4. Export results as CSV for reporting

Location Intelligence

  1. Accept user addresses via autocomplete
  2. Geocode to coordinates
  3. Enrich with environmental layer data
  4. Retrieve relevant insights

Data Enrichment

  1. Load batch of locations
  2. Enrich points with layer data
  3. Aggregate risk metrics
  4. Export as CSV

See Use Cases section for detailed examples of each pattern.

Error Handling​

All errors return a consistent JSON format:

{
"errorMessage": {
"message": "Description of what went wrong"
}
}

Common HTTP status codes:

  • 400 - Bad request (invalid parameters)
  • 401 - Unauthorized (missing/invalid API key)
  • 403 - Forbidden (shape parameter issues)
  • 500 - Server error (internal problem)

See Error Guide for detailed error information.

Support​

Next Steps​

  1. Get Started - Set up authentication and make your first call
  2. Explore Use Cases - See practical examples of common workflows
  3. Download Postman Collection - Test endpoints in Postman
  4. Review Postman Collection - Browse all 36 endpoints with detailed documentation