Table Records

List Table Records

Changed on

This API endpoint allows you to retrieve records from a specified table. You can customize the response by applying various query parameters for filtering, sorting, and formatting.

Pagination: The response is paginated by default, with the first page being returned initially. The response includes the following pagination fields as top-level properties alongside records:

  • next: URL to retrieve the next page of records. For example, "https://app.nocodb.com/api/v3/tables/medhonywr18cysz/records?page=2". Returns null when on the last page.
  • prev: URL to retrieve the previous page of records. Returns null when on the first page.
  • nestedNext: URL to retrieve the current page of records with the next set of nested (linked record) data. Returns null when there are no more nested pages.
  • nestedPrev: URL to retrieve the current page of records with the previous set of nested data. Returns null when on the first nested page.

These pagination fields are particularly valuable when working with large datasets divided into multiple pages. They provide the necessary URLs to seamlessly navigate forward and backward through the dataset.

get/api/v3/data/{baseId}/{tableId}/records

Request

Query parameters

string[]
OR
string

Restricts the response to the listed fields. By default every field of the table is returned.

A field may be named by its id or its title. An unknown name is rejected with 422 ERR_FIELD_NOT_FOUND.

Example: fields=["field1","field2"] or fields=field1,field2.

OR

Allows you to specify the fields by which you want to sort the records in your API response. Accepts either an array of sort objects or a single sort object.

Each sort object must have a 'field' property specifying the field name and a 'direction' property with value 'asc' or 'desc'.

Example: sort=[{"direction":"asc","field":"field_name"},{"direction":"desc","field":"another_field"}] or sort={"direction":"asc","field":"field_name"}

If viewId query parameter is also included, the sort included here will take precedence over any sorting configuration defined in the view.

wherestring

Enables you to define specific conditions for filtering records in your API response. Multiple conditions can be combined using logical operators such as 'and' and 'or'. Each condition consists of three parts: a field name, a comparison operator, and a value.

Example: where=(field1,eq,value1)~and(field2,eq,value2) will filter records where 'field1' is equal to 'value1' AND 'field2' is equal to 'value2'.

More examples: where=(Title,like,report) matches records whose Title contains 'report'; where=(Tags,anyof,urgent,bug) matches records whose multi-select Tags has 'urgent' or 'bug'.

Operators: eq, neq, gt, ge, lt, le, like, nlike, in, btw, nbtw, is, isnot, blank, notblank, checked, notchecked, anyof, allof, nanyof, nallof, isWithin (gte and lte are accepted as aliases of ge and le). Which ones apply depends on the field type, see filtering.

If viewId query parameter is also included, then the filters included here will be applied over the filtering configuration defined in the view.

Please remember to maintain the specified format; for quoting values that contain commas, parentheses or spaces, see the where syntax.

pageinteger

Page of records to return, 1 by default.

A page past the end of the result set returns an empty records list with no next; its prev points at the last page that has records, or page 1 when there are none. A page below 1 is rejected with 422 ERR_INVALID_OFFSET_VALUE.

Example: page=2 returns the second page.

nestedPageinteger

Enables you to control the pagination of your nested data (linked records) in API response by specifying the page number you want to retrieve. By default, the first page is returned. If you want to retrieve the next page, you can increment the page number by one.

Example: page=2 will return the second page of nested data records in the dataset.

pageSizeinteger

Number of records per page. Defaults to 25.

Capped per deployment (1000 by default, 100 on NocoDB Cloud). A request above the ceiling is not rejected — it is silently served at the ceiling.

Example: pageSize=100 returns at most 100 records per page.

limitinteger

Alias for pageSize. When both are given, limit wins. Note that pageSize is the parameter carried into the next/prev URLs.

offsetinteger

Number of records to skip, as an alternative to page. Ignored when page is given.

nestedLimitinteger

Maximum number of linked records returned inside each Link or LinkToAnotherRecord field. Defaults to 1000 (NC_DB_QUERY_LIMIT_LTAR_V3_LIMIT). A field truncated at this limit is returned without any indication; there is currently no continuation link for nested records.

viewIdstring

View Identifier. Returns the records visible in that view, in its order, and only the fields visible in it — fields hidden in the view are omitted. A sort parameter takes precedence over the view's own sort; a where parameter is applied in addition to the view's filters. fields narrows the selection further.

linksAsLtar'true'

When set to true, Links fields will return full linked record data (id and display value) instead of just a count. This makes Links fields behave like LinkToAnotherRecord (LTAR) fields in the response.

fieldIdOnResult'true'

When set to true, record fields are keyed by field id instead of field title. Useful when titles may change or are not unique in the caller's model.

Headers

xc-tokenstring required

API Token. Refer here to know more

Response

OK

nextstring nullable

Pagination token for next page

prevstring nullable

Pagination token for previous page

nestedNextstring nullable

Nested pagination token for next page

nestedPrevstring nullable

Nested pagination token for previous page

Changes

    • info

      added the new optional query request parameter fieldIdOnResult

    • info

      added the new optional query request parameter limit

    • info

      added the new optional query request parameter nestedLimit

    • info

      added the new optional query request parameter offset

    • info

      added the non-success response with the status

    • info

      added the optional property // to the response with the status