CMDBuild Forum

Are REST query/filter functionality missing?

Hello.

Thank you for the product, it looks good and we try adopt it to feet our needs.
 
Meantime in integration documentation (http://www.cmdbuild.org/file/manuali/webservice-manual-in-english) I  found description of Query object with filter condition but it unfortunately do not listed in REST variant. Why? Will it planned?
Dear Pavel,
 
do you mean Query object for SOAP web services? If so, if you look at the WADL, you'll find something like this:
 
<resource path="/classes/{classId}/cards/">
    <param name="classId" style="template" type="xs:string"/>
    <method name="GET">
        <request>
            <param name="filter" style="query" type="xs:string"/>
            <param name="sort" style="query" type="xs:string"/>
            <param name="limit" style="query" type="xs:int"/>
            <param name="start" style="query" type="xs:int"/>
        </request>
    <response>
        <representation mediaType="application/json" element="prefix1:responseMultiple"/>
    </response>
</method>
...
</resource>
 
The "filter" param is like the Query object but in the same format used from standard interface. So it has advanced filter, full text and CQL search capabilities. Unfortunatly it's not documented within manual, so, at the moment, you must do some tests using standard interface and looking at the requests using a debugger.
 
Best regards.
 
-- CMDBuild Team
 
Previously Pavel wrote:
Hello.
Thank you for the product, it looks good and we try adopt it to feet our needs.
 
Meantime in integration documentation (http://www.cmdbuild.org/file/manuali/webservice-manual-in-english) I  found description of Query object with filter condition but it unfortunately do not listed in REST variant. Why? Will it planned?
Hello, Tecnoteca
Thank you very much for the answer.
I already did some experiments and found it in WADL and then in browser requests. It seems promising.
Is there CQL documentation for filtering? For example I search transitive filtering, which can't do also in interface.
I'll illustrate what I want.
Say we have Company class and their servers (Host class). Company have field type (production/test). Host class have relation to Company and type attribute. In Company many hosts.
I want select Hosts by some Attributes of Company it relates. Is it possible?
For example: "All hosts of companies in production", off course further filtering by current object attributes will be needed too, f.e. "All hosts of companies in test with type of host =…".
 
In web-interface filtering I see relation filter builder, but it allow only select "No one", "Any" or "Selection" - in any case it is only to set of companies, without its "subselect".
 
With best wishes, Pavel Alexeev
 
Previously Tecnoteca wrote:
Dear Pavel,
 
do you mean Query object for SOAP web services? If so, if you look at the WADL, you'll find something like this:
 
<resource path="/classes/{classId}/cards/">
    <param name="classId" style="template" type="xs:string"/>
    <method name="GET">
        <request>
            <param name="filter" style="query" type="xs:string"/>
            <param name="sort" style="query" type="xs:string"/>
            <param name="limit" style="query" type="xs:int"/>
            <param name="start" style="query" type="xs:int"/>
        </request>
    <response>
        <representation mediaType="application/json" element="prefix1:responseMultiple"/>
    </response>
</method>
...
</resource>
 
The "filter" param is like the Query object but in the same format used from standard interface. So it has advanced filter, full text and CQL search capabilities. Unfortunatly it's not documented within manual, so, at the moment, you must do some tests using standard interface and looking at the requests using a debugger.
 
Best regards.
 
-- CMDBuild Team
 
Previously Pavel wrote:
Hello.
Thank you for the product, it looks good and we try adopt it to feet our needs.
 
Meantime in integration documentation (http://www.cmdbuild.org/file/manuali/webservice-manual-in-english) I  found description of Query object with filter condition but it unfortunately do not listed in REST variant. Why? Will it planned?

 

Hi,

 

I would be really interested to in a documentation of how to use the filter possibilities with the REST interface.

 

For example:

I am trying to find some specific classes containing an attribute value, with following payload in the GET request:

'{"filter": {"attribute": "Description","operator":"contain","value":["SomeValue"],"parameterType":"fixed" }}' to endpoint /classes/<ClassID>/cards

But didn't succeed (getting back all cards).

 

Which other operators are available? Whats the json format for AND, OR, CONTAIN, or whatever operator is available?

 

Thanks and regards

 

 

Previously Pavel wrote:
Hello, Tecnoteca
Thank you very much for the answer.
I already did some experiments and found it in WADL and then in browser requests. It seems promising.
Is there CQL documentation for filtering? For example I search transitive filtering, which can't do also in interface.
I'll illustrate what I want.
Say we have Company class and their servers (Host class). Company have field type (production/test). Host class have relation to Company and type attribute. In Company many hosts.
I want select Hosts by some Attributes of Company it relates. Is it possible?
For example: "All hosts of companies in production", off course further filtering by current object attributes will be needed too, f.e. "All hosts of companies in test with type of host =…".
 
In web-interface filtering I see relation filter builder, but it allow only select "No one", "Any" or "Selection" - in any case it is only to set of companies, without its "subselect".
 
With best wishes, Pavel Alexeev
 
Previously Tecnoteca wrote:
Dear Pavel,
 
do you mean Query object for SOAP web services? If so, if you look at the WADL, you'll find something like this:
 
<resource path="/classes/{classId}/cards/">
    <param name="classId" style="template" type="xs:string"/>
    <method name="GET">
        <request>
            <param name="filter" style="query" type="xs:string"/>
            <param name="sort" style="query" type="xs:string"/>
            <param name="limit" style="query" type="xs:int"/>
            <param name="start" style="query" type="xs:int"/>
        </request>
    <response>
        <representation mediaType="application/json" element="prefix1:responseMultiple"/>
    </response>
</method>
...
</resource>
 
The "filter" param is like the Query object but in the same format used from standard interface. So it has advanced filter, full text and CQL search capabilities. Unfortunatly it's not documented within manual, so, at the moment, you must do some tests using standard interface and looking at the requests using a debugger.
 
Best regards.
 
-- CMDBuild Team
 
Previously Pavel wrote:
Hello.
Thank you for the product, it looks good and we try adopt it to feet our needs.
 
Meantime in integration documentation (http://www.cmdbuild.org/file/manuali/webservice-manual-in-english) I  found description of Query object with filter condition but it unfortunately do not listed in REST variant. Why? Will it planned?

 

 

Dear Hannes,
 
we plan to add more information in the next version of the manual. In the meantime you can use the user interface (management module) for filtering cards using ad advanced filter. Doing so you can build the filter you want and, looking at the HTTP request, extracting it.
 
Best regards.
 
-- CMDBuild Team
 
Previously Hannes wrote:

Hi,

 

I would be really interested to in a documentation of how to use the filter possibilities with the REST interface.

 

For example:

I am trying to find some specific classes containing an attribute value, with following payload in the GET request:

'{"filter": {"attribute": "Description","operator":"contain","value":["SomeValue"],"parameterType":"fixed" }}' to endpoint /classes/<ClassID>/cards

But didn't succeed (getting back all cards).

 

Which other operators are available? Whats the json format for AND, OR, CONTAIN, or whatever operator is available?

 

Thanks and regards

 

 

Previously Pavel wrote:
Hello, Tecnoteca
Thank you very much for the answer.
I already did some experiments and found it in WADL and then in browser requests. It seems promising.
Is there CQL documentation for filtering? For example I search transitive filtering, which can't do also in interface.
I'll illustrate what I want.
Say we have Company class and their servers (Host class). Company have field type (production/test). Host class have relation to Company and type attribute. In Company many hosts.
I want select Hosts by some Attributes of Company it relates. Is it possible?
For example: "All hosts of companies in production", off course further filtering by current object attributes will be needed too, f.e. "All hosts of companies in test with type of host =…".
 
In web-interface filtering I see relation filter builder, but it allow only select "No one", "Any" or "Selection" - in any case it is only to set of companies, without its "subselect".
 
With best wishes, Pavel Alexeev
 
Previously Tecnoteca wrote:
Dear Pavel,
 
do you mean Query object for SOAP web services? If so, if you look at the WADL, you'll find something like this:
 
<resource path="/classes/{classId}/cards/">
    <param name="classId" style="template" type="xs:string"/>
    <method name="GET">
        <request>
            <param name="filter" style="query" type="xs:string"/>
            <param name="sort" style="query" type="xs:string"/>
            <param name="limit" style="query" type="xs:int"/>
            <param name="start" style="query" type="xs:int"/>
        </request>
    <response>
        <representation mediaType="application/json" element="prefix1:responseMultiple"/>
    </response>
</method>
...
</resource>
 
The "filter" param is like the Query object but in the same format used from standard interface. So it has advanced filter, full text and CQL search capabilities. Unfortunatly it's not documented within manual, so, at the moment, you must do some tests using standard interface and looking at the requests using a debugger.
 
Best regards.
 
-- CMDBuild Team
 
Previously Pavel wrote:
Hello.
Thank you for the product, it looks good and we try adopt it to feet our needs.
 
Meantime in integration documentation (http://www.cmdbuild.org/file/manuali/webservice-manual-in-english) I  found description of Query object with filter condition but it unfortunately do not listed in REST variant. Why? Will it planned?