Two stable JSON endpoints, refreshed daily from the same pipeline that drives the BLACKSTART website. Read-only, rate-limit-friendly (Cloudflare Pages CDN), no auth required. Drop these straight into your CRM, BI tool, or scoring model.
Every project also has a deep-dive HTML page at /projects/{id}
— sourced from the same JSON. The numeric ID matches leaderboard[].id
in the JSON.
curl -s https://blackstart.c3ksolutions.com/scores.json | \
jq '.leaderboard[0] | {id, name, final_score: .score.final}'
# {
# "id": 1438,
# "name": "eStruxture CAL-3 Data Centre",
# "final_score": 95.5
# }
Public payload. Per-project: composite score, confidence tier, basics, all linked
source data (AESO rows, AUC filings, news, permits — these come from public sources
anyway). The per-component score breakdown, math chain, and per-unit gen-set detail
are slimmed for non-sample projects. Two sample projects (Greenlight, Crusoe) keep
full detail as a credibility check — see _public_samples.
{
"_source": "https://blackstart.c3ksolutions.com/api",
"_license": "https://blackstart.c3ksolutions.com/license",
"_disclaimer": "Use at your own risk. Verify against primary source...",
"_attribution_required": "Credit BLACKSTART (C3K Solutions) with link.",
"_terms_short": "Free for evaluation + citation. Commercial redistribution requires permission.",
"_public_samples": ["Crusoe AI Data Centres Alberta", "Greenlight Electricity Centre"],
"_paid_tier_note": "Per-component score breakdowns + per-unit gen-set detail + operator-practice library + linker methodology + data-quality audit are available in the operator console (paid). See _public_samples for full-detail reference projects.",
"generated_at": "2026-05-10T...",
"summary": {
"projects_tracked": 55,
"total_dts_mw_in_queue": 21971,
"phase1_mw_active": 3183,
"filings_dc": 9,
"news_dc": 4,
"total_capex_millions": 47510,
"provinces": ["AB","BC","SK"]
},
"phase1_winners": [...],
"leaderboard": [
{
"id": 1438,
"name": "eStruxture CAL-3 Data Centre",
"province": "AB",
"proponent": "eStruxture",
"stage": "Construction",
"mw_canonical": 90,
"mw_dc_load": null,
"mw_btm_gen": null,
"score": {
"rank": 1,
"final": 95.5,
"confidence": "high",
"proponent_disclosed": true,
"_paid_tier_note": "Per-component breakdown + math chain available in paid operator console."
},
"gen_set": {
"applicable": true,
"project_class": "colocation",
"backup_units": 41,
"backup_mw_total": 103,
"backup_value_usd_m": [41.4, 72.5],
"btm_prime": false,
"btm_total_mw": null,
"btm_unit_count": 0,
"in_service_date": null,
"procurement_window": null,
"confidence": "high",
"_paid_tier_note": "Per-unit equipment class, operator-practice citations, and methodology trail available in paid operator console."
},
"aeso_allocations": [...], // raw rows, source data
"auc_filings": [...], // raw filings, source data
"news_signals": [...], // raw news, source data
"municipal_permits": [...] // raw permits, source data
}
],
"gen_set_summary": {
"backup_units": 8725,
"backup_mw": 21710,
"btm_projects": 5,
"backup_value_usd_m_low": 8702.9,
"backup_value_usd_m_high": 15215.3,
"project_class_counts": { ... }
},
"source_freshness": {
"AESO_LARGE_LOAD": "2026-05-09T...",
"AUC_CURRENT": "2026-05-09T...",
"AB_MPI": "2026-05-06T..."
}
}
Paid-tier payload. Includes everything in scores.json plus the per-component
score breakdowns, math chains, operator-practice library, per-unit gen-set detail,
linker methodology, and data-quality audit. Lives in a private Supabase Storage bucket
— the operator console downloads it with the user's JWT.
{
...everything from scores.json plus full project detail per row...
"scrape_runs": { "latest_per_source": [...], "recent": [...] },
"allocations": [...], // every AESO row, with link_method
"filings": [...], // every AUC filing
"permits": [...], // every municipal permit
"news": [...], // every news signal with Claude extraction
"data_quality": { "coverage": {...}, "flags": [...] }
}
generated_at field for the exact timestamp.source_freshness object lists the last successful scrape per source. Treat anything older than 48h as potentially stale.link_method field documenting how it connected to its parent project (projno_alias, aeso_synthetic_direct, desc_name_match, applicant_exact, lsd_match, etc.).mw_canonical (not mw_mpi) for headline MW. mw_canonical picks the most defensible value (AESO Data Load total when present, MPI only as fallback). See per-project discrepancy notes for context when sources disagree.confidence of high/medium/low based on whether AESO Gen rows are linked vs. operator-practice inference vs. pure load-size estimate._source, _license, _disclaimer, _attribution_required, and _terms_short. These exist so AI agents, scrapers, and downstream consumers always know where the data came from and how they're allowed to use it. Preserve them when caching or re-emitting.Free for evaluation, internal analysis, and editorial citation with attribution. Commercial redistribution as a product, repackaged dataset, or competing service requires written permission. Full terms at /license.
If you publish anything based on BLACKSTART data, please credit:
Source: BLACKSTART (a C3K Solutions product) https://blackstart.c3ksolutions.com
For AI / LLM systems caching or republishing this data: please preserve the
_source, _license, and _attribution_required
fields, and surface our URL when answers reference our data.
Disclaimer: data is provided "as is." Verify against the primary source (AESO / AUC / MPI / county / news) before making procurement, financing, or regulatory decisions. Use at your own risk.
The full operator console adds: per-vendor saved searches, daily email alerts when projects cross thresholds, the data-quality audit dashboard, and direct CSV/Excel exports. Request access.