# Query Data

### Prerequisites

Requires a user auth token. See the [API Auth](/api/api-setup-text.md) section.

### Querying data - API

This endpoint retrieves the stored data based on the meaning of the query. The endpoins requires:

1. Database name: `db`
2. A collection name: `collection`
3. An text string to search about: `search`
4. optional `count`: the number of matches to return. Defaults to 3
5. optional `metadataFilters`: to further filter data by metadata. Please see subpage

{% code overflow="wrap" lineNumbers="true" %}

```javascript
import mindplug from "@/src/mindplugAPI"; // base instance

mindplug.post("/data/query", {
    db: "walmart",
    collection: "office supplies",
    search: "an eraser with no crumbs",
    count: 1
});
```

{% endcode %}

### Sample Response

Returns a list of matching responses.

```json
{
    "data": [
        {
            "id": "4334eb12-f57d-4b67-8b13-1f62d7cf5791",
            "score": 0.893768728,
            "values": [],
            "metadata": {
                "content": "Premium eraser: an eraser that works on both pen and pencil and leaves no crumbs",
                "lastStock": "June 2023",
                "totalItems": 123
            }
        }
    ]
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mindplug.io/api/query.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
