decouple api from datasource

The datasource was tied to front-end api causing single client to control bucket that is used to return data.
this change allows clients to specify which bucket data should be returned from