---
updatedAt: 2026-06-29T11:55:55.000Z
agentTools:
  projectIndex: https://docs.biot-med.com/llms.txt
---

# Search Restore entities by filter

Search Restore entities by filter

Returns list of Restore, the response can be filtered, sorted and supports pagination


**For more information and examples on creating search requests, click <a href="https://docs.biot-med.com/docs/using-biot-search-apis" target="_blank">here.</a>**
## Filter
Each additionalProp can filter one field, inside additionalProp there are many optional conditions that can be used for filtering that field

By using the logical additionalProps $AND, $OR, $NOT, you can add complex nested logic filters. When sending these props, you must send only the nested filter field inside the filter value. This will allow you to group additional filters using logical AND/OR/NOT operators. When not sending a logic prop (including when not sending a nested logic prop), the props are bundled together using logical AND operators, this means that only the items that match all filter conditions for that field will be returned.

***filter*** items possible values: [ *name*,*backupVersion*,*buildNumber*,*errorMessage*,*status*,*creationTime*,*lastModifiedTime* ] 

## Sort
Results can be sorted by multiple fields, the order of the fields in the sort request governs the hierarchy of the sort

The first field is the primary sort, the second is used when two values of the first field are the same, and so forth

***sort.order*** default value is DESC

***sort.prop*** possible values:[ *name*,*backupVersion*,*buildNumber*,*errorMessage*,*status*,*creationTime*,*lastModifiedTime* ]

If sort was not specified, the result will be sorted by: creationTime DESC

## Free text search
When freeTextSearch is passed, the free text search will be performed on every field except those of type Date

