> For the complete documentation index, see [llms.txt](https://carpool.gitbook.io/carpool/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://carpool.gitbook.io/carpool/api-reference/accounts/search_accounts.md).

# SEARCH\_ACCOUNTS

## Overview

*This method allows you to search through program accounts with a robust filter object. There are many types of filters you can apply and you can find information regarding those in the* [*Filters*](/carpool/api-reference/filters.md) *section of the docs. The endpoint example here shows off one of the many filters.*

{% openapi src="/files/wVHDqIuqMpTy6BwFCiqU" path="/query/solana" method="post" %}
[Carpool\_dev-SEARCH\_ACCOUNTS-0.1-resolved.json](https://2513171703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE1gzfwcjB542lI2VR9XI%2Fuploads%2FqgKL3cEXgyWHdJGtkeKt%2FCarpool_dev-SEARCH_ACCOUNTS-0.1-resolved.json?alt=media\&token=b94b2bad-1dab-43a3-83b3-39c97576e824)
{% endopenapi %}

## Filters

As mentioned above, the api definition here illustrates one of Carpool's many filter types. All queries that accept a filter object in the POST body can make use of **any** of the potential filters. Please see the Account Filters section of the documentation to better understand how they are implemented for account related queries.

{% content-ref url="/pages/vGNHLdLNZJxRxbiTygpa" %}
[Account Filters](/carpool/api-reference/filters/account-filters.md)
{% endcontent-ref %}

## Example - Basic

**Program** - *Candy Machine*

**Description** *- Return all CandyMachine accounts where the value at data.creators.percentageShare is equal to 100*

#### Javascript

```javascript
var myHeaders = new Headers();
myHeaders.append("x-api-key", "<API_KEY>");
myHeaders.append("Content-Type", "application/json");

var raw = JSON.stringify({
  "type": "SEARCH_ACCOUNTS",
  "query": {
    "programId": "CndyV3LdqHUfDLmE5naZjVN8rBZz4tqhdefbAnjHG3JR",
    "accountName": "CandyMachine",
    "filter": {
      "type": "ACCOUNT_DATA_NUMERIC",
      "path": "data.creators.percentageShare",
      "range": {
        "eq": 100
      }
    }
  }
});

var requestOptions = {
  method: 'POST',
  headers: myHeaders,
  body: raw,
  redirect: 'follow'
};

fetch("https://mainnet.carpool.dev/query/solana", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));
```

#### cURL

```
curl --location 'https://mainnet.carpool.dev/query/solana' \
--header 'x-api-key: <API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
    "type": "SEARCH_ACCOUNTS",
    "query": {
        "programId": "CndyV3LdqHUfDLmE5naZjVN8rBZz4tqhdefbAnjHG3JR",
        "accountName": "CandyMachine",
        "filter": {
            "type": "ACCOUNT_DATA_NUMERIC",
            "path": "data.creators.percentageShare",
            "range": {
                "eq": 100
            }
        }
    }
}'
```

## Example - Advanced

**Program** - *Candy Machine*

**Description** *- Return all CandyMachine accounts where the value at data.creators.percentageShare is equal to 100. Include up to 20 objects in the response body, but only include fields: slot, lamports. Filter for accounts that fall in the specified time range.*

#### Javascript

```javascript
var myHeaders = new Headers();
myHeaders.append("x-api-key", "<API_KEY>");
myHeaders.append("Content-Type", "application/json");

var raw = JSON.stringify({
  "type": "SEARCH_ACCOUNTS",
  "query": {
    "programId": "CndyV3LdqHUfDLmE5naZjVN8rBZz4tqhdefbAnjHG3JR",
    "accountName": "CandyMachine",
    "filter": {
      "type": "ACCOUNT_DATA_NUMERIC",
      "path": "data.creators.percentageShare",
      "range": {
        "eq": 100
      }
    },
    "pagination": {
      "offset": 0,
      "limit": 20
    },
    "sort": {
      "order": "asc"
    },
    "fields": [
      "slot",
      "lamports"
    ],
    "timeRange": {
      "before": "2023-07-17T22:53:09+0000",
      "after": "2023-07-11T22:53:09+0000"
    }
  }
});

var requestOptions = {
  method: 'POST',
  headers: myHeaders,
  body: raw,
  redirect: 'follow'
};

fetch("https://mainnet.carpool.dev/query/solana", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));
```

#### cURL

```
curl --location 'https://mainnet.carpool.dev/query/solana' \
--header 'x-api-key: <API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
    "type": "SEARCH_ACCOUNTS",
    "query": {
        "programId": "CndyV3LdqHUfDLmE5naZjVN8rBZz4tqhdefbAnjHG3JR",
        "accountName": "CandyMachine",
        "filter": {
            "type": "ACCOUNT_DATA_NUMERIC",
            "path": "data.creators.percentageShare",
            "range": {
                "eq": 100
            }
        },
        "pagination": {
            "offset": 0,
            "limit": 20
        },
        "sort": {
            "order": "asc"
        },
        "fields": [
            "slot",
            "lamports"
        ],
        "timeRange": {
            "before": "2023-07-17T22:53:09+0000",
            "after": "2023-07-11T22:53:09+0000"
        }
    }
}'
```
