Skip to content

Metadata Search

Note

This section is available only for Virtual Private cloud (VPC).

The Metadata search can be used to search and analyze big volumes of objects quickly via a highly scalable text search. The search accepts request parameters such as System metadata (e.g. object name, location, created date, size) and Custom metadata (e.g. metadata keys). Filters can be combined using multiple comparative and relational operators based on the the datatype of the metadata. The search result will be available as collection of files and folders which match the provided search criteria for the provided storage path for which user has access. Search API honors the ABAC policies as applicable to the user.

If there are more results available than the defined maximum i.e. page size, a nextToken property is returned in the response. This property specifies the search request, which returns the remaining the results. It is included in every subsequent response, until the end of the list.

Supported Operators

The metadata types and their supported search operators are displayed in the table:

Metadata Type Parameter Name (Datatype) Operator Description
System metadata size (INT) EQ → Equal
GT → Greater than
GE → Greater than or equal
NE → Not equal
LT → Less than
LE → Less than or equal
System metadata includes parameters like object name, size, type, and last updated date
fileName (STRING) EQ → Equal
NE → Not equal
startsWith → starts with
contains → contains set of characters within file name
Name of the object
key (STRING) EQ → Equal
NE → Not equal
startsWith → starts with
contains → contains set of characters within file name
path of the object
documentType (STRING) EQ → Equal
NE → Not equal
Type of the document that is file or folder. Supported values are OBJECT and FOLDER
lastModified (DATE) EQ → Equal
NE → Not equal
GT → Greater than
LT → Less than
GE → Greater than or equal
LE → Less than or equal
after → after the provided input date
before → before the provided input date
Last updated date of the object (file)
Custom metadata ENUMLIST
ENUM
STRING
STRINGLIST
EQ → Equal
NE → Not equal
“==” → Equal
“!=” → Not equal
IN → Value within ENUMLIST
NOT IN → Value NOT IN ENUMLIST
Support List of predefined values
Note: Ensure that the search criteria should always be in sequence - Value IN ENUMLIST
List should always be on the right hand side of the operator for IN and NOT IN
Support ONE predefined values from the list
Any character stream
List of character streams
Note: Ensure that the search criteria should always be in sequence - Value IN STRINGLIST
List should always be on the right hand side of the operator for IN and NOT IN

Search API

Note

Search operation honors Attribute Based Access Control (ABAC). User will see only those objects in search result for which he as access.

Endpoint:

POST /search

Request:

  {
    "currentPath": "20MayFolder/",
    "systemMetadataCriteria": "system.documentType eq 'OBJECT' or system.documentType eq 'FOLDER'",
    "criteriaJoinOperator": "and",
    "customMetadataCriteria": "global.file_status  eq 'PUBLIC'",
    "nextToken": "eyJhdXRob3JpemVkUGFnZSI6Mywic2tpcCI6NCwibWF4U2l6ZSI6NH0=",
    "maxSize": 200
  }

Request Parameters Description

The overview of the parameters required for making data requests, detailing search paths are displayed in the table:

Parameter Datatype Description Recommended Usage
currentPath STRING Specifies the directory or folder path where search needs to be performed This will always be folder. Search will be performed in the entire hierarchy of this path. The result would be presented as a flat hierarchy listing all the files/folders in the path
Note: currentPath cannot be a filename. It could possibly be root path ('/')
systemMetadataCriteria STRING System metadata criteria supports 5 search parameters
- size
- fileName
- path
- resourceType
lastModified
Check Supported operators to create the criteria related to system metadata
System metadata criteria has a limit of 3000 characters
Sample: system.fileName eq 'test.txt' and system.documentType eq 'OBJECT'
criteriaJoinOperator STRING Condition operator to join the system and custom metadata criteria Possible value are AND and OR only
customMetadataCriteria STRING Custom metadata support four datatypes - ENUM, ENUMLIST, STRING, STRINGLIST Check Supported operators to create the criteria related to custom metadata
Custom metadata criteria has a limit of 10,000 characters
Sample: global.accessCriteria eq 'PUBLIC'
nextToken STRING Value of next token to fetch next request results. Combination of access control pages and end response
maxSize INTEGER Maximum number of objects in a single request Maximum number of objects that can be fetched in single request is 1,000

Response:

{
  "storageAccount": "datalake-dev-aaab",
  "storagePath": "data/ten=tenantname/{path} OR data/sub=subtenantId{path}",
  "objects": {
    "files": [
      {
        "key": "data/ten=dide2/commands.txt",
        "lastModified": "2018-10-03T09:21:36.559Z",
        "contentSize": 1000,
        "storageClass": "HOT"
      }
    ],
    "folders": [
      {
        "key": "data/ten=dide2/e2eTest/"
      }
    ]
  },
  "page": {
    "size": 1000,
    "nextToken": "1BpNN1QT3bG+k2dJG1TgmquqCzzCjbiuYymgjL91UChw//OBKBgBrmUcZpF6fT6C428OjxaMntOk+doIH45VMRAWt40WHl58ddeTuzsMCsd9T/nMjddi2SQ=="
  },
  "isTruncated": true

Last update: December 2, 2025

Except where otherwise noted, content on this site is licensed under the Development License Agreement.