If used together with filters, freeTextSearch will be bundled to the filters with the logical AND operator, this means that only items that match all filters (and each filter's conditions) and the free text search will be returned

## Page
***limit*** max number of results that will be returned for each page. If not specify, the default will be 100

***page*** page number starting from 0. If not specify, the default will be 0

## Build URL
Encode the JSON object and use the encoded string as the searchRequest parameter:

https://&lt;URL&gt;?searchRequest=<ENCODED_JSON_STRING>

Query Parameters:

| Parameter   |Type   | Mandatory| Description          | Example   |
|-------------|-------|----------|----------------------|-----------|
|searchRequest||false|Search request parameters: filter, sort and page||


This API requires **SETTINGS_SEARCH_RESTORES** permission(s).



# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "BioT Settings Service",
    "description": "APIs document description for Settings service",
    "version": "2.59.1"
  },
  "servers": [
    {
      "url": "/settings"
    }
  ],
  "paths": {
    "/v1/system/restore/executions": {
      "get": {
        "tags": [
          "Backup API"
        ],
        "summary": "Search Restore entities by filter",
        "description": "Search Restore entities by filter\n\nReturns list of Restore, the response can be filtered, sorted and supports pagination\n\n\n**For more information and examples on creating search requests, click <a href=\"https://docs.biot-med.com/docs/using-biot-search-apis\" target=\"_blank\">here.</a>**\n## Filter\nEach additionalProp can filter one field, inside additionalProp there are many optional conditions that can be used for filtering that field\n\nBy using the logical additionalProps $AND, $OR, $NOT, you can add complex nested logic filters. When sending these props, you must send only the nested filter field inside the filter value. This will allow you to group additional filters using logical AND/OR/NOT operators. When not sending a logic prop (including when not sending a nested logic prop), the props are bundled together using logical AND operators, this means that only the items that match all filter conditions for that field will be returned.\n\n***filter*** items possible values: [ *name*,*backupVersion*,*buildNumber*,*errorMessage*,*status*,*creationTime*,*lastModifiedTime* ] \n\n## Sort\nResults can be sorted by multiple fields, the order of the fields in the sort request governs the hierarchy of the sort\n\nThe first field is the primary sort, the second is used when two values of the first field are the same, and so forth\n\n***sort.order*** default value is DESC\n\n***sort.prop*** possible values:[ *name*,*backupVersion*,*buildNumber*,*errorMessage*,*status*,*creationTime*,*lastModifiedTime* ]\n\nIf sort was not specified, the result will be sorted by: creationTime DESC\n\n## Free text search\nWhen freeTextSearch is passed, the free text search will be performed on every field except those of type Date\n\nIf used together with filters, freeTextSearch will be bundled to the filters with the logical AND operator, this means that only items that match all filters (and each filter's conditions) and the free text search will be returned\n\n## Page\n***limit*** max number of results that will be returned for each page. If not specify, the default will be 100\n\n***page*** page number starting from 0. If not specify, the default will be 0\n\n## Build URL\nEncode the JSON object and use the encoded string as the searchRequest parameter:\n\nhttps://&lt;URL&gt;?searchRequest=<ENCODED_JSON_STRING>\n\nQuery Parameters:\n\n| Parameter   |Type   | Mandatory| Description          | Example   |\n|-------------|-------|----------|----------------------|-----------|\n|searchRequest||false|Search request parameters: filter, sort and page||\n\n\nThis API requires **SETTINGS_SEARCH_RESTORES** permission(s).\n\n",
        "operationId": "searchRestoreExecutions",
        "parameters": [
          {
            "name": "searchRequest",
            "in": "query",
            "description": "Search request parameters: filter, sort and page",
            "required": false,
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/SearchRequestV2"
                }
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The below table describes the response parameters:\n\n| Parameter   |Type   |Description          | Example   |\n|-------------|-------|---------------------|-----------|\n|data|array|List of items that match the search request||\n|data[index]|array|List of items that match the search request||\n|data[index].name|string|The name of the backup, it will also be the folder in which the backup is saved|Backup-01-02-2024|\n|data[index].backupVersion|string|The biot version of the backup|2.3.11|\n|data[index].errorMessage|string|An error thrown in the backup/restore process|No internet connection|\n|data[index].buildNumber|integer|The build number of the backup/restore job in the pipeline|12345|\n|data[index].lastModifiedTime|string|A UTC date-time in the ISO-8601 format|2007-12-20T10:15:30Z|\n|data[index].creationTime|string|A UTC date-time in the ISO-8601 format|2007-12-20T10:15:30Z|\n|data[index].status|string|The status of the restore|SUCCESS|\n|metadata|object|||\n|metadata.sort|array|Sort that was passed in the request||\n|metadata.sort[index]|array|Sort that was passed in the request||\n|metadata.sort[index].prop|string|The property name for the sort||\n|metadata.sort[index].order|string|The direction of sort. Default DESC Values:ASC,DESC|ASC|\n|metadata.filter|object|The filter that was passed in the request||\n|metadata.page|object|||\n|metadata.page.totalResults|integer|The total number of items that match the query|145|\n|metadata.page.page|integer|Page number|3|\n|metadata.page.limit|integer|Number of items per page|100|\n|metadata.freeTextSearch|string|Free text search strings that was passed in the request|cat dog|\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchResponseRestoreResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          },
          "401": {
            "description": "Code : TOKEN_NOT_VALID, Details: []",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          },
          "403": {
            "description": "Code : ACCESS_DENIED, Details: []",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          },
          "500": {
            "description": "Code : INTERNAL_SERVER_ERROR, Details: []",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          },
          "504": {
            "description": "Code : GATEWAY_TIMEOUT, Details: []",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "ErrorResponse": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "example": "EXAMPLE_CODE_ENTITY_NOT_FOUND"
          },
          "message": {
            "type": "string",
            "example": "Entity with id [00000000-0000-0000-0000-000000000000] not found"
          },
          "serviceName": {
            "type": "string",
            "example": "Device Service"
          },
          "traceId": {
            "type": "string",
            "example": "a07a7e532f3541d8"
          },
          "environment": {
            "type": "string",
            "example": "develop"
          },
          "details": {
            "type": "object",
            "additionalProperties": {}
          }
        }
      },
      "FilterV2": {
        "type": "object",
        "properties": {
          "in": {
            "type": "array",
            "description": "List of values for the IN operator",
            "items": {
              "type": "string"
            }
          },
          "eq": {
            "description": "Value for the EQUAL (=) operator, string, numeric, boolean or object",
            "example": 50
          },
          "lt": {
            "type": "number",
            "description": "Value for the LESS THAN (<) operator, numeric value only",
            "example": 20
          },
          "lte": {
            "type": "number",
            "description": "Value for the LESS THAN OR EQUAL operator (<=), numeric value only",
            "example": 25
          },
          "gt": {
            "type": "number",
            "description": "Value for the GREATER THAN operator (>), numeric value only",
            "example": 25
          },
          "gte": {
            "type": "number",
            "description": "Value for the GREATER THAN OR EQUAL operator (>=), numeric value only",
            "example": 25
          },
          "like": {
            "type": "string",
            "description": "Value for the CONTAINS operator (substring), string value only",
            "example": "John"
          },
          "from": {
            "type": "string",
            "format": "date-time",
            "description": "Value for the DATE RANGE FROM operator, date value only,A UTC date in the ISO-8601 format",
            "example": "2007-12-20"
          },
          "to": {
            "type": "string",
            "format": "date-time",
            "description": "Value for the DATE RANGE TO operator, date value only,A UTC date in the ISO-8601 format",
            "example": "2007-12-20"
          },
          "isNull": {
            "type": "boolean",
            "description": "If set to true, checks if the field's value is null",
            "example": true
          },
          "isNotNull": {
            "type": "boolean",
            "description": "If set to true, checks if the field's value is not null",
            "example": true
          },
          "not": {
            "description": "Value for the NOT EQUAL (!=) operator, string, numeric, boolean or object",
            "example": 50
          },
          "notIn": {
            "type": "array",
            "description": "List of values for the NOT IN operator",
            "items": {
              "type": "string"
            }
          },
          "filter": {
            "description": "Used for complex logic with filters. Must be supplied only when using with map keys $OR, $AND, $NOT"
          }
        }
      },
      "Order": {
        "type": "object",
        "properties": {
          "prop": {
            "type": "string",
            "description": "The property name for the sort"
          },
          "order": {
            "type": "string",
            "description": "The direction of sort. Default DESC",
            "enum": [
              "ASC",
              "DESC"
            ],
            "example": "ASC"
          }
        },
        "required": [
          "prop"
        ]
      },
      "SearchRequestV2": {
        "type": "object",
        "properties": {
          "filter": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/FilterV2"
            },
            "description": "Each additionalProp can filter one field, inside additionalProp there are many optional conditions that can be used for filtering that field. When multiple conditions are specified, they are bundled together using logical AND operators, this means that only the items that match all filter conditions for that field will be returned"
          },
          "sort": {
            "type": "array",
            "description": "Results can be sorted by multiple fields, the order of the fields in the sort request governs the hierarchy of the sort.The first field is the primary sort, the second is used when two values of the first field are the same, and so forth",
            "items": {
              "$ref": "#/components/schemas/Order"
            }
          },
          "freeTextSearch": {
            "type": "string",
            "description": "Free text search strings - will be bundled to the filters with the logical AND operator. Possible to pass a few strings with space between them, the search will return a result if one of strings appears in the data entity (OR operator).",
            "example": "cat dog"
          },
          "limit": {
            "type": "integer",
            "format": "int32",
            "minimum": 1
          },
          "page": {
            "type": "integer",
            "format": "int32",
            "minimum": 0
          }
        }
      },
      "Metadata": {
        "type": "object",
        "properties": {
          "sort": {
            "type": "array",
            "description": "Sort that was passed in the request",
            "items": {
              "$ref": "#/components/schemas/Order"
            }
          },
          "filter": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/FilterV2"
            },
            "description": "The filter that was passed in the request"
          },
          "page": {
            "$ref": "#/components/schemas/PageMetadata"
          },
          "freeTextSearch": {
            "type": "string",
            "description": "Free text search strings that was passed in the request",
            "example": "cat dog"
          }
        }
      },
      "PageMetadata": {
        "type": "object",
        "properties": {
          "totalResults": {
            "type": "integer",
            "format": "int64",
            "description": "The total number of items that match the query",
            "example": 145
          },
          "page": {
            "type": "integer",
            "format": "int32",
            "description": "Page number",
            "example": 3
          },
          "limit": {
            "type": "integer",
            "format": "int32",
            "description": "Number of items per page",
            "example": 100
          }
        }
      },
      "RestoreResponse": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the backup, it will also be the folder in which the backup is saved",
            "example": "Backup-01-02-2024",
            "maxLength": 100,
            "minLength": 0
          },
          "backupVersion": {
            "type": "string",
            "description": "The biot version of the backup",
            "example": "2.3.11"
          },
          "errorMessage": {
            "type": "string",
            "description": "An error thrown in the backup/restore process",
            "example": "No internet connection"
          },
          "buildNumber": {
            "type": "integer",
            "format": "int32",
            "description": "The build number of the backup/restore job in the pipeline",
            "example": 12345
          },
          "lastModifiedTime": {
            "type": "string",
            "format": "date-time",
            "description": "A UTC date-time in the ISO-8601 format",
            "example": "2007-12-20T10:15:30Z"
          },
          "creationTime": {
            "type": "string",
            "format": "date-time",
            "description": "A UTC date-time in the ISO-8601 format",
            "example": "2007-12-20T10:15:30Z"
          },
          "status": {
            "type": "string",
            "description": "The status of the restore",
            "example": "SUCCESS"
          }
        },
        "required": [
          "backupVersion",
          "buildNumber",
          "creationTime",
          "lastModifiedTime",
          "name",
          "status"
        ]
      },
      "SearchResponseRestoreResponse": {
        "type": "object",
        "description": "Search response with pagination metadata",
        "properties": {
          "data": {
            "type": "array",
            "description": "List of items that match the search request",
            "items": {
              "$ref": "#/components/schemas/RestoreResponse"
            }
          },
          "metadata": {
            "$ref": "#/components/schemas/Metadata",
            "description": "Pagination and search metadata"
          }
        },
        "required": [
          "data",
          "metadata"
        ]
      }
    },
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    }
  }
}
```