The Global Risks Index
NXS-GRX · nexus.grix.public/v1

Every value addressable

Every value addressable by key, every page machine-readable, every response attributed and licence-filtered.

Page GRX-DEVEdition Baseline Edition 2026Evidence close 2026-09-30Values not yet publishedSnapshot 31a753f76
FIG 1 · Request
GET /api/v1/public/grix/profiles/COUNTRY/KEN Accept: application/json 200 OK Cache-Control: public, max-age=300 ETag: "…" { "ok": true, "contract": "nexus.grix.public/v1", "claimCeiling": "INTEGRATED", "indicators": [ … ], "withheld": { "total": …, "reasons": { … } }, "attribution": [ … ] }
Shape of a public profile response; values appear only after release.
6
public routes
4
tile key levels
20
domain index keys
451
indicator keys
01API

The public cut

Contract nexus.grix.public/v1: anonymous, read-only, public-classification responses with attribution, freshness, strong ETags and CDN caching. Implemented and not yet deployed; institutional access with service levels is agreed separately.

MethodPathReturns
GET/api/v1/public/grix/layersLayer catalogue with licence and attribution rows
GET/api/v1/public/grix/layers/{id}/featuresFeatures of an admitted live layer
GET/api/v1/public/grix/attribution?layers=Compact and full credits
GET/api/v1/public/grix/risk-productsSpatial risk products with withheld accounting
GET/api/v1/public/grix/risk-products/tiles/{metric}/{z}/{x}/{y}.mvtVector tiles at ISO3, ADM1, ADM2 and H3
GET/api/v1/public/grix/profiles/COUNTRY/{iso3}Public country profile cut, licence-filtered
# a country profile curl -s https://{grix-host}/api/v1/public/grix/profiles/COUNTRY/KEN | jq '.indicators, .withheld'
02Request path

What happens to one API request

A public request passes origin, licence and attribution checks in milliseconds; institutional access runs through scope, contract and sandbox before production keys.

on: GET /profiles/COUNTRY/{iso3}
One API request
In progressTriggered by Your application6 jobs
Graph
01Edge
02Edge
03Policy
04Read
05Respond
06Respond
100%
Timeline
Job0 h1 hTarget
RequestYour applicationinstant
Origin and rate limitPublic cut APIinstant
Licence filterLicence registerinstant
Governed readPostgreSQL ledgerinstant
AttributionAttribution serviceinstant
ResponsePublic cut APIinstant

End to end on the longest path: about 1 h of proposed target service levels. Gates wait for the people named; bars with a fading end have no fixed length.

Steps
  1. Request
    Edge · Your application · instant
    GET with Accept: application/json
    Public cut API
  2. Origin and rate limit
    Edge · Public cut API · < 5 ms
    Admitted origins · Per-IP limit
    Public cut API
  3. Licence filter
    Policy · Licence register · < 5 ms
    Deny by default · Withheld values counted
    Licence register
  4. Governed read
    Read · PostgreSQL ledger · < 50 ms
    Persisted public cut
    PostgreSQL ledger (row-level security)
  5. Attribution
    Respond · Attribution service · < 5 ms
    Credits per admitted source
    Attribution service
  6. Response
    Respond · Public cut API · < 100 ms
    Strong ETag, CDN cache · Claim ceiling INTEGRATED
    Public cut API
Artifacts
ArtifactJobWhoStage
X-Nexus-Withheld headersLicence filterLicence registerPolicy
JSON responseResponsePublic cut APIRespond
DoneIn progressWaiting for approvalQueuedYou are here
What happens to a single public request, from the edge to an attributed, licence-filtered response. The canvas shows where a request stands at the marked job; it is an illustration, not the status of a real request. Durations are proposed target service levels. Select a job for its steps, the people who act, the technology it runs on and what it produces.
on: access requested
Request API access
Waiting for approvalTriggered by Developer6 jobs1 approval gate1 matrix job
Graph
01Request
02Request
03Agree
04Provision
05Provision
06Use
100%
Timeline
Job0 d5 d10 dTarget
Access requestedYouinstant
Use reviewedSecretariat3 d
AgreementGCRI Canada10 d
Account and keysFoundry1 d
Sandbox callsYouinstant
Production useYouongoing

