Developer documentatie
RiskPulse aggregeert sanctielijsten, reisadviezen en politieke stabiliteitsscores uit vier databronnen in één JSON response per land.
Quick start
Stuur je eerste request in minder dan een minuut. Je API key staat in je portaal.
curl https://api.riskpulse.io/api/v1/risk/IR \ -H "X-Api-Key: rp_live_your-api-key"
Response:
{
"isoCode": "IR",
"countryName": "Iran",
"aggregatedRisk": 8.4,
"travelAdvisoryScore": 9,
"sanctionedEu": true,
"sanctionedOfac": true,
"stabilityScore": -1.80,
"sources": {
"buza": "2026-03-18T06:00:00Z",
"euSanctions": "2026-03-18T02:00:00Z",
"ofac": "2026-03-18T02:30:00Z",
"worldBank": "2026-03-01T03:00:00Z"
}
}Authenticatie
Alle API requests vereisen authenticatie via de X-Api-Key header. Je API key is te vinden in je portaal.
curl https://api.riskpulse.io/api/v1/risk/NL \ -H "X-Api-Key: rp_live_your-api-key"
Key formaat
Keys beginnen altijd met rp_live_ gevolgd door een unieke hash. Keys zijn eenmalig zichtbaar bij aanmaken. Verloren keys kunnen worden gereset via het portaal.
Tiers & limieten
Calls worden per kalendermaand geteld. Bij het bereiken van je limiet geeft de API een 429 terug.
| Tier | Prijs | Calls/maand | Batch | History | Webhooks |
|---|---|---|---|---|---|
| Starter | €99/mo | 500 | ✗ | ✗ | ✗ |
| Growth | €299/mo | 5.000 | ✓ | ✓ | ✓ |
| Enterprise | €799/mo | Onbeperkt | ✓ | ✓ | ✓ |
Endpoints
/api/v1/riskGeeft risicoprofielen van alle landen, gesorteerd op risico (hoog naar laag).
curl https://api.riskpulse.io/api/v1/risk \ -H "X-Api-Key: rp_live_your-api-key"
/api/v1/risk/{isoCode}Volledig risicoprofiel van één land. Accepteert ISO 3166-1 alpha-2 of alpha-3 codes.
curl https://api.riskpulse.io/api/v1/risk/RU \ -H "X-Api-Key: rp_live_your-api-key"
/api/v1/risk/{isoCode}/scoreAlleen de geaggregeerde score. Goedkoop endpoint voor polling of monitoring.
curl https://api.riskpulse.io/api/v1/risk/SY/score \
-H "X-Api-Key: rp_live_your-api-key"
# Response:
# { "isoCode": "SY", "score": 9.5 }/api/v1/risk/{isoCode}/historyGrowth+Risicoscores van de afgelopen 90 dagen. Vereist Growth tier of hoger.
curl https://api.riskpulse.io/api/v1/risk/UA/history \ -H "X-Api-Key: rp_live_your-api-key"
/api/v1/risk/batchGrowth+Vraag tot 50 landen tegelijk op. Vereist Growth tier of hoger.
curl -X POST https://api.riskpulse.io/api/v1/risk/batch \ -H "X-Api-Key: rp_live_your-api-key" \ -H "Content-Type: application/json" \ -d '["IR", "RU", "SY", "KP", "UA"]'
/api/v1/portal/meAccount info: tier, calls deze maand, quota en reset datum.
curl https://api.riskpulse.io/api/v1/portal/me \
-H "X-Api-Key: rp_live_your-api-key"
# Response:
# {
# "tier": "GROWTH",
# "callsThisMonth": 1234,
# "monthlyQuota": 5000,
# "quotaResetAt": "2026-04-01T00:00:00Z"
# }/api/v1/portal/webhookGrowth+Stel een webhook in voor risicoscore-wijzigingen groter dan 1.5 punt. Vereist Growth+.
curl -X PUT https://api.riskpulse.io/api/v1/portal/webhook \
-H "X-Api-Key: rp_live_your-api-key" \
-H "Content-Type: application/json" \
-d '{"url": "https://your-app.com/riskpulse-webhook"}'Webhook payload
{
"event": "risk.score_changed",
"isoCode": "IR",
"countryName": "Iran",
"previousScore": 7.1,
"newScore": 9.0,
"delta": 1.9,
"timestamp": "2026-03-18T06:00:00Z"
}Response schema
Alle risk endpoints retourneren een RiskProfile object.
| Veld | Type | Omschrijving |
|---|---|---|
| isoCode | string | ISO 3166-1 alpha-2 landcode (bijv. "IR") |
| countryName | string | Volledige Engelstalige landnaam |
| aggregatedRisk | float | Gewogen risicoscore 1.0–10.0 (1 decimaal) |
| travelAdvisoryScore | integer | 1=groen, 3=geel, 6=oranje, 9=rood (BuZa) |
| sanctionedEu | boolean | Land staat op EU FSF sanctielijst |
| sanctionedOfac | boolean | Land staat op US OFAC SDN lijst |
| stabilityScore | float | Wereldbank PV.EST index: -2.5 (onstabiel) tot +2.5 (stabiel) |
| sources.buza | ISO 8601 | Timestamp laatste BuZa update (nullable) |
| sources.euSanctions | ISO 8601 | Timestamp laatste EU sancties update (nullable) |
| sources.ofac | ISO 8601 | Timestamp laatste OFAC update (nullable) |
| sources.worldBank | ISO 8601 | Timestamp laatste Wereldbank update (nullable) |
Score berekening
De aggregatedRisk is een gewogen gemiddelde van drie databronnen, afgerond op één decimaal en begrensd tussen 1.0 en 10.0.
| Risiconiveau | Score | Kleur |
|---|---|---|
| Kritiek | ≥ 9.0 | ● Donkerrood |
| Hoog | 7.0 – 8.9 | ● Rood |
| Midden | 4.0 – 6.9 | ● Oranje |
| Laag | < 4.0 | ● Groen |
Foutcodes
| Status | Betekenis | Oplossing | |
|---|---|---|---|
| 401 | Unauthorized | Ontbrekende of ongeldige X-Api-Key header | Controleer je API key in het portaal |
| 403 | Forbidden | Endpoint vereist hogere tier | Upgrade naar Growth of Enterprise |
| 404 | Not Found | Landcode niet gevonden | Gebruik een geldige ISO 3166-1 code |
| 429 | Too Many Requests | Maandquotum bereikt | Wacht op quotumreset of upgrade |
| 502 | Bad Gateway | Upstream fout bij ophalen data | Probeer opnieuw, wij monitoren dit |
Databronnen
BuZa reisadvies
travelAdvisoryScoreNederlandse reisadviezen van het Ministerie van Buitenlandse Zaken. Kleurcodes: groen (1), geel (3), oranje (6), rood (9).
EU FSF sanctielijst
sanctionedEuEuropese Unie Financial Sanctions Files. Landen waarop EU-sancties van kracht zijn.
OFAC SDN lijst
sanctionedOfacUS Treasury OFAC Specially Designated Nationals lijst. Landen waarop Amerikaanse sancties van kracht zijn.
Wereldbank PV.EST
stabilityScorePolitical Stability and Absence of Violence/Terrorism indicator. Bereik: -2.5 tot +2.5.
Changelog
Maart 2026
- ✓ Initiële release
- ✓ Risk profile endpoint voor 195 landen
- ✓ Batch endpoint (Growth+)
- ✓ History endpoint met 90 dagen data (Growth+)
- ✓ Webhook notificaties bij score-wijzigingen (Growth+)
- ✓ Vier databronnen: BuZa, EU FSF, OFAC SDN, Wereldbank
Vragen of problemen? Mail naar support@riskpulse.io