Search documents
Retrieves Master Data v1 documents' information, while choosing which fields will be returned and filtering documents by specific fields.
ℹ️ Learn more about Pagination in the Master Data API and Querying documents in Master Data v1.
Query examples
| Filter Type | Example |
|---|---|
| Simple filter | /dataentities/CL/search?email=my@email.com |
| Complex filter | /dataentities/CL/search?_where=(firstName=Jon OR lastName=Smith) OR (createdIn between 2001-01-01 AND 2016-01-01) |
| Date range | /dataentities/CL/search?_where=createdIn between 2001-01-01 AND 2016-01-01 |
| Numeric field range | /dataentities/CL/search?_where=age between 18 AND 25 |
| Partial filter | /dataentities/CL/search?firstName=*Maria* |
| Null values | /dataentities/CL/search?_where=firstName is null |
| Non-null values | /dataentities/CL/search?_where=firstName is not null |
| Difference | /dataentities/CL/search?_where=firstName<>maria |
| Greater than | /dataentities/CL/search?_where=number>5 |
| Less than | /dataentities/CL/search?_where=date<2001-01-01 |
⚠️ Avoid sending too many requests with wildcards (*) in the search parameters or that use the keyword parameter. This may lead to this endpoint being temporarily blocked for your account. If this happens you will receive an error with status code 503.
Permissions
Any user or API key must have at least one of the appropriate License Manager resources to be able to successfully run this request. Otherwise they will receive a status code 403 error. These are the applicable resources for this endpoint:
| Product | Category | Resource |
|---|---|---|
| Dynamic Storage | Dynamic storage generic resources | Read only documents |
| Dynamic Storage | Dynamic storage generic resources | Insert or update document (not remove) |
| Dynamic Storage | Dynamic storage generic resources | Full access to all documents |
| Dynamic Storage | Dynamic storage generic resources | Master Data administrator |
There are no applicable predefined roles for this resource list. You must create a custom role and add at least one of the resources above in order to use this endpoint.To learn more about machine authentication at VTEX, see Authentication overview.
❗ To prevent integrations from having excessive permissions, consider the best practices for managing API keys when assigning License Manager roles to integrations.
Path parameters
Two-letter string that identifies the data entity.
Query parameters
Names of the fields that will be returned per document, separated by a comma ,. It is possible to fetch all fields using _all as the value of this query parameter. However, in order to avoid permission errors, we strongly recommend informing only the names of the exact fields that will be used.
Defines a condition the document must comply with. When referring to fields, you can use a nested field up to the first level (e.g. wishlistProduct.productName).
Defines sorting mode in two parts. The first part is the name of the field you want to sort by. It can be a nested field up to the first level (e.g. wishlistProduct.productName). In the second part, use ASC for ascending order or DESC for descending order.
Headers
Type of the content being sent.
HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.
Specifies the range of documents to be returned in the response. The value should follow the format resources={x}-{y}, where:
- x: Index of the first document in the returned array.
- y: Index of the last document in the returned array + 1.
This field controls pagination by defining the subset of documents to be retrieved. The maximum number of documents returned per query is limited to 100. For example, resources=0-10 returns the first 10 documents.
Response
OK