REST interface for BPD-related resources - Saved Search Definitions Resource - POST Method

Use this method to create a saved search definition.

Sample method invocation

POST /rest/bpm/wle/v1/searches/tasks

Usage Notes

The saved search definition in JSON format is used for the payload when a saved search is created or updated. It is also used for defining an ad hoc search to be executed. This is the JSON object that is returned when a search is retrieved.

The list of valid values for the fields and sort parameters is based on the metadata fields returned from these REST APIs:

name
This property is always returned. When supplied as part of the payload, this property is used as follows:
  • Create: The name is required when a saved search definition is created.
  • Update: The property is optional.
  • Ad hoc execution: The property is optional. If you define thE property in the object used as input, the property is ignored by the API. When the API returns the object, the property is not set for ad hoc searches.

When the name is supplied as part of the payload to create or update the saved search name, the name is subject to validation rules. Examples of name validation rules:

  • The specified name must not be the same as the name of an existing saved search whose owner is the same as the requesting user. A user can own only one saved search of that name, whether the search is shared or not.
  • The name of a shared saved search must not be the same as the name of an existing saved search whose owner is 'any user' and that is marked as shared. Shared saved searches must have unique names.
  • The specified name must not be a number, to avoid name/identifier conflicts.
interaction
The filter to target different task categories (tasks available for claiming, claimed tasks, completed tasks, etc). The default value is all. The supported values are:
  • claimed: This value retrieves the tasks that are already claimed by the current user. The tasks that are contained in suspended process instances are excluded.
  • available: This value retrieves the tasks that can be claimed by the current user. The tasks that are contained in suspended process instances are excluded.
  • claimed_and_available: This value retrieves both the tasks that are claimed and the tasks that are available for claiming.
  • completed: This value retrieves the completed tasks that are claimed by the current user.
  • all: This value retrieves the tasks that the current user is allowed to see.
conditions
Represents the conditions of a saved search definition. The filters are eventually applied as SQL filters. With SQL filters, null values are considered 'unknown' and are ignored. A filter condition such as 'Owner Not Equal To XXX' is applied as 'Owner exists AND Owner Not Equal to XXX'. The valid values for the conditions field are based on the metadata fields returned from these REST APIs:
  • /rest/bpm/wle/v1/searches/tasks/meta/constraintFields
  • /rest/bpm/wle/v1/searches/tasks/meta/businessDataFields
The FullTextSearch 'operator' is used to perform a full text search. To search within a single field, provide a field name. To search across all fields of a task, omit the field name. When a field name is provided, only the fields from the above REST services that have the full_text_searchable argument set to true are allowed (searchable strings). The FullTextSearch 'value' can include multiple words. Each word can contain wildcards (*,?) or the fuzzy search indicator (~).

Parameters

None

Request content

A saved search definition to save (SavedSearchDefinition complexType).

The default content type is application/json.

MIME type: application/json


