'required|integer', 'data_source_id' => 'required|integer', 'name' => 'required|min_length[3]|max_length[150]', 'query_type' => 'required|in_list[visual,raw_sql,api]', 'cache_ttl' => 'permit_empty|integer|greater_than_equal_to[0]', 'created_by' => 'required|integer', ]; public function forWorkspace(int $workspaceId): array { return $this->select('saved_queries.*, data_sources.name as data_source_name') ->join('data_sources', 'data_sources.id = saved_queries.data_source_id', 'left') ->where('saved_queries.workspace_id', $workspaceId) ->orderBy('saved_queries.id', 'DESC') ->findAll(); } }