The level parameter to streams is kind of useful, but confusing as using it drops the start and end times. So a query with level=2 gives back CO_JSC, but doesn't give back the earliest start time and latest end time of all streams from CO.JSC. Perhaps that is too resource intensive. But if so it might be better to separate the functionality, so /streamids would accept a level parameter, but only returns a list of stream ids. Then the /streams query would only return channels, ie no level allowed, but would accept the match parameter to limit if desired. This makes the difference a little clearer to clients.
Alternatively, calculating the start/end times for different levels would also be useful, but potentially more work for the server.
The level parameter to streams is kind of useful, but confusing as using it drops the start and end times. So a query with level=2 gives back CO_JSC, but doesn't give back the earliest start time and latest end time of all streams from CO.JSC. Perhaps that is too resource intensive. But if so it might be better to separate the functionality, so /streamids would accept a level parameter, but only returns a list of stream ids. Then the /streams query would only return channels, ie no level allowed, but would accept the match parameter to limit if desired. This makes the difference a little clearer to clients.
Alternatively, calculating the start/end times for different levels would also be useful, but potentially more work for the server.