diff --git a/core/server/api/canary/members.js b/core/server/api/canary/members.js index f66e075ef8..68e617f3ed 100644 --- a/core/server/api/canary/members.js +++ b/core/server/api/canary/members.js @@ -475,5 +475,17 @@ module.exports = { }); return volumeStats; } + }, + + activityFeed: { + permissions: { + method: 'browse' + }, + async query() { + const events = await membersService.api.events.getEventTimeline(); + return { + events + }; + } } }; diff --git a/core/server/api/canary/utils/serializers/output/members.js b/core/server/api/canary/utils/serializers/output/members.js index 9886c20cff..0763fa0b65 100644 --- a/core/server/api/canary/utils/serializers/output/members.js +++ b/core/server/api/canary/utils/serializers/output/members.js @@ -18,7 +18,8 @@ module.exports = { memberStats: createSerializer('memberStats', passthrough), mrrStats: createSerializer('mrrStats', passthrough), subscriberStats: createSerializer('subscriberStats', passthrough), - grossVolumeStats: createSerializer('grossVolumeStats', passthrough) + grossVolumeStats: createSerializer('grossVolumeStats', passthrough), + activityFeed: createSerializer('activityFeed', passthrough) }; /** diff --git a/core/server/web/api/canary/admin/routes.js b/core/server/web/api/canary/admin/routes.js index f589d5a093..71bda889a2 100644 --- a/core/server/web/api/canary/admin/routes.js +++ b/core/server/web/api/canary/admin/routes.js @@ -97,6 +97,8 @@ module.exports = function apiRoutes() { router.get('/members/stats/gross_volume', mw.authAdminApi, http(apiCanary.members.grossVolumeStats)); router.get('/members/stats', mw.authAdminApi, http(apiCanary.members.stats)); + router.get('/members/events', mw.authAdminApi, http(apiCanary.members.activityFeed)); + router.get('/members/upload', mw.authAdminApi, http(apiCanary.members.exportCSV)); router.post('/members/upload', mw.authAdminApi,