Contribute > ideas > Portland API (PAPI)

Category: 
Community

Currently, the CivicApps Data Catalog provides access to flat dataset files. A consolidated regional open data API is needed that provides aggregated public information from governmental entities, transparency organizations, and volunteers throughout the Portland region. A good start would be for existing CivicApps datasets to be made available in the form of a single consolidated Portland API (PAPI). The goal is to create a generic platform that allows for the creation of live collaborative web applications that extract and extend the CivicApps data using APIs. Possibly leverage a Moksha Hub?

Discussion
mgreinke :: March 17, 2010 - 12:40pm

This would be a great topic for discussion at OpenGovWest (http://opengovwest.com/), being held March 26 & 27 at the City of Seattle's City Hall. Portland City staff will be attending and participating on panel discussions. Part of the discussion will including establishing a consortium of western cities to share apps and data.

TechWraith :: March 17, 2010 - 10:17pm

I would be willing to build this out. Let me know what's needed.

lokkju :: March 18, 2010 - 12:22am

The primary two issues would be providing a technology agnostic, yet resource conservative solution; and the hosting infrastructure for wide scale use. A good video to watch for anyone thinking on this idea is the Google Tech Talk "How to design a good API and why it matters": http://www.youtube.com/watch?v=aAb7hSCtvGw As someone who develops in many languages, staying closer to JSON and further away from SOAP would be preferable. Should it be a single API, that lets you choose a dataset, and returns data structure based on the dataset? Should all data be "normalized" in some way before being added to the API - same projections for GIS data, etc? Should all data be treated as just flat records, much like Google BigTable?

maxogden :: March 24, 2010 - 11:27pm

I registered pdxapi.com and have built a straightforward JSON api that I will be deploying in the next couple of days also in the works are iphone + android native apps for interacting with the data from the api

curt :: June 11, 2010 - 3:35am

that lets you choose a dataset, and returns data structure based on the dataset? Should all data be "normalized" in some way before being added to the API

russ :: June 16, 2010 - 1:05am

I think all data should be made available via CouchDB databases. - CouchDB is free, open-source, NoSQL database software by Apache. - It is schema-free, which is perfect for handling a variety of datasets (like CivicApps does) because it would not require any "normalization". - It can handle queries on very large datasets with minimal CPU usage because queries are executed differently than SQL. - Databases can be easily replicated to new servers. - Data is stored as JSON, which is simpler to parse than XML. If you've never heard of CouchDB, you should read up on it: http://couchdb.apache.org/

Snacky :: July 5, 2010 - 5:32pm

I gave a couple api methods a try via curl, and it worked. A question: Is the intention that each method's input parameter will be a bounding box, and output will be a feature collection? I'm thinking about an AI-based trader that would provide a virtualization layer on top of it.

dcolish :: July 30, 2010 - 2:27pm

Really, putting this stuff in google's FusionTables is pretty trivial. I've started doing that for a the crime data and neighborhood lines. see: http://tables.googlelabs.com/DataSource?dsrcid=224239 http://tables.googlelabs.com/DataSource?dsrcid=224239

Brandon77 :: September 28, 2010 - 2:34am

I absolutely agree with russ. CouchDB would be a great option to do that. Of course the biggest advantage is that it is open source. Moreover I just love how it handles queries, it is just working like charm. I would suggest to try this one for sure. I am just talking from my own practice in this industry. Regards, Brandon

christ mark :: October 25, 2010 - 3:23am

Hi,Its very best site for all.languages, staying closer to JSON and further away from SOAP would be preferable. Should it be a single API, that lets you choose a dataset, and returns data structure.I am using it from a long time.

cristy :: March 28, 2011 - 4:25am

Agreed with russ to workout this PAPI with crouchDB. As Brandon said the best point of crouchDB is that it's open source which can be used by anyone. It's easy to integrate in existing websites to provide the data virally to the public through any website as users want. And I think you guys want to do provide data easily to everyone through this API. At last but not least, is there any documentation provided to use this API?