Overview
The Infrastructure Service provides APIs for monitoring critical infrastructure including:
- Internet outages from Cloudflare Radar
- External service status tracking
- Submarine cable health monitoring
- Temporal baseline anomaly detection
Base Path: /api/infrastructure/v1
ListInternetOutages
Retrieves detected internet outages from Cloudflare Radar.
Endpoint: GET /api/infrastructure/v1/list-internet-outages
Request Parameters
Start of time range (inclusive), Unix epoch milliseconds.
End of time range (inclusive), Unix epoch milliseconds.
Optional country filter (ISO 3166-1 alpha-2).
Response
The list of internet outages.
Unique outage identifier.
URL to the outage report.
Detection time, as Unix epoch milliseconds.
Affected country (ISO 3166-1 alpha-2).
Affected region within the country.
Outage location coordinates.
Outage severity: PARTIAL, MAJOR, or TOTAL.
Affected infrastructure categories.
Root cause, if determined.
Outage type classification.
End time of the outage, as Unix epoch milliseconds. Zero if ongoing.
Pagination metadata with cursor for next page.
Example Request
curl -X GET "https://api.worldmonitor.com/api/infrastructure/v1/list-internet-outages?start=1704067200000&end=1706745599999&country=US&page_size=10"
Example Response
{
"outages": [
{
"id": "cf-2024-01-15-us-001",
"title": "Internet disruption in California",
"link": "https://radar.cloudflare.com/outage/...",
"description": "Widespread connectivity issues affecting Bay Area",
"detected_at": 1705334400000,
"country": "US",
"region": "California",
"location": {
"latitude": 37.7749,
"longitude": -122.4194
},
"severity": "MAJOR",
"categories": ["ISP", "DNS"],
"cause": "Fiber cut",
"outage_type": "PHYSICAL",
"ended_at": 1705348800000
}
],
"pagination": {
"cursor": "eyJvZmZzZXQiOjEwfQ==",
"has_more": true
}
}
ListServiceStatuses
Retrieves operational status of monitored external services.
Endpoint: GET /api/infrastructure/v1/list-service-statuses
Request Parameters
Optional status filter. Returns only services in this state.Values: OPERATIONAL, DEGRADED, PARTIAL_OUTAGE, MAJOR_OUTAGE, MAINTENANCE
Response
The list of service statuses.
Current operational status.
Last status check time, as Unix epoch milliseconds.
Response latency in milliseconds.
Example Request
curl -X GET "https://api.worldmonitor.com/api/infrastructure/v1/list-service-statuses?status=DEGRADED"
Example Response
{
"statuses": [
{
"id": "github",
"name": "GitHub",
"status": "DEGRADED",
"description": "Experiencing elevated error rates",
"url": "https://github.com",
"checked_at": 1705334400000,
"latency_ms": 450
}
]
}
GetTemporalBaseline
Checks current activity count against stored baseline for anomaly detection.
Endpoint: GET /api/infrastructure/v1/get-temporal-baseline
Request Parameters
Activity type: military_flights, vessels, protests, news, ais_gaps, or satellite_fires.
Geographic region key, defaults to “global”.
Current observed count to compare against baseline.
Response
Anomaly details; absent when count is within normal range.
Number of standard deviations from the mean.
Severity label: “critical”, “high”, “medium”, or “normal”.
Ratio of current count to baseline mean.
Baseline statistics; absent when still in learning phase.
Running mean of observed counts.
Standard deviation derived from Welford’s M2.
Number of samples incorporated so far.
True if insufficient samples have been collected.
Current number of samples stored.
Minimum samples required before anomaly detection activates.
Error message if request was invalid.
Example Request
curl -X GET "https://api.worldmonitor.com/api/infrastructure/v1/get-temporal-baseline?type=military_flights®ion=europe&count=245"
Example Response
{
"anomaly": {
"z_score": 2.8,
"severity": "high",
"multiplier": 1.85
},
"baseline": {
"mean": 132.5,
"std_dev": 40.2,
"sample_count": 90
},
"learning": false,
"sample_count": 90,
"samples_needed": 30
}
RecordBaselineSnapshot
Batch-updates baseline statistics using Welford’s online algorithm.
Endpoint: POST /api/infrastructure/v1/record-baseline-snapshot
Request Body
Up to 20 metric updates to apply.
Geographic region key, defaults to “global”.
Response
Number of baselines that were written.
Error message if the request was invalid.
Example Request
curl -X POST "https://api.worldmonitor.com/api/infrastructure/v1/record-baseline-snapshot" \
-H "Content-Type: application/json" \
-d '{
"updates": [
{
"type": "military_flights",
"region": "global",
"count": 156
},
{
"type": "vessels",
"region": "asia",
"count": 4523
}
]
}'
Example Response
GetCableHealth
Computes health status for submarine cables from NGA maritime warning signals.
Endpoint: GET /api/infrastructure/v1/get-cable-health
Request Parameters
No request parameters required.
Response
Generation timestamp, as Unix epoch milliseconds.
Health records keyed by cable identifier.
Computed health status: OK, DEGRADED, or FAULT.
Composite health score (0.0 = healthy, 1.0 = confirmed fault).
Confidence in the health assessment (0.0–1.0).
Last signal update time, as Unix epoch milliseconds.
Supporting evidence items (up to 3).
Evidence source (e.g. “NGA”).
Human-readable summary of the evidence.
Evidence timestamp, as Unix epoch milliseconds.
Example Request
curl -X GET "https://api.worldmonitor.com/api/infrastructure/v1/get-cable-health"
Example Response
{
"generated_at": 1705334400000,
"cables": {
"SEA-ME-WE-3": {
"status": "DEGRADED",
"score": 0.65,
"confidence": 0.82,
"last_updated": 1705330800000,
"evidence": [
{
"source": "NGA",
"summary": "Maritime warning near cable route in Indian Ocean",
"ts": 1705330800000
},
{
"source": "NGA",
"summary": "Elevated repair vessel activity detected",
"ts": 1705327200000
}
]
},
"FASTER": {
"status": "OK",
"score": 0.05,
"confidence": 0.95,
"last_updated": 1705334400000,
"evidence": []
}
}
}