+ View schema
{
   "title":"Saved Search Definition",
   "description":"The saved search definition JSON.  This is the JSON that is returned when a search is retrieved, and the JSON that is used for the payload when saving or updating a search.",
   "type":"object",
   "properties":{
        "id":{
           "type":"string",
           "description":"The ID of the saved search definition. This field is always returned.  When supplied as part of the payload: Create: The ID should be omitted when creating a saved search definition. Update: This field is optional and if supplied the id must match the id of the saved search definition being updated.  Adhoc execution:  This if field is optional and if supplied it is ignored.",
           "required":false
        },
        "name":{
           "type":"string",
           "description":"The name of the saved search definition. This field is always returned. When supplied as part of the payload, the requirements differ based on the method.",
           "required":false
        },
        "owner":{
           "type":"string",
           "description":"The owner of the saved search definition. This field is always returned.  If not supplied, it will default to the current user.  The owner of a saved search is always authorized to work on the saved searches they own.  Note: Shared saved searches defined prior to 8570 will not have an owner saved. Shared saved searches, including those owned by other users or without a saved owner, can be created, updated and deleted by a saved search administrators.",
           "required":false
        },
        "organization":{
           "type":"string",
           "description":"A string that indicates how the search results are organized. The value is set to either 'byTask' or 'byInstance'.  Defaults if not provided to 'byTask'.",
           "enum":[
               "byTask",
               "byInstance"
           ],
           "required":false
        },
        "shared":{
           "type":"boolean",
           "description":"Indicates whether the saved search is shared.  Defaults if not provided to false",
           "required":false
        },
        "teams": {
           "type": "array",
           "description": "The team that the saved search is shared with.  If the saved search is shared an empty teams array indicates that the shared saved search is shared globally with everybody.  The array can optionally include one team to share the saved search with.  The teamId must be a team that the user is a member of or manager of.  Saved search administrators can share with any team.  Sharing with multiple teams may be supported in future releases.",
           "required":false,
           "properties" : {
                "teamId": {"type": "string",
                     "description": "The team id."
                },
                "teamName": {"type": "string",
                     "description": "The team name. Used in returned JSON and ignored if included as part of payload."
                },
                "processAppName": {"type": "string",
                     "description": "The process app where the team was defined / modeled. Used in returned JSON and ignored if included as part of payload."
                }
            }
        },
        "size":{
           "type":"integer",
           "description":"The predefined size of items to be retrieved.  Defaults if not provided to a value set in the system configuration.",
           "required":false
        },
        "interaction":{
           "type":"string",
           "description":"The filter to target different task categories (tasks available for claiming, claimed tasks, completed tasks, etc).  Defaults if not provided to 'all'.",
           "enum":[
               "claimed",
               "available",
               "claimed_and_available",
               "completed",
               "all"
           ],
           "required":false
        },
        "fields":{
           "type":"string",
           "description":"A list of fields to be returned when the saved search is executed.",
           "required":false
        },
        "aliases": {
           "type": "array",
           "description": "The aliases for business data fields of a saved search.",
           "required":false,
           "properties" : {
                "field": {"type": "string",
                          "description": "The business data field the alias is for."
                },
                "alias": {"type": "string",
                          "description": "The alias for the field."
                }
            }
        },
        "sort": {
           "type": "array",
           "description": "The sort order of the saved search definition.",
           "required":false,
           "properties" : {
                "field": {"type": "string",
                          "description": "The field to sort on."
                },
                "order": {"type": "string",
                          "description": "The order to sort on.",
                          "enum":[
                               "ASC",
                               "DESC"
                          ]
                }
            }
        },
        "conditions": {
           "type": "array",
           "description": "Represents the conditions of a saved search definition.",
           "required":false,
           "properties" : {
                "field": {"type": "string",
                     "description": "The field the condition is based on."
                },
                "operator": {"type": "string",
                     "description": "The operation to perform. There is a set list of valid values.",
                     "enum":[
                       "Equals",
                       "NotEquals",
                       "StartsWith",
                       "Contains",
                       "GreaterThan",
                       "LessThan",
                       "FullTextSearch"
                     ]
                },
                "value": {"type": "string",
                     "description": "The value of the condition."
                }
            }
        }
   }
}
+ View example content
{
   "name":"MySavedSearch",
   "interaction":"claimed_and_available",
   "fields":[
      "taskDueDate",
      "taskId",
      "taskSubject",
      "taskStatus",
      "taskPriority",
      "taskIsAtRisk",
      "taskAtRiskTime",
      "taskClosedDate",
      "taskActivityName",
      "assignedToUser",
      "assignedToRoleDisplayName",
      "instanceName",
      "instanceId",
      "instanceStatus",
      "instanceProcessApp",
      "instanceSnapshot",
      "bpdName",
      "department",
      "gmApproval",
      "hiringManager",
      "location"
   ],
   "aliases": [
      {
         "field":"bpdName",
         "alias":"Customer Specific Alias"
      }
   ],
   "sort":[
      {
         "field":"taskDueDate",
         "order":"ASC"
      }
   ],
   "conditions":[
      {
         "field":"taskDueDate",
         "operator":"LessThan",
         "value":"2016-03-02T05:00:00.000Z"
      }
   ],
   "organization":"byTask",
   "size":25,
   "shared":true,
   "teams":[
      {
         "teamId":"24.eb30156e-52c8-4ec5-9be6-02290d02f827",
         "teamName":"GeneralManagers",
         "processAppName":"Hiring Sample"
      }
   ]
}

MIME type: application/xml


