---
title: Core Request Parameters & Objects
url: https://docs.kaltura.com/docs/rich-media-cms-apis/content-management/esearch-core-request-parameters-objects
---

## Core Request Parameters & Objects


Requests are built using specific Kaltura objects passed as form parameters.

* **`ks`** (String): Your valid Kaltura Session string.
* **`format`** (Integer): Response format. Use `1` for JSON (recommended).
* **`searchParams`** (Object): The primary container for your search criteria. The specific type depends on the action (e.g., `KalturaESearchEntryParams` for `searchEntry`).
    * **`searchOperator`** (Object, e.g., `KalturaESearchEntryOperator`): Defines the core search logic.
        * `operator` (Enum `KalturaESearchOperatorType`): How to combine the `searchItems`.
            * `1` (`AND_OP`): All conditions must be met.
            * `2` (`OR_OP`): At least one condition must be met.
            * `3` (`NOT_OP`): Excludes items matching the nested conditions (typically used within an AND/OR operator).
        * `searchItems` (Array): An array of one or more Search Item objects (see Section 7) defining the specific criteria.
    * **`orderBy`** (Object `KalturaESearchOrderBy`, optional): Defines sorting.
        * `orderItems` (Array): Each item specifies sorting. Use the **concrete** type for the search action: `KalturaESearchEntryOrderByItem` for `searchEntry`, `KalturaESearchCategoryOrderByItem` for `searchCategory`, `KalturaESearchUserOrderByItem` for `searchUser`, `KalturaESearchGroupOrderByItem` for `searchGroup`. The abstract `KalturaESearchOrderByItem` returns `OBJECT_TYPE_ABSTRACT`.
            * `sortField` (Enum, e.g., `KalturaESearchEntryOrderByFieldName`): Field like `created_at`, `plays`, `name`, `last_played_at`.
            * `sortOrder` (Enum `KalturaESearchSortOrder`): `asc` or `desc`.
    * **`aggregations`** (Object `KalturaESearchAggregation`, optional): Defines aggregations (see Example G in Section 8). Note the double nesting: `searchParams[aggregations][aggregations][0]` — the outer `aggregations` is the container object, the inner `aggregations` is the array of items.
        * `aggregations` (Array of `KalturaESearchAggregationItem`): Each item specifies:
            * `fieldName` (Enum, e.g., `KalturaESearchEntryAggregateByFieldName`): Field to group by, like `media_type`.
            * `size` (Integer): Max number of aggregation buckets to return.
* **`pager`** (Object `KalturaPager`, optional): Controls pagination.
    * `pageIndex` (Integer): The page number to retrieve (starts at 1).
    * `pageSize` (Integer): Number of results per page (default 30, max 500).
