ResEnv / chain-api

RESTful sensor API
MIT License
39 stars 16 forks source link

Allow clients to specify time ranges in data queries #80

Open ssfrr opened 7 years ago

ssfrr commented 7 years ago

We currently only support going through sensor data page-by-page with the prev, next, first, and last links. We should add official support for user-specified ranges with query parameters and templated links. Currently the data link looks like:

http://chain-api.media.mit.edu/scalar_data/?sensor_id=3689

The proposed new link would be:

http://chain-api.media.mit.edu/scalar_data/?sensor_id=3689{&timestamp__gte,timestamp__lt}

This conforms to the IETF RFC for templated URIs.

If a client requests the URI with the {&timestamp__gte,timestamp__lt} part present, we'd just ignore everything in the braces, so non-template-aware clients can continue to treat the link as an opaque string.

We'll also want to add support to chainclient.py: ssfrr/chainclient.py#4