headers->get("authorization") ?: ""); $user = User::fetchWithAccessToken($accessToken); if (empty($user)) { throw new UnauthorizedError(); } $userId = $request->get("userId"); if ($user->getId() !== $userId) { throw new UnauthorizedError(); } $body = json_decode($request->getContent(), true); RequestValidator::validateJson(); $filterId = md5($userId . random_bytes(512)); Database::getInstance()->query(<< $filterId, "account_data" => isset($body["account_data"]) ? json_encode($body["account_data"]) : null, "event_fields" => isset($body["event_fields"]) ? json_encode($body["event_fields"]) : null, "event_format" => isset($body["event_format"]) ? json_encode($body["event_format"]) : null, "presence" => isset($body["presence"]) ? json_encode($body["presence"]) : null, "room" => isset($body["room"]) ? json_encode($body["room"]) : null, "user_id" => $userId, ]); return new JsonResponse([ "filter_id" => $filterId, ]); } }