Skip to main content
POST
/
bases
/
{databaseId}
/
tables
/
{tableId}
/
records
/
list
List records
curl --request POST \
  --url https://tables.fillout.com/api/v1/bases/{databaseId}/tables/{tableId}/records/list \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "filters": {
    "Name": {
      "contains": "John"
    },
    "Age": {
      "gte": 18,
      "lt": 65
    },
    "Status": {
      "in": [
        "Active",
        "Pending"
      ]
    },
    "Department": {
      "not": "Admin"
    }
  },
  "limit": 100,
  "offset": 0
}'
{
"records": [
{
"id": "d4b3c2a3-c46b-46a1-a8ec-81b664bb41cb",
"data": {
"f6JE46z2WoX": "",
"f5gMv8mk8CX": "",
"foEBBtqDY1F": false
},
"fields": {
"Name": "",
"Notes": "",
"Active": false
},
"createdAt": "2025-11-13T11:59:45.000Z",
"updatedAt": "2025-11-13T11:59:45.000Z"
}
],
"total": 3,
"cursor": "eyJ0aW1lc3RhbXAiOiIyMDI1LTExLTEzVDExOjU5OjQ1LjAwMFoiLCJpZCI6ImQ0YjNjMmEzLWM0NmItNDZhMS1hOGVjLTgxYjY2NGJiNDFjYiJ9",
"hasMore": true
}
Fetches records from a table with advanced filtering, sorting, and pagination options using either the table ID or table name.
  • Supports various filter operators (contains, in, not, lt, gt, etc.)
  • Results can be sorted by any field ID
  • Pagination available with offset/limit or cursor-based approach

Authorizations

Authorization
string
header
required

Path Parameters

databaseId
string
required
tableId
string
required

Body

application/json
limit
integer
default:500
Required range: 1 <= x <= 2000
offset
integer
default:0
Required range: x >= 0
filters
object

Response

records
object[]
required
total
integer
required
hasMore
boolean
required