Glossary
ApiTables terms every backend developer should know
Quick reference for terms used across this documentation and in team conversations.
| Term | Meaning |
|---|
| Control table | A registered ApiTables feature identified by tableName (e.g. users, orders) |
| Table class | Your PHP class extending TableAbstract — the main place you write table logic |
| Table name | Config key in api-tables-config.tables — also the URL segment in endpoints |
TABLENAME constant | Must match the config key; passed to parent::__construct() |
| Structure | JSON from load-table — columns, filters, actions (metadata only) |
| Query | JSON from query-table — paginated row data |
| Server-driven UI | Frontend renders what the backend describes in structure JSON |
| Term | Meaning |
|---|
| Guard | Laravel auth guard (api, web, spa) — determines route prefix |
| Default middlewares | Applied to every table (usually auth:sanctum) |
| Per-table middlewares | Extra auth/authorization for one table only |
TablesMiddleware | Resolves and runs middleware stack per request |
| Term | Meaning |
|---|
$TBLColumns | Array property listing raw column definitions on your table class |
data_src | Field path on the Eloquent model (or relation path with dots) |
label | Translation key segment — becomes api-table.{tableName}.{label} |
callBack | Method name on table class to compute cell value at runtime |
bindings | Dynamic filter option values returned with query response |
| Sortables | Column fields the client is allowed to sort by |
| Term | Meaning |
|---|
filter_name | Key used in query filters[].field — usually matches DB column |
advancedFilters | Same filter definitions exposed for expanded filter UI |
| Operator | Comparison: =, like, between, in, etc. |
| Term | Meaning |
|---|
| Row action | Button on one row (archive, view, toggle) |
| Bulk action | Toolbar action on selection or full filtered set (export) |
onSuccess | Tells frontend what to refresh after action succeeds |
isApplicableCallback | Method that hides an action for specific rows |
responseType | How bulk action responds: instant, email, notification, websocket |
| Endpoint | Purpose |
|---|
| load-table | GET structure |
| query-table | POST filtered/sorted data |
| bulk-table-action | POST bulk action |
| row-table-action | POST single-row action |
| row-bulk-table-action | POST row action on multiple IDs |
| row-refetch | POST fresh data for one row after mutation |
| Name | Value |
|---|
| Composer package | storageitsolutions/api-tables |
| PHP namespace | Storageitsolutions\ApisTables |
| Config file | config/api-tables-config.php |
| Artisan scaffold | php artisan make:api-table {Name} |