+ View schema
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="http://rest.bpm.ibm.com/v1/data/savedsearchdefinition"
	elementFormDefault="unqualified" xmlns="http://www.w3.org/2001/XMLSchema" 
	xmlns:tns="http://rest.bpm.ibm.com/v1/data/savedsearchdefinition"
	xmlns:common="http://rest.bpm.ibm.com/v1/data/common" 
	xmlns:pref="http://rest.bpm.ibm.com/v1/data/root">


    <import schemaLocation="Common.xsd" namespace="http://rest.bpm.ibm.com/v1/data/common"/>
    <import schemaLocation="BPMRestData.xsd" namespace="http://rest.bpm.ibm.com/v1/data/root"/>

    <!-- 
     The saved search definition. This is the format that is returned when a search is retrieved, 
     and the format that is used for the payload when saving or updating a search.
    -->
    <complexType name="SavedSearchDefinition">
	    <complexContent>
	        <extension base="pref:Data"> 
	            <sequence>
	                <!-- 
                    The ID of the saved search definition.
                    This field is always returned.  When supplied as part of the payload:
		             Create:  The ID should be blank when creating a saved search definition.
		             Update:  Optional, if supplied the id must match the id of the saved search definition being updated.
		             Adhoc execution:  This field is optional, if supplied it is ignored."
                    -->
                    <element name="id" type="string" />
                    <!-- 
                    "The name of the saved search definition. 
                    This field is always returned. When supplied as part of the payload:
		             Create:  Required and must follow the name validation rules.
		             Update:	Optional, if supplied for the purpose of renameing, must follow the name validation rules
		             Adhoc execution:  This field is optional, if supplied it is ignored."
                    -->
                    <element name="name" type="string" />
                    <!-- 
                    The owner of the saved search definition. 
                     Create:  If a value is not set, the currently logged on user is set as the owner upon save.
                     Update:  Defaulting rules are applied. (pre 8570 did not have owner)
                    -->
                    <element name="owner" type="string" nillable="true"/>
					<!-- 
					A string that indicates how the search results are organized.
					The value is set to either "byTask" or "byInstance".  Defaults if not provided.
					-->
					<element name="organization" type="string" />
					<!-- Indicates whether the saved search is shared. Defaults if not provided. -->
                    <element name="shared" type="boolean" />
                    <!-- Indicates if the saved search is shared with a team or global -->
                    <element name="teams" type="tns:SavedSearchDefnTeam" minOccurs="0" maxOccurs="unbounded"/>
                    <!-- The pre-predefined size of items to be retrieved. -->
					<element name="size" type="integer" nillable="true" />
					<!-- 
					The filter to target different Saved Searches for different task categories 
					(team tasks, claimed tasks, closed tasks, etc). 
					-->
					<element name="interaction" type="string" nillable="true"/>
					<!--  fields or columns -->
					<element name="fields" type="string" minOccurs="0" maxOccurs="unbounded"/>
					<!--  business data aliases -->
					<element name="aliases" type="tns:SavedSearchDefnAlias" minOccurs="0" maxOccurs="unbounded"/>
					<!-- sort order  -->
					<element name="sort" type="tns:SavedSearchDefnSort" minOccurs="0" maxOccurs="3"/>
					<!-- search condition  -->
					<element name="conditions" type="tns:SavedSearchDefnCondition" minOccurs="0" maxOccurs="2"/>

                </sequence>
            </extension>
        </complexContent>
    </complexType>

    <!-- 
    This type represents the meta data of a saved search definition that is returned in list of definitions.
    -->
    <complexType name="SavedSearchDefinitionMetadata">
	    <complexContent>
	        <extension base="pref:Data"> 
	            <sequence>
	                <!-- 
                    The ID of the saved search definition.
                    If a value is not set, a new saved search definition is created upon save.
                    -->
                    <element name="id" type="string" />
                    <!-- 
                    The name of the saved search definition. 
                    -->
                    <element name="name" type="string" />
                    <!-- 
                    The owner of the saved search definition. 
                    -->
                    <element name="owner" type="string" nillable="true"/>
					<!-- 
					A string that indicates how the search results are organized.
					The value is set to either "byTask" or "byInstance".
					-->
					<element name="organization" type="string" />
					<!-- Indicates whether the saved search is shared -->
                    <element name="shared" type="boolean" />
                </sequence>
            </extension>
        </complexContent>
    </complexType>

     <!-- 
        A list of saved search definitions. 
    -->
    <complexType name="SavedSearchDefinitions">
        <complexContent>
            <extension base="pref:Data">
                <sequence>
                    <element name="definitions" type="tns:SavedSearchDefinitionMetadata" minOccurs="0" maxOccurs="unbounded"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>

    <!-- This type represents the sort order of a saved search definition. -->
    <complexType name="SavedSearchDefnSort">
		<sequence>
 			<!-- The field to sort on. -->
            <element name="field" type="string" />
            <!-- This will be set to "DESC" or "ASC". -->
            <element name="order" type="string" />
        </sequence>
    </complexType>
	
	<!-- This type represents the aliases for business data fields of a saved search. -->
    <complexType name="SavedSearchDefnAlias">
		<sequence>
			<!-- The business data field the alias is for. -->
            <element name="field" type="string" />
			<!-- The alias for the field. -->
            <element name="alias" type="string" />
        </sequence>
    </complexType>

    <!-- This type represents the conditions of a saved search definition. -->
    <complexType name="SavedSearchDefnCondition">
        <sequence>
            <!-- The field the condition is based on. -->
            <element name="field" type="string" />
            <!-- The operation to perform.  There is a set list of valid values. -->
            <element name="operator" type="string" />
            <!-- The value of the condition ". -->
            <element name="value" type="string" />
        </sequence>
    </complexType>

    <!-- This type represents the teams that are authorized or can execute a shared saved search definition. -->
    <complexType name="SavedSearchDefnTeam">
        <sequence>
            <!-- The team id. -->
            <element name="teamId" type="string" />
            <!-- The team name. -->
            <element name="teamName" type="string" />
            <!-- The process app where the team was defined / modeled". -->
            <element name="processAppName" type="string" />
        </sequence>
    </complexType>

   <!-- 
     This type represents individual meta data of the type requested that can be used in a saved or adhoc search definition.
     It is used to get a list of fields and meta data about those fields. It is filtered by type of meta data requested.
     This type is also used for simple enumerations, in which case type and full_text_searchable will be null.
    -->
    <complexType name="SearchDefinitionMetaData">
        <sequence>
            <!-- The field name. -->
            <element name="name" type="string" />
            <!-- The field's type with the type being one of the following:  String , Date, Time, Integer, Decimal, Boolean. -->
            <element name="type" type="string" />
            <!-- The attribute to indicate if this field may be used in a full text search. -->
            <element name="full_text_searchable" type="boolean" maxOccurs="1" minOccurs="0"/>
        </sequence>
    </complexType>

     <!-- 
        A list of meta data filtered by type that can be used in a saved or adhoc search definition
        It is filtered by type of meta data requested and the elements returned are determined by the type of meta data requested.
    -->
    <complexType name="SearchDefintionMetaDataResultsByType">
        <complexContent>
            <extension base="pref:Data">
                <sequence>
                    <element name="result" type="tns:SearchDefinitionMetaData" minOccurs="0" maxOccurs="unbounded"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>


   <!-- 
     A list of action policies or available actions a user has based on the Saved Search Definition.
    -->
    <complexType name="SavedSearchDefinitionUsersAvailableActions">
        <complexContent>
            <extension base="pref:Data">
                <sequence>
                    <element name="actions" type="string" minOccurs="0" maxOccurs="unbounded"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
