Tables API
Every table belongs to an application. Table management endpoints are app-scoped under /api/apps/{app}/tables. A read-only cross-application listing is also available at /api/tables.
List tables
Section titled “List tables”GET /api/apps/{app}/tablesReturns the tables in the application. To list every table the authenticated user can access across all applications, omit the app scope:
GET /api/tablesBoth return {"tables": [...]}.
Create a table
Section titled “Create a table”POST /api/apps/{app}/tablesContent-Type: application/json
{ "name": "projects", "display_name": "Projects"}The application field is set automatically from the URL. If you include it in the body it must match the {app} segment. Returns {"table": {...}, "fields": [...]} (HTTP 201). The table is immediately available for field definitions and record operations.
Constraints:
namemust be 24 characters or fewernamemust start with a lowercase letter or underscore, and contain only lowercase letters, digits, and underscoresnamemust be unique within the application
Get table details
Section titled “Get table details”GET /api/apps/{app}/tables/{table}Returns {"table": {...}, "fields": [...]} — table metadata plus its field definitions.
Update a table
Section titled “Update a table”PUT /api/apps/{app}/tables/{table}Content-Type: application/json
{ "display_name": "Active Projects"}Delete a table
Section titled “Delete a table”DELETE /api/apps/{app}/tables/{table}Deleting a table is soft-deleted: the table is deactivated and excluded from the API, and its name is freed for reuse. There is no API endpoint to recover a deleted table; recovery requires direct database access.