automationStorage = $automationStorage; $this->overviewStatisticsController = $overviewStatisticsController; } public function handle(Request $request): Response { $automation = $this->automationStorage->getAutomation((int)$request->getParam('id')); if (!$automation) { throw new NotFoundException(__('Automation not found', 'mailpoet')); } $query = Query::fromRequest($request); $result = $this->overviewStatisticsController->getStatisticsForAutomation($automation, $query); return new Response($result); } public static function getRequestSchema(): array { return [ 'id' => Builder::integer()->required(), 'query' => Builder::object( [ 'primary' => Builder::object( [ 'after' => Builder::string()->formatDateTime()->required(), 'before' => Builder::string()->formatDateTime()->required(), ] ), 'secondary' => Builder::object( [ 'after' => Builder::string()->formatDateTime()->required(), 'before' => Builder::string()->formatDateTime()->required(), ] ), ] ), ]; } }