</schema>
+ View example content
<data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns8="http://rest.bpm.ibm.com/v1/data/savedSearchDefinition" xsi:type="ns8:savedSearchDefinition">
        <name>mySavedSearchDefn</name>
        <owner>ownerUserName</owner>
        <organization>byTask</organization>
        <shared>true</shared>
        <teams>
			<teamId>24.da7e4d23-78cb-4483-98ed-b9c238308a03</teamId>
		</teams>
        <size>1000</size>
        <interaction>all</interaction>
        <fields>instanceName</fields>
        <fields>taskSubject</fields>
        <fields>taskStatus</fields>
        <fields>taskDueDate</fields>
        <fields>taskPriority</fields>
        <fields>taskClosedDate</fields>
        <fields>taskReceivedDate</fields>
		<aliases>
			<field>bpdName</field>
			<alias>Customer Specific Alias</alias>
		</aliases>
        <sort>
            <field>instanceName</field>
            <order>ASC</order>
        </sort>
        <sort>
            <field>taskStatus</field>
            <order>ASC</order>
        </sort>
        <conditions>
            <field>taskStatus</field>
            <operator>Equals</operator>
            <value>Received</value>
        </conditions>
</data>

Response content

A saved search definition (SavedSearchDefinition complexType).

The default content type is application/json.

MIME type: application/json


