Box · Schema
Metadata query search request
Create a search using SQL-like syntax to return items that match specific metadata.
Cloud StorageCollaborationContent ManagementDocumentsEnterpriseFile Sharing
Properties
| Name | Type | Description |
|---|---|---|
| from | string | Specifies the template used in the query. Must be in the form `scope.templateKey`. Not all templates can be used in this field, most notably the built-in, Box-provided classification templates can not |
| query | string | The query to perform. A query is a logical expression that is very similar to a SQL `SELECT` statement. Values in the search query can be turned into parameters specified in the `query_param` argument |
| query_params | object | Set of arguments corresponding to the parameters specified in the `query`. The type of each parameter used in the `query_params` must match the type of the corresponding metadata template field. |
| ancestor_folder_id | string | The ID of the folder that you are restricting the query to. A value of zero will return results from all folders you have access to. A non-zero value will only return results found in the folder corre |
| order_by | array | A list of template fields and directions to sort the metadata query results by. The ordering `direction` must be the same for each item in the array. |
| limit | integer | A value between 0 and 100 that indicates the maximum number of results to return for a single request. This only specifies a maximum boundary and will not guarantee the minimum number of results retur |
| marker | string | Marker to use for requesting the next page. |
| fields | array | By default, this endpoint returns only the most basic info about the items for which the query matches. This attribute can be used to specify a list of additional attributes to return for any item, in |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/MetadataQuery",
"title": "Metadata query search request",
"type": "object",
"description": "Create a search using SQL-like syntax to return items that match specific\nmetadata.",
"required": [
"from",
"ancestor_folder_id"
],
"properties": {
"from": {
"type": "string",
"description": "Specifies the template used in the query. Must be in the form\n`scope.templateKey`. Not all templates can be used in this field,\nmost notably the built-in, Box-provided classification templates\ncan not be used in a query.",
"example": "enterprise_123456.someTemplate"
},
"query": {
"type": "string",
"description": "The query to perform. A query is a logical expression that is very similar\nto a SQL `SELECT` statement. Values in the search query can be turned into\nparameters specified in the `query_param` arguments list to prevent having\nto manually insert search values into the query string.\n\nFor example, a value of `:amount` would represent the `amount` value in\n`query_params` object.",
"example": "value >= :amount"
},
"query_params": {
"type": "object",
"description": "Set of arguments corresponding to the parameters specified in the\n`query`. The type of each parameter used in the `query_params` must match\nthe type of the corresponding metadata template field.",
"example": {
"amount": "100"
},
"additionalProperties": {
"type": "string",
"description": "The value for the argument being used in the metadata search.\n\nThe type of this parameter must match the type of the corresponding\nmetadata template field.",
"example": "100",
"x-box-example-key": "amount"
}
},
"ancestor_folder_id": {
"type": "string",
"description": "The ID of the folder that you are restricting the query to. A\nvalue of zero will return results from all folders you have access\nto. A non-zero value will only return results found in the folder\ncorresponding to the ID or in any of its subfolders.",
"example": "0"
},
"order_by": {
"type": "array",
"description": "A list of template fields and directions to sort the metadata query\nresults by.\n\nThe ordering `direction` must be the same for each item in the array.",
"items": {
"type": "object",
"description": "An object representing one of the metadata template fields to sort the\nmetadata query results by.",
"properties": {
"field_key": {
"type": "string",
"description": "The metadata template field to order by.\n\nThe `field_key` represents the `key` value of a field from the\nmetadata template being searched for.",
"example": "amount"
},
"direction": {
"type": "string",
"description": "The direction to order by, either ascending or descending.\n\nThe `ordering` direction must be the same for each item in the\narray.",
"example": "asc",
"enum": [
"ASC",
"DESC",
"asc",
"desc"
]
}
}
}
},
"limit": {
"type": "integer",
"description": "A value between 0 and 100 that indicates the maximum number of results\nto return for a single request. This only specifies a maximum\nboundary and will not guarantee the minimum number of results\nreturned.",
"default": 100,
"minimum": 0,
"maximum": 100,
"example": 50
},
"marker": {
"type": "string",
"description": "Marker to use for requesting the next page.",
"example": "AAAAAmVYB1FWec8GH6yWu2nwmanfMh07IyYInaa7DZDYjgO1H4KoLW29vPlLY173OKsci6h6xGh61gG73gnaxoS+o0BbI1/h6le6cikjlupVhASwJ2Cj0tOD9wlnrUMHHw3/ISf+uuACzrOMhN6d5fYrbidPzS6MdhJOejuYlvsg4tcBYzjauP3+VU51p77HFAIuObnJT0ff"
},
"fields": {
"type": "array",
"items": {
"type": "string"
},
"description": "By default, this endpoint returns only the most basic info about the items for\nwhich the query matches. This attribute can be used to specify a list of\nadditional attributes to return for any item, including its metadata.\n\nThis attribute takes a list of item fields, metadata template identifiers,\nor metadata template field identifiers.\n\nFor example:\n\n* `created_by` will add the details of the user who created the item to\nthe response.\n* `metadata.<scope>.<templateKey>` will return the mini-representation\nof the metadata instance identified by the `scope` and `templateKey`.\n* `metadata.<scope>.<templateKey>.<field>` will return all the mini-representation\nof the metadata instance identified by the `scope` and `templateKey` plus\nthe field specified by the `field` name. Multiple fields for the same\n`scope` and `templateKey` can be defined.",
"example": [
"extension",
"created_at",
"item_status",
"metadata.enterprise_1234.contracts",
"metadata.enterprise_1234.regions.location"
]
}
}
}