Data API
Public Forge and Patterns datasets are readable from
GET /api/data?type=<dataset>. Current analytical products carry
freshness metadata and fail closed when stale. Use the
Data Quality & Pipeline Health page or
dataset_catalog to understand each dataset's purpose, coverage,
provenance, count semantics, and limitations.
GET https://uas-patterns.com/api/data?type=pie_brief
Successful response:
{
"data": { …dataset payload or requested projection… },
"type": "pie_brief",
"tier": "free",
"source": "kv",
"freshness": {
"status": "fresh",
"generated_at": "…",
"checked_at": "…",
"age_seconds": 1234,
"max_age_seconds": 259200
}
}
The worker reads Cloudflare KV first and then the bundled static artifact. The same
freshness and publication controls apply to both. Core analytical datasets return
503 rather than silently serving stale or semantically unsafe output.
Other common errors are 400 for a missing type and 404 for an
unknown or unavailable dataset. CORS is open for browser clients.
GET /api/data?type=dataset_catalog
The catalog is the machine-readable index for public data. It describes record-count meaning, role, generation time, actual coverage, freshness target, provenance, quality indicators, caveats, and current publication state. Do not interpret a count without its catalog row.
article_event_clusters distinguishes four units: raw article mentions,
duplicate-adjusted reporting groups, machine-grouped candidate events, and multi-site
candidate events. Candidate events are not confirmed incidents. Actor association is
mention-based, not attribution, and site diversity is only a proxy for independence.
GET /api/data?type=article_event_clusters&view=summary GET /api/data?type=article_event_clusters&actor=Russia%20%2F%20Mil&offset=0&limit=20 GET /api/data?type=article_event_clusters&event_id=EVT-…
| Projection | Returned content |
|---|---|
view=summary | Artifact metadata and per-actor counts without the heavy event/evidence arrays. |
actor=… | Exact-actor summary plus newest-first candidate events. offset supports pagination; limit defaults to 20 and is capped at 100. |
event_id=… | One exact serialized candidate event, or null with found:false. |
| no projection | The full bounded public artifact. |
Publication is withheld unless the hardened v1.1 controls are present: a shared URL must also have title/time agreement, different titles from one rolling source remain separate, repeated one-source reporting is not treated as corroboration, reporting spans are bounded to five days, and candidate-event spans are bounded to three days.
| type | Contents | Typical cadence |
|---|---|---|
flags / pie_flags | Current public signals with severity, confidence, lifecycle, sources, and record references. | daily |
pie_brief / pie_brief_history | Current synthesized brief and historical brief archive. | daily |
pie_delta | Movement between validated snapshots: new, resolved, escalated, and de-escalated flags. | daily |
pie_trends | Available snapshot history and projections. Read history_span; the archive is not assumed to be complete before collection began. | daily |
pie_weekly | Weekly synthesis where available. | weekly |
clock_score | UAS Ecosystem Clock snapshot and its current drivers. | daily |
| type | Contents |
|---|---|
predictions / pie_predictions | Current time-bounded forecasts, probabilities, drivers, confidence, and hedges. |
llm_predictions | Provider-level forecast audit material and cross-validation marks where available. |
predictions_best / predictions_archive | Selected forecasts and historical archive. |
prediction_outcomes / calibration_scores | Resolved forecasts and calibration measurements behind Forecast Accountability. |
gap_analysis_latest | Latest collection or analytic coverage-gap assessment. |
| type | Contents |
|---|---|
entity_graph | Public entity relationships and gray-zone risk signals. Graph proximity is not an allegation. |
actor_fingerprints | Boundary-aware article-mention context by actor; not a confirmed incident or attribution ledger. |
threat_scores | Open-source activity/exposure research-priority scores; not attack probabilities or capability estimates. |
article_event_clusters | Duplicate-adjusted reporting and conservative candidate-event evidence described above. |
adversary_bom | Publicly documented captured-platform teardown component evidence. |
component_mirroring_index | Component-profile similarity leads; not proof of transfer or diversion. |
sanctions_evasion_graph | Public relationship signals around tracked seeds; proximity is not a legal finding. |
ttp_counter_gap | UAS TTPs compared with indexed defensive-procurement evidence. Missing signal does not prove no capability or funding exists. |
market_lens | Descriptive market and supply-chain comparison; not investment advice or causation. |
| type | Contents |
|---|---|
intel_articles / intel_companies / intel_platforms / intel_programs | Indexed source corpus and structured company, platform, and program records. |
forge_intel / commercial_master / dfr_master / defense_master | Sector-specific intelligence masters. |
solicitations / federal_awards / sam_watchlist | Public procurement opportunities, awards, and watchlist matches. Verify authoritative records before acting. |
forge_database / drone_database | Forge component catalog and platform reference database. |
forge_firmware_versions / forge_troubleshooting / forge_incompatibilities / topic_component_map | Firmware, troubleshooting, incompatibility, and topic-reference material. |
miner_health / miner_registry | Collector telemetry and source registry. A healthy job does not guarantee complete upstream coverage. |
Pull-based feeds are available at /flags.xml and /brief.xml.
Generated by the PIE pipeline · served through Cloudflare KV with static fallback · flags · brief · actor signals · data quality