+ View schema
{
   "title":"Saved Search Definition",
   "description":"The saved search definition JSON.  This is the JSON that is returned when a search is retrieved, and the JSON that is used for the payload when saving or updating a search.",
   "type":"object",
   "properties":{
        "id":{
           "type":"string",
           "description":"The ID of the saved search definition. This field is always returned.  When supplied as part of the payload: Create: The ID should be omitted when creating a saved search definition. Update: This field is optional and if supplied the id must match the id of the saved search definition being updated.  Adhoc execution:  This if field is optional and if supplied it is ignored.",
           "required":false
        },
        "name":{
           "type":"string",
           "description":"The name of the saved search definition. This field is always returned. When supplied as part of the payload, the requirements differ based on the method.",
           "required":false
        },
        "owner":{
           "type":"string",
           "description":"The owner of the saved search definition. This field is always returned.  If not supplied, it will default to the current user.  The owner of a saved search is always authorized to work on the saved searches they own.  Note: Shared saved searches defined prior to 8570 will not have an owner saved. Shared saved searches, including those owned by other users or without a saved owner, can be created, updated and deleted by a saved search administrators.",
           "required":false
        },
        "organization":{
           "type":"string",
           "description":"A string that indicates how the search results are organized. The value is set to either 'byTask' or 'byInstance'.  Defaults if not provided to 'byTask'.",
           "enum":[
               "byTask",
               "byInstance"
           ],
           "required":false
        },
        "shared":{
           "type":"boolean",
           "description":"Indicates whether the saved search is shared.  Defaults if not provided to false",
           "required":false
        },
        "teams": {
           "type": "array",
           "description": "The team that the saved search is shared with.  If the saved search is shared an empty teams array indicates that the shared saved search is shared globally with everybody.  The array can optionally include one team to share the saved search with.  The teamId must be a team that the user is a member of or manager of.  Saved search administrators can share with any team.  Sharing with multiple teams may be supported in future releases.",
           "required":false,
           "properties" : {
                "teamId": {"type": "string",
                     "description": "The team id."
                },
                "teamName": {"type": "string",
                     "description": "The team name. Used in returned JSON and ignored if included as part of payload."
                },
                "processAppName": {"type": "string",
                     "description": "The process app where the team was defined / modeled. Used in returned JSON and ignored if included as part of payload."
                }
            }
        },
        "size":{
           "type":"integer",
           "description":"The predefined size of items to be retrieved.  Defaults if not provided to a value set in the system configuration.",
           "required":false
        },
        "interaction":{
           "type":"string",
           "description":"The filter to target different task categories (tasks available for claiming, claimed tasks, completed tasks, etc).  Defaults if not provided to 'all'.",
           "enum":[
               "claimed",
               "available",
               "claimed_and_available",
               "completed",
               "all"
           ],
           "required":false
        },
        "fields":{
           "type":"string",
           "description":"A list of fields to be returned when the saved search is executed.",
           "required":false
        },
        "aliases": {
           "type": "array",
           "description": "The aliases for business data fields of a saved search.",
           "required":false,
           "properties" : {
                "field": {"type": "string",
                          "description": "The business data field the alias is for."
                },
                "alias": {"type": "string",
                          "description": "The alias for the field."
                }
            }
        },
        "sort": {
           "type": "array",
           "description": "The sort order of the saved search definition.",
           "required":false,
           "properties" : {
                "field": {"type": "string",
                          "description": "The field to sort on."
                },
                "order": {"type": "string",
                          "description": "The order to sort on.",
                          "enum":[
                               "ASC",
                               "DESC"
                          ]
                }
            }
        },
        "conditions": {
           "type": "array",
           "description": "Represents the conditions of a saved search definition.",
           "required":false,
           "properties" : {
                "field": {"type": "string",
                     "description": "The field the condition is based on."
                },
                "operator": {"type": "string",
                     "description": "The operation to perform. There is a set list of valid values.",
                     "enum":[
                       "Equals",
                       "NotEquals",
                       "StartsWith",
                       "Contains",
                       "GreaterThan",
                       "LessThan",
                       "FullTextSearch"
                     ]
                },
                "value": {"type": "string",
                     "description": "The value of the condition."
                }
            }
        }
   }
}
+ View example content
{
   "status": "200",
   "data": {
        "id": "1052",
        "name":"MySavedSearch",
        "interaction":"claimed_and_available",
        "fields":[
            "taskDueDate",
            "taskId",
            "taskSubject",
            "taskStatus",
            "taskPriority",
            "taskIsAtRisk",
            "taskAtRiskTime",
            "taskClosedDate",
            "taskActivityName",
            "assignedToUser",
            "assignedToRoleDisplayName",
            "instanceName",
            "instanceId",
            "instanceStatus",
            "instanceProcessApp",
            "instanceSnapshot",
            "bpdName",
            "department",
            "gmApproval",
            "hiringManager",
            "location"
        ],
        "aliases": [
            {
                "field":"bpdName",
                "alias":"Customer Specific Alias"
            }
        ],
        "sort":[
            {
                "field":"taskDueDate",
                "order":"ASC"
            }
        ],
        "conditions":[
            {
                "field":"taskDueDate",
                "operator":"LessThan",
                "value":"2016-03-02T05:00:00.000Z"
            }
        ],
        "organization":"byTask",
        "size":25,
        "shared":true,
        "teams":[
            {
                "teamId":"24.eb30156e-52c8-4ec5-9be6-02290d02f827",
                "teamName":"GeneralManagers",
                "processAppName":"Hiring Sample"
            }
        ]
   }
}

