load-table

GET structure endpoint for a registered table

load-table answers: "How should this table look and behave?" It does not (by default) return all rows — only metadata the UI needs to render headers, filters, and buttons.

Request

GET /api/api-table/control-tables/load-table/{tableName}/{withData?}
ParameterTypeDescription
tableNamestringConfig key — e.g. users
withDatabool (optional)true = include first page of rows in response

Headers:

Authorization: Bearer {token}
Accept: application/json

Optional body/query params: Scoped context passed to table constructor (e.g. { "warehouseId": "5" }).

Response fields (explained)

{
  "success": true,
  "tableName": "users",
  "columns": [ /* see below */ ],
  "filters": [ /* filter sheet */ ],
  "advancedFilters": [ /* expanded filters */ ],
  "rowActions": { /* action buttons */ },
  "bulkActions": [ /* toolbar actions */ ],
  "sortables": ["id", "name", "email"],
  "defSortCol": "id",
  "defSortDir": "desc"
}
FieldJunior explanationSenior note
columnsWhat columns to drawBuilt from $TBLColumns via column type classes
filtersFilter form fieldsFrom filters()
rowActionsPer-row buttonsIncludes default show_details
bulkActionsToolbar dropdownIncludes default export_excel
sortablesAllowed sort fieldsClient cannot sort outside this list

When withData=true, response also includes data (paginated items) and bindings.

When to use withData=true

UseSkip
Mobile apps wanting one round-tripStandard web — frontend loads structure then queries separately
Simple tables with tiny datasetsLarge tables — structure should stay lightweight

Common mistakes

MistakeSymptom
Wrong tableName in URLException: table not exists
Forgot auth token401
Empty $TBLColumnsTable renders with no columns
TABLENAME mismatch404 or table not exists

Example curl

curl -s -H "Authorization: Bearer $TOKEN" \
  https://app.test/api/api-table/control-tables/load-table/users | jq '.columns'

On this page