---
id: 587d7fb7367417b2b2512c0b
title: Use model.find() to Search Your Database
challengeType: 2
forumTopicId: 301543
dashedName: use-model-find-to-search-your-database
---

# --description--

In its simplest usage, `Model.find()` accepts a query document (a JSON object) as the first argument, then a callback. It returns an array of matches. It supports an extremely wide range of search options. Read more in the docs.

# --instructions--

Modify the `findPeopleByName` function to find all the people having a given name, using <code>Model.find() -\> [Person]</code>

Use the function argument `personName` as the search key.

# --hints--

Find all items corresponding to a criteria should succeed

```js
  const response = await fetch(code + '/_api/find-all-by-name', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      name: 'r@nd0mN4m3',
      age: 24,
      favoriteFoods: ['pizza']
    })
  });
  if (!response.ok) {
    throw new Error(await response.text());
  }
  const data = await response.json();
  assert.isArray(data, 'the response should be an Array');
  assert.equal(
    data[0].name,
    'r@nd0mN4m3',
    'item.name is not what expected'
  );
  assert.equal(data[0].__v, 0, 'The item should be not previously edited');
```