MIME type: application/xml


+ View schema
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="http://rest.bpm.ibm.com/v1/data/savedsearchdefinition"
	elementFormDefault="unqualified" xmlns="http://www.w3.org/2001/XMLSchema" 
	xmlns:tns="http://rest.bpm.ibm.com/v1/data/savedsearchdefinition"
	xmlns:common="http://rest.bpm.ibm.com/v1/data/common" 
	xmlns:pref="http://rest.bpm.ibm.com/v1/data/root">


    <import schemaLocation="Common.xsd" namespace="http://rest.bpm.ibm.com/v1/data/common"/>
    <import schemaLocation="BPMRestData.xsd" namespace="http://rest.bpm.ibm.com/v1/data/root"/>

    <!-- 
     The saved search definition. This is the format that is returned when a search is retrieved, 
     and the format that is used for the payload when saving or updating a search.
    -->
    <complexType name="SavedSearchDefinition">
	    <complexContent>
	        <extension base="pref:Data"> 
	            <sequence>
	                <!-- 
                    The ID of the saved search definition.
                    This field is always returned.  When supplied as part of the payload:
		             Create:  The ID should be blank when creating a saved search definition.
		             Update:  Optional, if supplied the id must match the id of the saved search definition being updated.
		             Adhoc execution:  This field is optional, if supplied it is ignored."
                    -->
                    <element name="id" type="string" />
                    <!-- 
                    "The name of the saved search definition. 
                    This field is always returned. When supplied as part of the payload:
		             Create:  Required and must follow the name validation rules.
		             Update:	Optional, if supplied for the purpose of renameing, must follow the name validation rules
		             Adhoc execution:  This field is optional, if supplied it is ignored."
                    -->
                    <element name="name" type="string" />
                    <!-- 
                    The owner of the saved search definition. 
                     Create:  If a value is not set, the currently logged on user is set as the owner upon save.
                     Update:  Defaulting rules are applied. (pre 8570 did not have owner)
                    -->
                    <element name="owner" type="string" nillable="true"/>
					<!-- 
					A string that indicates how the search results are organized.
					The value is set to either "byTask" or "byInstance".  Defaults if not provided.
					-->
					<element name="organization" type="string" />
					<!-- Indicates whether the saved search is shared. Defaults if not provided. -->
                    <element name="shared" type="boolean" />
                    <!-- Indicates if the saved search is shared with a team or global -->
                    <element name="teams" type="tns:SavedSearchDefnTeam" minOccurs="0" maxOccurs="unbounded"/>
                    <!-- The pre-predefined size of items to be retrieved. -->
					<element name="size" type="integer" nillable="true" />
					<!-- 
					The filter to target different Saved Searches for different task categories 
					(team tasks, claimed tasks, closed tasks, etc). 
					-->
					<element name="interaction" type="string" nillable="true"/>
					<!--  fields or columns -->
					<element name="fields" type="string" minOccurs="0" maxOccurs="unbounded"/>
					<!--  business data aliases -->
					<element name="aliases" type="tns:SavedSearchDefnAlias" minOccurs="0" maxOccurs="unbounded"/>
					<!-- sort order  -->
					<element name="sort" type="tns:SavedSearchDefnSort" minOccurs="0" maxOccurs="3"/>
					<!-- search condition  -->
					<element name="conditions" type="tns:SavedSearchDefnCondition" minOccurs="0" maxOccurs="2"/>

                </sequence>
            </extension>
        </complexContent>
    </complexType>

    <!-- 
    This type represents the meta data of a saved search definition that is returned in list of definitions.
    -->
    <complexType name="SavedSearchDefinitionMetadata">
	    <complexContent>
	        <extension base="pref:Data"> 
	            <sequence>
	                <!-- 
                    The ID of the saved search definition.
                    If a value is not set, a new saved search definition is created upon save.
                    -->
                    <element name="id" type="string" />
                    <!-- 
                    The name of the saved search definition. 
                    -->
                    <element name="name" type="string" />
                    <!-- 
                    The owner of the saved search definition. 
                    -->
                    <element name="owner" type="string" nillable="true"/>
					<!-- 
					A string that indicates how the search results are organized.
					The value is set to either "byTask" or "byInstance".
					-->
					<element name="organization" type="string" />
					<!-- Indicates whether the saved search is shared -->
                    <element name="shared" type="boolean" />
                </sequence>
            </extension>
        </complexContent>
    </complexType>

     <!-- 
        A list of saved search definitions. 
    -->
    <complexType name="SavedSearchDefinitions">
        <complexContent>
            <extension base="pref:Data">
                <sequence>
                    <element name="definitions" type="tns:SavedSearchDefinitionMetadata" minOccurs="0" maxOccurs="unbounded"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>

    <!-- This type represents the sort order of a saved search definition. -->
    <complexType name="SavedSearchDefnSort">
		<sequence>
 			<!-- The field to sort on. -->
            <element name="field" type="string" />
            <!-- This will be set to "DESC" or "ASC". -->
            <element name="order" type="string" />
        </sequence>
    </complexType>
	
	<!-- This type represents the aliases for business data fields of a saved search. -->
    <complexType name="SavedSearchDefnAlias">
		<sequence>
			<!-- The business data field the alias is for. -->
            <element name="field" type="string" />
			<!-- The alias for the field. -->
            <element name="alias" type="string" />
        </sequence>
    </complexType>

    <!-- This type represents the conditions of a saved search definition. -->
    <complexType name="SavedSearchDefnCondition">
        <sequence>
            <!-- The field the condition is based on. -->
            <element name="field" type="string" />
            <!-- The operation to perform.  There is a set list of valid values. -->
            <element name="operator" type="string" />
            <!-- The value of the condition ". -->
            <element name="value" type="string" />
        </sequence>
    </complexType>

    <!-- This type represents the teams that are authorized or can execute a shared saved search definition. -->
    <complexType name="SavedSearchDefnTeam">
        <sequence>
            <!-- The team id. -->
            <element name="teamId" type="string" />
            <!-- The team name. -->
            <element name="teamName" type="string" />
            <!-- The process app where the team was defined / modeled". -->
            <element name="processAppName" type="string" />
        </sequence>
    </complexType>

   <!-- 
     This type represents individual meta data of the type requested that can be used in a saved or adhoc search definition.
     It is used to get a list of fields and meta data about those fields. It is filtered by type of meta data requested.
     This type is also used for simple enumerations, in which case type and full_text_searchable will be null.
    -->
    <complexType name="SearchDefinitionMetaData">
        <sequence>
            <!-- The field name. -->
            <element name="name" type="string" />
            <!-- The field's type with the type being one of the following:  String , Date, Time, Integer, Decimal, Boolean. -->
            <element name="type" type="string" />
            <!-- The attribute to indicate if this field may be used in a full text search. -->
            <element name="full_text_searchable" type="boolean" maxOccurs="1" minOccurs="0"/>
        </sequence>
    </complexType>

     <!-- 
        A list of meta data filtered by type that can be used in a saved or adhoc search definition
        It is filtered by type of meta data requested and the elements returned are determined by the type of meta data requested.
    -->
    <complexType name="SearchDefintionMetaDataResultsByType">
        <complexContent>
            <extension base="pref:Data">
                <sequence>
                    <element name="result" type="tns:SearchDefinitionMetaData" minOccurs="0" maxOccurs="unbounded"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>


   <!-- 
     A list of action policies or available actions a user has based on the Saved Search Definition.
    -->
    <complexType name="SavedSearchDefinitionUsersAvailableActions">
        <complexContent>
            <extension base="pref:Data">
                <sequence>
                    <element name="actions" type="string" minOccurs="0" maxOccurs="unbounded"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
