API Documentation

BuildSD offers a free public API with info for all the projects we track!

About

Our mission is to document development and transit here in San Diego, and we believe a fundamental part of that is making our data, collected and created, available to the public so they can build their own cool stuff with it! Our public API is available as an entirely free tool, with the same rate limits and access controls as this website. However, it is still in development and may evolve along with the website - and we ask that you respect the API by caching data and not making excessive requests. We also ask that you do NOT use the API for illegal activity, creating a service that offers the same functionality as BuildSD's website, or training machine learning or generative AI models. We have the right to restrict access to the API at any time, and this may be accompanied by a ban from the website.

Endpoints

The API's base URL is buildsd.org/api - all endpoints are relative to that URL. Responses are returned as JSON, although some allow for requesting GeoJSON which can work nicely for creating maps and visualizations like ours. All endpoints are available without authentication, and only GET requests are supported, so we encourage you to click on any of these endpoints to try them out and get a feel for their response format!

/api/manifest

This endpoint is the entry point for the API, and returns a list of endpoints as well as potential values for several important enums, such as the types of projects we track, author names and bios, and the organizations that have listed events on our calendar. This endpoint is useful for understanding the API and what data is available. We ask that you please request this data only once every few days and cache it if possible, as it is not likely to change often. Click here to see the current manifest!

/api/content

This endpoint returns a list of the projects and artworks we have featured on our site. These are the big pins on the maps with full write-ups written by our team. It also includes journal entries, but does NOT include the list of every permit request or project that we track. You can also append ?format=geojson to the URL and get a response with the same fields in GeoJSON, or append ?type={projects, artworks, journal} to filter for one type of content. Currently, the API does NOT provide a way to see the full content of a write-up, as this is rendered directly by our content management system on the site. Please link out to the BuildSD website (using the CanonicalURL field) to show your users more information on a project. Click here to see the current list of featured content!

/api/calendar

This endpoint returns a list of the events we have listed on our calendar. These are events that are related to development and transit in San Diego, and are not necessarily hosted by BuildSD. This endpoint may take longer to load than the others, as it has to sync with the system we use internally to manage the calendar. Only events through the next three months (including the current month) are displayed. Click here to see the current list of events!

/api/permits

This endpoint returns a list of the permit requests we have tracked. These are the small green pins on our map. You can also append ?format=geojson to the URL and get a response with the same fields in GeoJSON. This data is only updated by our team periodically, so it may not be entirely up-to-date with the city dataset it is based on. However, we still expose it as part of the API to provide a simple JSON interface to this data that includes some of our own cleanup and filtering. Please cache this endpoint in particular! It gets very big!! Click here to see the current list of permit requests!