Answer · US Municipal Capital Projects API

Is there an API for city capital improvement plans?

Not from government: there is no national register of local capital projects. The Census Bureau's Annual Survey of State and Local Government Finances reports capital outlay as totals by government, not by project, so each city or county publishes its own capital budget or capital improvement plan (CIP): an open-data table, a project tracker or a PDF budget document, each in its own layout. The Olympus US Municipal Capital Projects API maps the 15 cities and counties it covers into one schema: GET /v1/municipal-capital-projects/projects searches projects by government, state, name, department, status and fiscal year, and every amount says which dataset row or PDF page it was read from.

By New Odyssey · Published · Markdown

The official route, and what it lacks

A capital improvement plan lists the buildings, roads, utilities and equipment a government plans to fund over the next few years; the capital budget appropriates the current year. Each city and county adopts and publishes its own, so:

  • some publish a table on their open-data portal (many on Socrata, which has a discovery API and a per-dataset SODA API), for example Seattle's capital budget and New York City's capital budget;
  • many publish only a PDF budget document, with the amounts in printed tables;
  • columns, fiscal years, amount types (a year's budget, spending to date, a borrowing authorization) and project granularity differ from government to government, and nothing links them.

The Census Bureau's government finance statistics give each government's capital outlay as a total; they do not list projects.

What the US Municipal Capital Projects API serves

City and county capital budgets and capital improvement programmes in one schema: projects, departments, funding sources, amounts by fiscal year and status, with the source row or PDF page behind every amount.

Limits

  • Amounts are as published in budgets and capital programmes, not audited spending; amounts of different types (budget, actual, committed, authorization, total cost) must not be added together.
  • Sources differ in what they give: some publish status, location and dates, some only amounts. A blank amount is not zero.
  • Show the credit lines these sources ask for wherever their data is presented: "Source: City of Roseville, CA"; "Source: Office of the City Manager, City of Worcester, MA"; "Fulton County Government (GA), licensed under CC BY 4.0".
  • Rows read from PDF budget documents (Worcester, Fremont) are served only when every check passes for the document; rows held for review are counted in coverage, not served.

Not included: cities and counties outside the 15 listed; Fulton County architect and contractor names; project managers and other people's names or contact details; state and transit authority capital plans.

At launch (October 2026) the API served 12,122 projects and 116,122 amounts from 15 sources: 13 cities and towns and 2 counties. Coverage is a sample, not national: check GET /v1/municipal-capital-projects/coverage for the governments and fiscal years loaded.

Example request and response

Seattle's projects with an amount in fiscal year 2026:

Request
curl -s "https://api.olympus.new-odyssey.com/v1/municipal-capital-projects/projects?government=5363000&fiscal_year=2026" \
  -H "X-API-Key: $OLYMPUS_API_KEY"
200 OK (abridged)
{
  "data": [
    {
      "project_id": "…",
      "government": { "geoid": "5363000", "scheme": "OLY-US-CENSUS-PLACE", "name": "City of Seattle", "state": "WA", "government_type": "city" },
      "source_kind": "socrata",
      "project_key": "…",
      "published_project_id": "…",
      "name": "…",
      "department": "…",
      "category": "…",
      "status": "…",
      "status_as_published": "…",
      "location": { "description": "…", "latitude": …, "longitude": …, "district": "…" },
      "fiscal_year_min": …,
      "fiscal_year_max": …,
      "amount_lines": …,
      "provenance": { "dataset_id": "…", "source_id": "seattle.capital_budget", "source_url": "…", "source_version": "…" }
    }
  ],
  "meta": {
    "datasets": [{ "dataset_id": "…", "freshness": "fresh" }],
    "notices": [{ "code": "as_published", "message": "…" }],
    "pagination": { "limit": 25, "has_more": true, "next_cursor": "…" }
  }
}

government takes Census GEOIDs: a 7-digit place (Seattle is 5363000) or a 5-digit county. GET /v1/municipal-capital-projects/projects/{project_id} returns one project with every published amount by fiscal year, amount type and funding source, and GET /v1/municipal-capital-projects/coverage lists the governments, sources and their licence or terms.

Coverage and refresh

Coverage: A sample of 15 US local governments, not national coverage: the cities and towns of New York NY, Seattle WA, Austin TX, Cambridge MA, Norfolk VA, Roseville CA, Corona CA, Colorado Springs CO, Parker CO, Dallas TX (2024 bond programme only), Auburn WA, Worcester MA and Fremont CA (13 Census places), and Fulton County GA and Ramsey County MN (2 counties). GET /v1/municipal-capital-projects/coverage lists every source with its licence or terms.

  • Fiscal years as each source publishes them; historical years are included where the source publishes them (Seattle, Auburn, Corona, Colorado Springs and Ramsey go back to 2011-2018). New York City: the latest Capital Budget edition only.
  • Project granularity is the source's own: Seattle's projects are its budget project codes, Austin and Ramsey give one line per subproject, phase or account; nothing is grouped above the source's key.
  • Fiscal years worked out from a column definition or a document title, normalised statuses and totals computed by Olympus are marked as derived.

Refresh: Weekly (Wednesdays 07:00 America/New_York); an unchanged source publishes nothing new. GET /v1/municipal-capital-projects/coverage lists exactly what is loaded right now.

Price

Every Olympus plan includes the US Municipal Capital Projects API and every other live API. The Free plan (no card) gives 1,000 requests a month to each live API at 10 requests a minute. Paid plans: Developer $79 a month (50,000 requests per API), Growth $299 a month (250,000 requests per API), Business $999 a month (1,000,000 requests per API); Enterprise from $2,500 a month on request. Prices in USD; see pricing for rate limits and what counts as a request.

Docs

Data from the cities and counties listed by the coverage endpoint, under each publisher's licence or terms. Source: City of Roseville, CA · Source: Office of the City Manager, City of Worcester, MA · Fulton County Government (GA), licensed under CC BY 4.0. Olympus is not affiliated with or endorsed by any of them or the Census Bureau.

Questions

Is there a national database of city capital projects?

No. Each city and county publishes its own capital budget or capital improvement plan. Census Bureau government finance statistics give capital outlay totals by government, not projects.

Which cities and counties are covered?

Fifteen at launch: New York, Seattle, Austin, Cambridge MA, Norfolk VA, Roseville CA, Corona CA, Colorado Springs, Parker CO, Dallas (2024 bond programme), Auburn WA, Worcester MA, Fremont CA, Fulton County GA and Ramsey County MN. The coverage endpoint lists them with their sources and terms.

Are the amounts actual spending?

Only where the source publishes actual spending. Amounts are as published, mostly budgets and planned funding, not audited spending, and each amount has a type (budget, actual, committed, authorization or total cost) that must not be added to another type.

Are contractors included?

No. Columns naming people are never read, and Fulton County's architect and contractor names are not loaded.

Sources