Skip to content

GetRowsParams

Since v2.0.0

Parameters passed to ServerSideDataSource.getRows for each data request.

Pagination is in node space — one node equals one atomic pagination unit. For flat data, a node is a row. For tree data, a node is a top-level tree node. For grouped data, a node is a group definition.

The grid enriches these params with the current sort/filter state from loaded plugins (MultiSort, Filtering) so the server can apply them remotely.

PropertyTypeDescription
sortModel?{ field: string; direction: desc | asc }[]Active sort columns, in priority order. Empty array when unsorted.
filterModel?Record<string, unknown>Active filter model keyed by field name. Empty object when no filters are applied.
startNodenumberZero-based index of the first node to fetch (inclusive).
endNodenumberZero-based index of the last node to fetch (exclusive). endNode - startNode equals the block size.
pageSizenumberNumber of nodes requested in this fetch. Equal to endNode - startNode.
signalAbortSignalCancellation signal for the request. The grid aborts the signal when: - a newer request supersedes the same block (sort/filter change, refresh, purgeCache) - the plugin detaches or the grid disconnects

Number of nodes requested in this fetch. Equal to endNode - startNode.

Provided as a convenience for backends that expect an explicit page-size query parameter (e.g. ?start=0&pageSize=100) rather than a start/end range. The value matches the configured pageSize.


Cancellation signal for the request. The grid aborts the signal when:

  • a newer request supersedes the same block (sort/filter change, refresh, purgeCache)
  • the plugin detaches or the grid disconnects

Pass it to fetch(url, { signal }) (native), an AbortController.signal consumer, or via the fromObservable helper in @toolbox-web/grid-angular/features/server-side to translate it to RxJS takeUntil. Data sources that ignore signal keep working — the only consequence is that superseded HTTP requests still complete on the wire.