</schema>
+ View example content
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<bpm:ResponseData xmlns:bpm="http://rest.bpm.ibm.com/v1/data" xmlns:ex="http://rest.bpm.ibm.com/v1/data/exception" xmlns:soc="http://rest.bpm.ibm.com/v1/data/social" xmlns:sys="http://rest.bpm.ibm.com/v1/data/system" xmlns:ug="http://rest.bpm.ibm.com/v1/data/usergroup">
    <status>200</status>
    <data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns8="http://rest.bpm.ibm.com/v1/data/savedSearchDefinition" xsi:type="ns8:SavedSearchDefinition">
		<id>1052</id>
		<name>SavedSearchDefinition_Example</name>
		<owner>ownerUserName</owner>
		<organization>byInstance</organization>
		<shared>true</shared>
		<teams>
			<teamId>24.da7e4d23-78cb-4483-98ed-b9c238308a03</teamId>
			<teamName>All Users</teamName>
			<processAppName>System Data</processAppName>
		</teams>
		<size>1000</size>
		<interaction>all</interaction>
		<fields>instanceName</fields>
		<fields>taskSubject</fields>
		<fields>taskStatus</fields>
		<fields>taskDueDate</fields>
		<fields>taskPriority</fields>
		<fields>taskClosedDate</fields>
		<fields>taskReceivedDate</fields>
		<fields>bpdName</fields>
		<aliases>
			<field>bpdName</field>
			<alias>Customer Specific Alias</alias>
		</aliases>
		<sort>
			<field>instanceName</field>
			<order>ASC</order>
		</sort>
		<sort>
			<field>taskStatus</field>
			<order>ASC</order>
		</sort>
		<conditions>
			<field>taskStatus</field>
			<operator>EQUAL</operator>
			<value>Received</value>
		</conditions>
    </data>
