Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
City-API-Discoverability Open source toolkit of strategies and tools to promote city API discoverability
API Discoverability for Smart Cities
Topic: The accessibility and discoverability of City Government Application Programming Interfaces (APIs)
Goal: To identify the tools and strategies that are most effective in enabling communities, businesses and startups to identify opportunities to use application programming interfaces (APIs) to build new products, applications and services in a way that can also scale to other city locations.
Application programming interfaces (APIs) are the programming protocol descriptions that enable a city government’s open datasets and real-time sensor data collection to be plugged into applications, visualizations, and directly into business processes.
For example, real-time data on public transport and city rental bike schemes is made accessible to external businesses and developers through an API. Startups and businesses then create mobile applications that use the API to pull real-time data from the city’s data sources to let app users know when a bus is arriving or running late, or to feed data into a bike rental app to tell users if there are any bikes available in the bike bay nearest their location.
Cities are now opening up more and more of their data and real-time sensor feeds via APIs and encouraging developers to foster innovation by creating new products. In particular, cities are hoping that third-party (external) developers will use a city’s APIs to create new civic tech solutions, apps that enhance the livability of residents and visitors to a city, and foster local business growth.
APIs are also central to the notion of the "city as a platform” and “government as a platform”. Citizens and businesses will be able to use APIs to directly transact with city authorities. For example, a planning consultancy or architecture business could use APIs to pay for, submit and track their planning permissions and even engage with local communities about their proposals all directly via an API.
However, as has been seen from the promise of open data, opening up data access requires a concerted campaign to educate potential end users of the availability and to provide the tools and opportunities to search for useful APIs, and to encourage their uptake through telling stories of successful use cases. For example, local residents groups could use city air quality data APIs to track local risks, but are often unaware that this data is available or that an API would enable them to visualize measurement levels in real time and create automatic alerts for their community when air pollution levels reach a certain threshold.
Cities host hackathons as one means to draw attention to these opportunities, while others have startup accelerator funding programs that encourage entrepreneurs to build new civic tech products using open data APIs. However, hackathons are often one-off projects that target a particular audience, and while they raise some awareness of the opportunities, they often do not have lasting impact. The majority of local businesses may not be aware of the opportunities that can be created with an API, and even if they are, it is difficult to identify from a city’s website where the API documentation is held and what sort of APIs are available to use.
Cities in this study
The main city I will focus on for this project will be Barcelona (as this is where I live), but i will also be looking at API discoverability strategies in a number of cities for this project, including:
Barcelona Valencia Santander Helsinki Amsterdam Singapore Leeds Melbourne Gold Coast New York Portland Detroit Vancouver Interviewees
Businesses that have had success at building products using city APIs Startups participating in hackathons Community groups who are experimenting with using city open data via APIs City officials responsible for encouraging new economic development and civic tech solutions to use APIs. Data Sources
Web analysis of discoverability strategies using a standard methodology including data from SimilarWeb, StackOverflow, developer forums, etc on levels of engagement Web research on how cities are thinking about this issue and how they are currently promoting API usage (including a matrix of strategies with ticks for each strategy being utilized amongst the above sample cities) Interviews with key stakeholders including city CIOs, businesses integrating city APIs, startups seeking to build commercial businesses using APIs, community organizations seeking to integrate data sources and city service connections directly into their work, and accelerator programs aimed at encouraging civic tech businesses Economic estimations of costs of discoverability strategies and potential economic impact/benefits from successful uptake of API usage for a city Design Outputs
A series of discoverability flowcharts mapping how businesses, startups and communities discover what data is available and accessible via API A series of mockups of various templates and products that could be useful in helping cities get their APIs noticed by the businesses, community groups and startups that can use them A dashboard metrics model for analyzing effectiveness of API uptake for a city A data model for creating a recommendation engine that helps a business identify what data sets would be useful to them. Final Product
A GitHub repository made up of discoverability components that can be copied, for example:
A city hackathon guide Policy template for startupacceelrator fund Code to create a city information machine learning tool Template and code for an interactive API website portal, Directory of open standards being used by cities to create APIs A dashboard tool to measure the impact of a publicly released API, widgets and tools Resource and link directories Best practice case studies An economics calculator to assess the cost/benefit of any initiative to increase discoverability, etc. The idea is that a city could look through the repository and use any of the sources when improving the discoverability of their APIs for developers. In some cases, I would build or mockup the idea based on the research I have undertaken, and in other cases I would fork to existing open source resources to enable the GitHub repository to be used as a central resource for cities.
The goal will be to test the idea at the Barcelona Smart City Hack on 18 April, 2015.