API Documentation

A REST API for the same data behind the FabPulse dashboard — projects, status changes, and reports. Available on Pro and above.

Base URL

https://getfabpulse.com/api/v1

Authentication

Every request needs an x-api-key header. Generate a key from My Account (Pro plan or above required — regenerating a key immediately invalidates the previous one).

curl https://getfabpulse.com/api/v1/projects \
  -H "x-api-key: fp_live_..."

Rate Limits

Limits reset daily (UTC) and apply per API key:

ParamTypeDescription
Free—No API access
Pro100 / day
Team10,000 / dayShared across all team members' keys
Enterprise100,000 / dayHigher limits available on request

Exceeding your limit returns 429 with { "error": "Daily rate limit of N requests exceeded." }.

Verification & schedule baselines

Each project in /api/v1/projects includes two extra fields. verification lists how each key fact was checked, and schedule_baseline holds the earliest official schedule target we could verify (or null). A fact with no entry in verification is unverified.

ParamTypeDescription
verification[].fieldstringstatus, schedule, or investment
verification[].levelstringconfirmed (company/official) or reported (press)
verification[].source_urlstringWhere it was checked, with source_name and verified_at
schedule_baseline.baseline_labelstringEarliest verified target, e.g. "2028"
schedule_baseline.baseline_precisionstringyear, quarter, month, or day

Pagination

All list endpoints accept page (default 1) and limit (default 25, max 100), and return a pagination object:

{
  "data": [...],
  "pagination": {
    "page": 1,
    "limit": 25,
    "total": 80,
    "total_pages": 4
  }
}

Endpoints

GET/projects

All tracked projects, sorted by investment size (largest first).

ParamTypeDescription
statusstringannounced · design_permitting · under_construction · operational · delayed · cancelled
countrystringExact match on location_country, e.g. "USA"
companystringPartial, case-insensitive match on company_name
page, limitintPagination
curl "https://getfabpulse.com/api/v1/projects?status=under_construction&country=USA" \
  -H "x-api-key: fp_live_..."
GET/updates

Detected changes to tracked projects (status, funding, timeline, etc.), newest first.

ParamTypeDescription
project_iduuidLimit to one project
sinceISO dateOnly updates detected on or after this date
page, limitintPagination
curl "https://getfabpulse.com/api/v1/updates?since=2026-09-01" \
  -H "x-api-key: fp_live_..."
GET/reports

All published reports, newest first. full_content is included only for reports at or below your plan's tier — otherwise it comes back null (the rest of the report's metadata is always included).

curl https://getfabpulse.com/api/v1/reports \
  -H "x-api-key: fp_live_..."

Errors

ParamTypeDescription
401UnauthorizedMissing or invalid x-api-key
403ForbiddenAPI access requires Pro or above
429Too Many RequestsDaily rate limit exceeded
500Server ErrorSomething went wrong on our end

Questions

Something not working as documented? hello@getfabpulse.com