Virtual endpoint behavior
If query_name is user_actions_feed, the API can expose:
GET /api/user_actions_feed
GET /api/user_actions_feed?_limit=20&_start=0&_sort=creation_date:desc
The API resolves the requested table name and runs SelectQuery SQL when a matching query_name exists.
Core fields
- query_name: virtual table name in the route.
- select_query: SQL used for list calls.
- select_query_count: SQL used for total count.
- with_params: enables request parameter binding.
Management endpoints
GET /api/selectqueries
GET /api/selectqueries/{uuid}
POST /api/selectqueries
PUT /api/selectqueries/{uuid}
DELETE /api/selectqueries/{uuid}
Design notes
- Avoid name collision with metadata table names.
- Use explicit ownership clauses in SQL when needed.
- Keep query_name stable even if SQL evolves.