From climate maps to financeable adaptation: convert location-level hazards into asset exposure, preliminary financial-loss indicators, and adaptation evidence — with methodology versioning and an audit trail.
Try: 41.02,29.01 · 36.90,30.70 · portfolio CSV upload on /demo
What this repository ships today: labelled connectors with fallbacks, a five-layer portfolio path, deterministic scoring, and REST delivery — no GraphQL, no invented throughput SLAs, no black-box AI claims.
Production connectors pull ORAS5 ocean reanalysis (CDS Zarr) and GEE proxies (VIIRS night lights, Sentinel-5P NO₂). When credentials are unset, deterministic fallback features keep local/CI runs coherent and labelled.
GET /v1/data-sourcesPortfolio workflow: hazard × exposure × vulnerability → Phase A scenario-loss proxy (under an “EAL” label) → adaptation and avoided-loss evidence. Current damage curves are synthetically calibrated and labelled as such.
Methodology v0.3.1 · Phase A proxyMethodology and pack versions, parameters, and a hash-chained append-only financial audit trail. Independent recomputation proves reproducibility of selected EAL numbers — not empirical loss accuracy.
audit trail · verify-eal CIPoint score, portfolio ingest, scenario runs, Markdown/PDF reports, and OpenAPI via FastAPI /docs. No GraphQL surface and no webhook product in this repository.
P0 vertical is mortgage and commercial collateral (50–500 assets). Other industries below are interest areas — not separate shipped products with dedicated pages yet.
Explore physical climate risk as decision-support input for underwriting research — labelled five-layer loss proxies, not a replacement for CAT models or pricing systems.
Use-case page coming soonPortfolio physical-risk evidence for disclosure workflows. Scenario fields are versioned and labelled; they are not calibrated NGFS/CMIP projections today.
Use-case page coming soonInterest area for ports and corridors (e.g. Benelux validation market). No live weather-alert product or dedicated logistics module in this repository yet.
Use-case page coming soonSite selection and resilience planning for grid assets, renewables, and critical infrastructure. Risk screening reports for site diligence and resilience planning (decision-support, not statutory assurance).
Use-case page coming soonDue diligence risk screening for acquisitions, mortgage collateral, and commercial RE portfolios — the Phase A P0 path with five-layer EAL and adaptation evidence.
Try the portfolio demo →Municipal risk mapping and adaptation planning remain thin demo / research interest — not a municipal planning workspace product in Phase A.
Discuss your use case →Registry catalogs 9 production, audit and roadmap entries (3 production · 4 audit · 2 roadmap). Cards labelled Roadmap are not production connectors. Full register: docs/data-sources.md.
Multi-spectral optical imagery at 10m–30m resolution for vegetation, water, and land-use context. Not a registered production connector; Landsat thermal is wired separately under audit streams.
Published CMIP6 archive via ESGF for scenario context. Phase A demos use labelled synthetic hazard intensities; live downscaling of a curated SSP2-4.5 / SSP5-8.5 subset is roadmap.
Earthquake catalogs and PSHA inputs for future Country Packs. Not in the nine-entry register — planned hazard context only.
Elevation-based flood exposure context and HydroSAT flood-extent layers. Not a registered production connector until Country Pack wiring is complete.
ERA5 reanalysis and GFS forecast context. Soil-moisture proxy via ERA5-Land is a separate roadmap registry stub; this card is not a production atmospheric connector.
Ocean reanalysis for SST and sea-level context via Copernicus CDS analysis-ready Zarr. Falls back to labelled stubs when credentials are unset.
Registered production stream for night-lights mean / baseline deviation via GEE. Active-fire (FIRMS) fusion remains roadmap and is not claimed here.
Registered production stream for tropospheric NO₂ column density via GEE. Falls back to labelled stubs when GEE is disabled.
FIRMS active-fire and burn-scar context for Country Packs. Not in the nine-entry register; night-lights production is a separate card.
OpenStreetMap and customer portfolio assets as exposure geometry. Not a registered production data stream; portfolio upload is the current exposure path.
Revisit is the provider’s observation cycle — never labelled as pipeline refresh. We do not advertise an optical pipeline-ingest cadence; connectors run on demand with labelled stub fallbacks when credentials are unset. Spec: data-claims-spec.md.
A measurement, a connector fallback and a synthetically calibrated parameter are not the same claim, so they never look the same. The chip sits beside the value, one per value, and its wording is the same string used in the audit trail and in exports.
One audit_id resolves to the source manifest, the hash-chained trail, the methodology and model versions, and the limitations — the same bundle a reviewer would ask for, available at the moment of the decision. Structure shown below; identifiers are per-response.
production_eligible is derived from them and cannot be asserted directly, so a green build or one live source call cannot flip it. Current decision: demo_only.
FastAPI REST surface with resource-oriented paths. Returns JSON with score breakdowns, methodology/version fields, and labelled source/fallback attribution — not GraphQL and not webhooks.
Grounded in the running FastAPI service. Base URL, paths, and examples below were verified against the live host. No GraphQL, no webhook product, no /v2 score route, and no invented API keys.
Methodology qualification: POST /v1/risk/score is a technical-validation path. Component scores can be synthetic or connector-fallback labelled (see STUBS inventory). For regulated-buyer demos use the portfolio five-layer flow on /demo with synthetic-calibration badges — not this score path alone as production risk numbers.
Primary public routes on the live host. Full schema: OpenAPI Swagger UI.
| Endpoint | Method | Purpose | Status | Reference |
|---|---|---|---|---|
/v1/health |
GET | Liveness + deploy git_sha |
Live | Open |
/v1/risk/score |
POST, GET | Point asset risk score JSON | Demo | OpenAPI |
/v1/risk/batch |
POST | Synchronous multi-asset score batch | Demo | OpenAPI |
/v1/data-sources |
GET | Canonical 9-entry source registry | Live | Open |
/v1/portfolio/upload |
POST | CSV/GeoJSON portfolio ingest (multipart) | Demo | Portfolio demo |
/v1/portfolio/demo-run |
POST | Five-layer portfolio demo run | Demo | Portfolio demo |
/v1/portfolio/demo-run/golden-antalya |
POST | Golden Antalya fixture demo run | Demo | Portfolio demo |
/v1/scenario/run |
POST | Scenario Lab v1 (deterministic demo engine) | Demo | OpenAPI |
/v1/reports/risk |
POST | Markdown risk report | Demo | OpenAPI |
/v1/reports/risk/pdf |
POST | PDF risk report (WeasyPrint or text fallback) | Demo | OpenAPI |
/v2/* score routes |
— | No GraphQL, no webhook product, and no /v2 score route in this repository |
Planned | — |
| Custom API hostname | — | Not configured; use the Railway base URL above | Planned | — |
Required for POST /v1/risk/score:
asset_name (string)latitude (−90…90, decimal degrees WGS84)longitude (−180…180, decimal degrees WGS84)Common optional fields:
radius_km (default 10; >0 and ≤100)preset_id (registered presets; default industrial_v1)sector (reporting label; default industrial)include_industrial_verification_ref (bool; default false on score)Main response fields: overall_score (0–100), risk_band, risk_score ([0,1]), components, flags, audit_id, meta.data_version, optional industrial_verification.
Validation: unknown preset_id, out-of-range coordinates, or missing required fields → HTTP 422 with the standard error envelope.
Standard envelope:
VALIDATION_ERROR, INVALID_COORDINATES, PRESET_NOT_FOUND, …)POST /v1/portfolio/upload body above default 2 MB (PORTFOLIO_UPLOAD_MAX_BYTES)RATE_LIMIT_EXCEEDED); X-RateLimit-* headers on responsestask_id (NOT_FOUND)Health and OpenAPI docs paths are exempt from the mutating-method rate limit. Branch on error.code, not message text.
Versioned methodology note in-repo: georisk-methodology-v0.3.1. Decision-support outputs — not regulatory proof or sole basis for credit decisions.
Figures below are non-binding illustrative bands for conversation — not a self-serve checkout, and not evidence of closed sales. No metered billing is shipped in this repository.
Start with a demo of the scoring and portfolio APIs, then request sandbox access. No fabricated self-serve free-trial funnel.
Request sandbox credentials and OpenAPI access. Keys are provisioned after a short qualification — no fake self-serve signup timer.
Contact for sandbox →30-minute session with a risk data specialist. We'll analyze your portfolio live using your own assets.
Request Demo →