</bpm:ResponseData>

Error Response content

Detailed error information.

The default content type is application/json.

MIME type: application/json


+ View schema
{  "description": "WLE Error Response", 
   "type": "object",
   "properties":
   {  "status": {"type": "string",
         "description": "The status of the previous API call."
      },
      "exceptionType": {"type": "string",
         "description": "The classname associated with the exception."
      },
      "errorNumber": {"type": "string",
         "description": "Message ID of the exception."
      },
      "errorMessage": {"type": "string",
         "description": "Message text of the exception."
      },
      "errorMessageParameters": {"type": ["string"], "optional": true,
         "description":"Message text parameters of the exception."
      },
      "programmersDetails": {"type": "object", "optional": true,
         "description":"Additional exception details, for example, a stack trace."
      }
   }
} 

MIME type: application/xml


+ View schema
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="http://rest.bpm.ibm.com/v1/data/exception"
	elementFormDefault="unqualified" xmlns="http://www.w3.org/2001/XMLSchema"
	xmlns:tns="http://rest.bpm.ibm.com/v1/data/exception"
	xmlns:dat="http://rest.bpm.ibm.com/v1/data/root">

    <import schemaLocation="BPMRestData.xsd" namespace="http://rest.bpm.ibm.com/v1/data/root" />
    
    <!--
	This type represents an error response.
    -->    
    <element name="RestRuntimeException">
	<complexType>
	    <sequence>
		<element name="status" type="string"/>
		<element name="Data" type="tns:ExceptionData">
    		</element>
	    </sequence>
	</complexType>
    </element>

    <!-- 
	 This type contains detailed error information associated with an exception.
    -->
    <complexType name="ExceptionData">
	<sequence>
	    <element name="status" type="string"/>

	    <!-- This specifies the java class name of the exception -->
	    <element name="exceptionType" type="string"/>

	    <!-- The message ID of the error message -->
	    <element name="errorNumber" type="string" minOccurs="0"/>

	    <!-- The complete error message -->
	    <element name="errorMessage" type="string"/>

	    <!-- The list of strings inserted into the error message -->
	    <element name="errorMessageParameters" type="string" minOccurs="0" maxOccurs="unbounded"/>

	    <!-- 
		 The stacktrace associated with the exception.
		 Note that this will be omitted unless the "server-stacktrace-enabled" property
		 is enabled in the server's 100Custom.xml file.
	    -->     
	    <element name="programmersDetails" type="string"></element>
	    
	    <!-- Prior responses.  Set if a bulk command was used -->
	    <element name="responses" type="dat:BulkCommandResponses" minOccurs="0"></element>

            <element name="errorData" type="tns:ErrorData" minOccurs="0" />
	</sequence>
    </complexType>

    <complexType name="ErrorData">
        <sequence>
            <element name="code" type="string" />
            <element name="data" type="string" minOccurs="0" />
        </sequence>
    </complexType>
    
</schema>

Status codes

The method returns one of the following status codes:
CodeDescription
201 Created
Successfully created.
400 Bad Request
Bad Request
403 Forbidden
The caller is not authorized to perform this operation.
404 Not Found
The saved search definition does not exist.
406 Not AcceptableThe requested content type or content encoding is not supported.
409 Conflict
Bad Request. See the details provided.
415 Unsupported Media TypeThe content type or content encoding of the request is not supported.
500 Internal Server Error
Internal Server Error. See the details provided.

Available since

8.5.7

Parent Topic: Saved Search Definitions Resource