OK @avibh! Let's help answer the 3 questions you posed earlier. The Ceilometer API started following some practices that we see in the Neutron APIs today. Specifically filters, queries, and sorting of results. We need to address this by augment `PaginationOptions` and potentially add some option classes.
1) Based on what I have read about the [`Simple`](http://docs.openstack.org/developer/ceilometer/webapi/v2.html#simple-query) versus [`Complex`](http://docs.openstack.org/developer/ceilometer/webapi/v2.html#complex-query) queries, I believe that you can use [`PaginationOptions.queryParameters`](https://github.com/jclouds/jclouds/blob/master/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/options/PaginationOptions.java#L37) to achieve the necessary results. At first pass, that is where I would start. 2) For the `MetersApi`, I would change the signatures to align with the other OpenStack APIs. As I mentioned in a previous comment, I would name it `MeterApi` and provide both a `list()` and a `list(ListOptions)`. It is simple and concise. :+1: 3) You should be able to utilize the `*Option` related classes in jclouds for binding the query params to the request. There are all sorts of these option classes in the codebase that you can use for referencethat allow you to pass/bind query parameters in the method. --- Reply to this email directly or view it on GitHub: https://github.com/jclouds/jclouds-labs-openstack/pull/166#issuecomment-61118728