Documentation Index
Fetch the complete documentation index at: https://docs.asteragents.com/llms.txt
Use this file to discover all available pages before exploring further.
What it does
The Search Airtable tool queries records in a specific table. It supports three query modes, all with offset-based pagination:- Free-text search — pass a
searchTerm+searchFieldsto match a case-insensitive substring across named fields (the tool builds anOR(SEARCH(...))formula for you) - Formula filter — pass a raw
filterByFormulafor full Airtable formula-language filtering (AND/OR logic, date math, linked-record filtering, etc.) - Plain list — omit filters and just list records, optionally scoped to a
view, with sort/fields/maxRecords applied
Key features
- Three complementary query modes covering quick lookups through complex structured filters
- Case-insensitive free-text search across any set of fields
- Full Airtable formula language support for structured filters
- Sort by one or more fields, ascending or descending
- Scope results to a named view (honors the view’s own filter/sort)
- Return only specific fields to keep responses small
- Offset-based pagination via
nextOffset
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
baseId | string | Yes | Airtable base ID (starts with app). Get from airtable_get_schema |
tableIdOrName | string | Yes | Table ID (starts with tbl) or the table’s display name. IDs are more stable against renames |
searchTerm | string | No | Free-text needle. Requires searchFields. Matched case-insensitively as a substring |
searchFields | string[] | No | Field names to search within. Required when searchTerm is set |
filterByFormula | string | No | Airtable formula to filter records. Takes precedence over searchTerm. Example: "AND({Status}='Active', {Amount}>1000)" |
fields | string[] | No | Subset of field names to include in each record. If omitted, returns all fields |
sort | array | No | Array of { field, direction? } sort rules. Applied in order (primary first) |
maxRecords | integer | No | Total records to return across pages (max 1000) |
pageSize | integer | No | Records per page (default 100, max 100) |
view | string | No | View ID or name. When set, results honor the view’s filter/sort in addition to any passed here |
offset | string | No | Pagination cursor from a previous response’s nextOffset |
Common use cases
Free-text find
Structured filter with formula
Scope to a view
Paginate a large table
First call:hasMore is false.
What you get back
records[]— each withid,createdTime, and afieldsobject keyed by field namecount— number of records in this responsehasMore— boolean indicating whether more records are availablenextOffset— opaque cursor to pass asoffseton the next call (nullwhenhasMoreis false)
Best practices
- Prefer table IDs over names when the table might be renamed — names work but break on rename; IDs are stable
- Use
fieldsaggressively — limiting the response to 3–5 fields massively reduces token usage - For AND/OR logic across fields, use
filterByFormula—searchTermonly supports OR across fields with a single substring - For large tables, set a sensible
maxRecords— the default paginates through the entire table which can be thousands of calls - Scope to a view when users have already built a saved filter in Airtable — agents don’t need to recreate the logic
Troubleshooting
“searchFields is required when using searchTerm”- Pass the list of fields to search within:
searchFields: ["Name", "Description"] - Or use
filterByFormulainstead for more complex queries
- Wrap field names in
{}:{Status}='Active', notStatus='Active' - Escape single quotes inside string literals:
\' - Validate the formula in Airtable’s formula field playground before passing it in
- Call airtable_get_schema with the
baseIdto confirm exact table and field names - Field names are case-sensitive
- Views apply their own filter and sort on top of yours — if the view already hides records, your filter can only narrow further
- Drop the
viewparameter to query the full table
Related tools
- Get Airtable Schema — discover
baseId,tableIdOrName, and field names - Manage Airtable Records — create, update, or delete records found via this tool
