ποΈAccount Filters
All filter types that can be applied to account query 'filter' objects
Overview
Several of Carpool's account queries accept a filter object in the POST body. This is an abstraction on top of Elasticsearch and is made to help users perform powerful aggregations and searches. Below you can find all possible filters for account queries
Account Filters
π° ACCOUNT_LAMPORTS
Description:
Filter for accounts within a specified lamport range or value
Schema fields:
type*
range*
Schema
"filter": {
"type": "ACCOUNT_LAMPORTS",
"range": NumericRange
}NumericRange type
// Either an equality check, or GTE/LTE range, one of which must be set.
export type NumericRange = XOR<XOR<{
gte: number;
lte?: number;
}, {
gte?: number;
lte: number;
}>, { eq: number }>;Example
"filter": {
"type": "ACCOUNT_LAMPORTS",
"range": {
"gte": 1000000
}
}π° ACCOUNT_SLOTS
Description:
Filter for accounts within a specified slot range or value
Schema fields:
type*
range*
Schema
"filter": {
"type": "ACCOUNT_SLOTS",
"range": NumericRange
}NumericRange type
// Either an equality check, or GTE/LTE range, one of which must be set.
export type NumericRange = XOR<XOR<{
gte: number;
lte?: number;
}, {
gte?: number;
lte: number;
}>, { eq: number }>;Example
"filter": {
"type": "ACCOUNT_SLOTS",
"range": {
"gte": 1000000
}
}1οΈβ£ ACCOUNT_DATA_NUMERIC
Description:
Filter for accounts with specific number ranges or values present in the data object
Schema fields:
type*
path*
range*
Schema
"filter": {
"type": "ACCOUNT_DATA_NUMERIC",
"path": "string" // Dot-delimited
"range": NumericRange
}NumericRange type
// Either an equality check, or GTE/LTE range, one of which must be set.
export type NumericRange = XOR<XOR<{
gte: number;
lte?: number;
}, {
gte?: number;
lte: number;
}>, { eq: number }>;Example
"filter": {
"type": "ACCOUNT_DATA_NUMERIC",
"path": "data.creators.percentageShare",
"range": {
"eq": 100
}
}π ACCOUNT_DATA_KEYWORD
Description:
Filter for accounts with specific keywords present in the data object
Schema fields:
type*
path*
value*
Schema
"filter": {
"type": "ACCOUNT_DATA_KEYWORD",
"path": "string", // Dot-delimited for nested fields
"value": "string"
}Example
"filter": {
"type": "ACCOUNT_DATA_KEYWORD",
"path": "authority",
"value": "BFB7td8D6f2qvg3cYgLmKSo75GcBFvn69JyjnNRyZuJb"
}Combining Filters
It is important to note that you can also combine any of the above filters within a single query. You can return results based on an AND or OR condition.
AND
Schema
Example
OR
Schema
Example
Negating Filters
You can also negate filters if you'd like to look for all accounts that do not match the filter criteria. To negate, simply add "negate": true to the top level of the filter.
Example
Last updated