About URI Parameters

When constructing a URI, there are a number of optional parameters available to manage response results. Some parameters are described in the following table.

Parameter Description

PageSize

Used only for the GET operation. The PageSize parameter is the integer that tells the Siebel Server how many records to return. If you query all the Siebel contacts whose last name starts with the letter A and you do not want to get too many records (for performance reasons), then you can restrict the number of records returned. You restrict the number of records returned by setting the PageSize parameter to a reasonable number. The default value is 10. If you do not set a value for this parameter, then query will return only 10 records.

All records that match the search criteria are returned. For example, PageSize=20 returns only twenty contact records, even if more exist in the Siebel database. If fewer records exist that match that search criteria, then all records are returned (but no more than twenty).

Note: It is recommended that you retrieve the lowest number of records required for any one call. The more records that are returned, the larger the message and the slower the response. The maximum number of records cannot exceed 100.

StartRowNum

Used only for the GET operation. The StartRowNum parameter is used when there is a need to start returning records at a specific row. For example, StartRowNum=100 starts at row 100 of the record set. The first number in a record set is zero, therefore, this request starts at record 99 (given you start counting from one for the first record).

The default value and returns the records from beginning.

This parameter is useful for paging through a record set N records at a time. For example, if there are 100 records in a record set, but you want to retrieve only ten at a time, then enter StartRowNum=0 and PageSize=10 on the first call, then StartRowNum=10 on the next call, then StartRowNum=20 on the next call, and so on.

fields

Used for only GET or Query operations to specify a comma-separated list of property names (fields) that are required in the REST API response. The response contains only the files given in this list irrespective of fields available in the source being queried.

searchspec

Used to include search specifications in the REST API response.

ViewMode

Used as an access control that controls users access to data and application functionality. Values include:

  • Personal

  • Sales Rep
  • Organization
  • Group
  • Catalog

For more information about access controls, see About Access Controls for Siebel Business Component REST Requests.

childlinks

Used for only GET or Query operations to specify a comma-separated list of child Business Components that require links returned in the REST API response. The response returns only links to child objects specified in this parameter value.

For more information on the childlinks parameter, see Querying for a Siebel CRM Repository Resource To Return Only One Child Link.

uniformresponse

Used for only GET or Query operations to specify a consistent interface to the consumers and enable them to use a single parser for responses of requests of similar type. The response returns one or more records wrapped in an array. It is passed as a query parameter with a case insensitive value for the flag as Y or Yes. For example, URI: data/Account/Account/?searchspec=([Location] LIKE 'HQ' AND [Account Status]='Active’)&uniformresponse=y

For examples of uniformresponse, see Using Siebel REST API to Access Siebel Business Objects JSON Examples.

workspace&version

Used to set the developer or integration workspace name and corresponding version in REST or SOAP URI, such as workspace=dev_sadmin&version=7, to indicate opening the seventh version of the dev_sadmin developer workspace. By using this parameter, you can see your changes to the metadata even before delivering them. An example of metadata change is inactivating an object in developer workspace and previewing this change before delivery in the same workspace or after delivery in integration workspace. In this way, you can switch between metadata of different branches without invalidating sessions. The broad combination of workspace and version yield the following results:

  • If you indicate both workspace and its version, such as workspace=dev_sadmin&version=7, then the specific version of requested workspace displays. You can either inspect developer-bound changes or view integration changes for a specific version, allowing you to navigate newer or older versions to access required metadata.

  • If you indicate only a workspace name, such as workspace=dev_sadmin, then the latest version of the requested workspace displays.

  • If you do not indicate this parameter then the URI will work with the default integration branch configured for the EAI object manager component used for REST.

For examples of this parameter for REST API, see Using the Developer Workspace Parameter to Preview Changes Without Compiling to the Repository. For similar examples for SOAP, see Integration Platform Technologies: Siebel Enterprise Application Integration.

ExecutionMode

Used with a GET operation where a query can select more than 9900 records.

If you use a regular GET REST API to select more than 9900 records, then it will fail and will cause an error. To execute this operation correctly, you must pass the ExecutionMode query parameter.

The ExecutionMode parameter can take one of the following values:
  • BiDirectional. This is the default value.

  • ForwardOnly. This value is more efficient than Bidirectional. It is recommended that you use Forward Only in cases where you must process a large number of records in the forward direction only, for example report generation. For operations that are likely to return more than 10000 records, use ForwardOnly to avoid errors.

    In the following example ForwardOnly is used with the ExecutionMode parameter:

    http://ServerName:port/siebel/v1.0/data/Account/Account?PageSize=100&StartRowNum=9950&ExecutionMode=ForwardOnly
    Note: When using the query parameter ExecutionMode with ForwardOnly, do not use the recordcountneeded parameter with the value set to true. The query recordcountneeded=true works only with the value BiDirectional.

    For more information on the ExecutionMode parameter, see Integration Platform Technologies: Siebel Enterprise Application Integration.

excludeEmptyFieldsInResponse

Used to remove empty fields in REST API responses. As a result, the response body size is reduced. By default, if you do not use this parameter, both empty and complete fields are displayed in the REST response. This applies to data, service, workspace, and workflow REST APIs.

The excludeEmptyFieldsInResponse query parameter takes the following values:
  • True, yes, Y. These values remove all empty fields present in the REST response.

  • False, no, N. These values do not remove any fields from the REST response. This is the default value.

In the following example the excludeEmptyFieldsInResponse parameter is set to true:

http://ServerName:port/siebel/v1.0/data/Account/Account?excludeEmptyFieldsInResponse=true

The syntax for using URI parameters is the parameter name followed by an equal sign (=) with the value of the parameter, and each parameter is separated from other parameters by an ampersand (&). For example, if you want to set the PageSize parameter to 100 and the StartRowNum parameter to 0 (zero), then you enter: Pagesize=100&StartRowNum=0