This code is not production ready. Pilotfish developers are practicing README driven development, so this documentation is being written before the code is actually done. :) If the project interests you and you would like to be notified when the first release is ready, let us know. TODO: Link to newsletter signup.
This is the API for the pilotfish user experience platform, that supports any plugins that require a server side component. It also supports the pilotfish-console, which is a thick client frontend for all the data in this api.
Pilotfish has a platform-as-a-service that runs at api.pilotfish.io (recommended), and it runs this code in a reliable, scalable environment. If you would like to run the API in your own environment, see Running the API on your own.
Using the API
For full examples, see the tests or the documentation
Scribbled quickly, to paint a picture of what kinds of things we might support:
- basic info
- config for what modules they want enabled (input via the)
- /api/v1/events (everything you would need to support Mix Panel or Kiss Metrics)
- custom defined
- events with arbitrary data
- goals/success/failure (for funnel analysis)
- /api/v1/events/query - get stats back on the above
- store arbitrary key / values for that user - publisher can do whatever they want with it to personalize data.
- user auth
Oauth2 and API key?
Running the API on your own
- node >= 0.8?
- https://github.com/walmartlabs/hapi ?
git clone https://github.com/pilotfish/pilotfish-api.git cd pilotfish-api npm install
There is a full test harness that exercises all of the functionality of the API.
npm test will start the server, issue http requests, and check the results for the expected behavior. These tests will be run upon every commit with travis-ci (see build status icon at the top)
- The docs
- Google Group
- File issues on github