You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: spp_api_v2_gis/readme/DESCRIPTION.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,7 +19,7 @@ Follows thin client architecture where QGIS displays data and OpenSPP performs a
19
19
20
20
## API Endpoints
21
21
22
-
### OGC API - Features (primary interface)
22
+
**OGC API - Features (primary interface)**
23
23
24
24
| Endpoint | Method | Description |
25
25
|----------|--------|-------------|
@@ -31,7 +31,7 @@ Follows thin client architecture where QGIS displays data and OpenSPP performs a
31
31
|`/gis/ogc/collections/{id}/items/{fid}`| GET | Single feature |
32
32
|`/gis/ogc/collections/{id}/qml`| GET | QGIS style file (extension) |
33
33
34
-
### Additional endpoints
34
+
**Additional endpoints**
35
35
36
36
| Endpoint | Method | Description |
37
37
|----------|--------|-------------|
@@ -42,14 +42,14 @@ Follows thin client architecture where QGIS displays data and OpenSPP performs a
42
42
43
43
## Scopes and Data Privacy
44
44
45
-
### OAuth Scopes
45
+
**OAuth Scopes**
46
46
47
47
| Scope | Access | Description |
48
48
|-------|--------|-------------|
49
49
|`gis:read`| Read-only | View collections, layers, statistics, export data |
50
50
|`gis:geofence`| Read + Write | Create and archive geofences (also requires `gis:read` for listing) |
51
51
52
-
### What data is exposed
52
+
**What data is exposed**
53
53
54
54
**Aggregated statistics only.** No endpoint in this module returns individual registrant records.
55
55
@@ -58,13 +58,13 @@ Follows thin client architecture where QGIS displays data and OpenSPP performs a
58
58
-**Exports** (GeoPackage/GeoJSON): Contain the same area-level aggregated layer data, not registrant-level records.
59
59
-**Geofences**: Store only geometry and metadata — no registrant data.
60
60
61
-
### Privacy controls
61
+
**Privacy controls**
62
62
63
63
-**K-anonymity suppression**: Statistics backed by CEL variables can apply k-anonymity thresholds. When a cell count falls below the configured minimum, the value is replaced with a suppression marker and flagged as `"suppressed": true` in the response. This prevents re-identification in small populations.
64
64
-**CEL variable configuration**: Administrators control which statistics are published and their suppression thresholds via `spp.statistic` records.
65
65
-**Scope separation**: `gis:read` and `gis:geofence` are separate scopes, allowing clients to be granted read-only access without write capability.
66
66
67
-
### Design rationale
67
+
**Design rationale**
68
68
69
69
This module follows a **thin client** architecture: QGIS (or any OGC-compatible client) displays pre-aggregated data, while OpenSPP retains all individual-level data server-side. This ensures that GIS API clients — including the QGIS plugin — never need access to personally identifiable information.
0 commit comments