queryable interface for api