Background
Platform REST Services support the execution of verbose search requests through a searchinfo request parameter that takes in details in a XML format. For instance, to get assets based on a date attribute [for example Due date] along with comparison operators usage like IS_AFTER/IS_BEFORE/…, execute the following GET request-
 
{{PROTOCOL}}://{{MACHINE_NAME}}:{{PORT}}/rest/service/search?searchinfo=
<searchInfo>
            <queryConditionList>
                        <queryCondition nestingLevel="1" logicalOperator="AND" comparisonOperator="IS_AFTER" type="DATE_ATTR_CONDITION" negated="false">
                                    <searchAttribute id="41"/>
                                    <searchValue>2017-06-08</searchValue>
                        </queryCondition>
                        <queryCondition nestingLevel="2" logicalOperator="AND" comparisonOperator="IS_BEFORE" type="DATE_ATTR_CONDITION" negated="false">
                                    <searchAttribute>Due date</searchAttribute>
                                    <searchValue>2017-06-14</searchValue>
                        </queryCondition>
            </queryConditionList>
            <queryDisplay displayMode="PLAIN" exploreMode="PLAIN">
                        <displayColumnList>
                                    <displayColumn columnId="2" width="175" attributeColumn="true">Name</displayColumn>
                                    <displayColumn width="150" attributeColumn="true">Routed to</displayColumn>
                                    <displayColumn width="150" attributeColumn="true">Created&lt;/displayColumn&gt;
                                    <displayColumn columnId="4" width="150" attributeColumn="true">Last modified</displayColumn>
                                    <displayColumn columnId="6" width="150" attributeColumn="true">Last modifier</displayColumn>
                                    <displayColumn columnId="55" width="150" attributeColumn="true">Collection</displayColumn>
                        </displayColumnList>
                        <sortInfoList>
                                    <sortInfo columnId="2" order="ascending" attributeColumn="true">Name</sortInfo>
                        </sortInfoList>
            </queryDisplay>
</searchInfo>
 
The execution of above REST request will return all the Platform assets with Due date after 2017-06-08 but before  2017-06-14.
 
In general, the <searchInfo/> XML needs to be constructed in such a manner, where

  • query conditions are declared in <queryConditionList/>
  • attribute to be searched is declared in <searchAttribute/>
  • define comparison operators like after/before/.. in comparisonOperator attribute
  • define asset metadata that is to be retrieved (for each asset) in <displayColumnList>
  • define <sortInfoList> for sorting the asset results
  • It is optional to mention either the attribute id or name in the <searchAttribute>,<displayColumn> and <sortInfo> nodes.