End to end on the longest path: about 15.7 d of proposed target service levels, before the jobs that run with no fixed end. Gates wait for the people named; bars with a fading end have no fixed length.

Steps
  1. Access requested
    Request · You · instant
    Use case and volume
    NXS-GRX (canonical data, provenance and risk) gateway
  2. Use reviewed
    Request · Secretariat · 3 days
    Usage terms checked · No natural-person use
    Licence register
  3. Agreement approval
    Agree · GCRI Canada · 10 days
    Service levels · Terms signed
    PostgreSQL ledger (row-level security)
  4. Account and keys
    Provision · Foundry · 1 day
    Tenant created · Keys issued · Rate plan set
    FoundryPostgreSQL ledger (row-level security)
  5. Sandbox calls
    Provision · You · self-serve
    Keys tested · SDMX keys and tiles
    Public cut APIVector tiles
  6. Production use matrix · endpoints
    Use · You · ongoing
    Profiles, products, tiles · Attribution rendered
    Public cut APIVector tilesAttribution service
Artifacts
ArtifactJobWhoStage
Request recordAccess requestedYouRequest
Use noteUse reviewedSecretariatRequest
AgreementAgreementGCRI CanadaAgree
Credentials (delivered privately)Account and keysFoundryProvision
First responseSandbox callsYouProvision
Usage meteringProduction useYouUse
DoneIn progressWaiting for approvalQueuedApproval gateMatrix jobYou are here
Institutional access to the NXS-GRX API with service levels, contracted with GCRI Canada. The canvas shows where a request stands at the marked job; it is an illustration, not the status of a real request. Durations are proposed target service levels. Select a job for its steps, the people who act, the technology it runs on and what it produces.
03Keys

Identifiers and keys

Indicator
nis:IND.MAC.output.gdp.usd@1.0.0
Domain index
nis:IDX.FIS.debt.fiscal_risk@1.0.0
Observation
{id}:{REF_AREA}:{TIME_PERIOD}:{FREQ}[:{SCENARIO}:{HORIZON}]
Page
GRX-PRF-KEN · GRX-IDX-FIS · GRX-SER-GS-01
Artifact
NS-1 UNI in the GRX scope, assigned on release
04Tiles

Vector tiles

Resolution follows zoom (country, ADM1, ADM2, then H3); features whose inputs are withheld are dropped and counted in response headers.

https://{grix-host}/api/v1/public/grix/risk-products/tiles/{metric}/{z}/{x}/{y}.mvt
05WordPress

Blocks and hydration

Pages carry the Foundry plugin blocks around complete static fallbacks: nexus-foundry/indicator for country values and nexus-foundry/map for released layers. With the plugin, values and maps fill in place; without it, the static page stands. A page can also hydrate from the public cut when risksindex.com is admitted (data-grx-api on the embed root).

06Pages

Machine-readable pages

Every page embeds JSON-LD (Dataset, TechArticle or CollectionPage), a stable page ID and canonical URL; the page manifest lists every page with its ID, title, parent and description.

07States

States and errors

StateMeaning
PUBLISHEDReleased in an edition with interval, class and sources
NO_DATANo admitted input; not a zero
INSUFFICIENT_EVIDENCECoverage below the method minimum; value withheld
WITHHELDAn input's licence or the public-safe screen does not admit public display; counted
DEGRADEDPublished with a stated quality limitation
424 PUBLIC_SOURCE_LICENCE_NOT_ADMITTEDA layer's source licence does not admit public display
404 PUBLIC_CUT_NOT_AVAILABLENo public projection for that geography yet
503Authoritative store unavailable; nothing is served from memory

Building on NXS-GRX?

Tell us what you are building; institutional access with service levels is agreed with the Secretariat.