Use this skill when the user wants to find, filter, or narrow down Airtable records by field values, even when they don't explicitly say "filter.
filters parameter, using the same schema.operator is specified, conditions are combined with AND. The first element in a condition's operands array is always a field ID — look up the table's schema to find field IDs before filtering.| Operator | Second operand | Field categories |
|---|---|---|
= | string, number, boolean, choice ID | text-like, numeric, date, checkbox, single select, multiple selects, single collaborator, multiple collaborators, linked records |
!= | string, number, choice ID | text-like, numeric, date, single select, single collaborator |
<, >, <=, >= | number or date value object | numeric, date |
contains | string | text-like, linked records |
doesNotContain | string | text-like, linked records |
doesNotContain | array of IDs | multiple selects, multiple collaborators |
isEmpty, isNotEmpty | (none) | text-like, numeric, date, single select, multiple selects, single collaborator, multiple collaborators, linked records, attachment |
hasAnyOf, hasAllOf | array of IDs | multiple selects, multiple collaborators, linked records |
isAnyOf | array of IDs | single select, single collaborator |
isNoneOf | array of IDs | single select, single collaborator, linked records |
isWithin | date range object | date |
filename, fileType | string or "image"/"text" | attachment |
isAnyOf, isNoneOf, hasAnyOf, hasAllOf) over combining multiple = conditions with or/and, when those operators are available for the field type."selABCDEFGHIJKLM"), not display names. Look up the table's schema to find choice IDs before filtering.operatorOptions to match individual members of the group instead of the literal group ID. See the tool's operatorOptions parameter for details.{"operator": "hasAnyOf", "operands": ["fldCRi9oz2vRLcIWr", "ugpDUVUnftA7H9bG8"], "operatorOptions": {"matchGroupsByMembership": true}}fileType to filter attachments by type (e.g., "image", "text") rather than isNotEmpty when the user specifies a file type.=, !=, <, >, <=, >=) use a date value object instead of a raw date string, and isWithin uses a date range object. The tool schema defines the available modes for each. Always include timeZone."Scripted videos that are either in Writing or Pre-Production" → Bucket = Scripted AND (Status = Writing OR Status = Pre-Production)
"Approved videos, or videos assigned to Bailey that are in Cut 2" → Status = Approved OR (Editor = Bailey AND Status = Cut 2 Ready)
filters object rather than splitting them across multiple calls. A single call with a composed filter is more efficient and returns the correct result set directly.{
"operator": "or",
"operands": [
{"operator": "=", "operands": ["fld8WsrpLHHevsnW8", "orange"]},
{"operator": ">", "operands": ["fldulcCPDVz87Bmnw", 5]}
]
}
{
"operands": [
{
"operator": "isWithin",
"operands": ["fldABC12345678x", {"mode": "pastWeek", "timeZone": "America/New_York"}]
}
]
}