Skip to content

Instantly share code, notes, and snippets.

@rich-hart
Last active May 10, 2022 01:18
Show Gist options
  • Save rich-hart/4db7735f38efa9fcd59f142567096c74 to your computer and use it in GitHub Desktop.
Save rich-hart/4db7735f38efa9fcd59f142567096c74 to your computer and use it in GitHub Desktop.
"API-Resource Routes that I am confident are no longer in use. I could be wrong, but these are the ones I'm _pretty_ sure about:" - Anonymous
app.post('/login', users.authenticate)
app.get('/apps', apps.read)
app.get('/apps/:appId', apps.readOne)
app.put('/apps/:appId', apps.update)
app.get('/dynimg/:appId/bsin/:userId/:model/:recNum/:notificationId.:ext', dynimg)
app.get('/dynimg/:appId/email/:userId/:model/:recNum/:notificationId.:ext', dynimg)
app.get('/dynimg/:appId/user_id/:userId/:model/:recNum/:notificationId.:ext', dynimg)
// dynlink and dynsubject can use :idType since there is no conflict in path arity
app.get('/dynlink/:appId/:idType/:userId/:model/:recNum/:notificationId', dynlink)
app.get('/dynsubject/:appId/:idType/:userId/:model/:recNum/:notificationId', dynsubject)
// dynamic image recommendations
app.get('/dynimg/:appId/:userId/:model/:recNum/:notificationId.:ext', dynimg)
app.get('/dynimg/:appId/:userId/:model/:recNum/:notificationId/:trackingId.:ext', dynimg)
app.get('/dynimg/:appId/:userId/:model/:recNum/:notificationId/:trackingId/:uuid.:ext', dynimg)
app.get('/dynimg/:appId/:userId/:model/:recNum/:notificationId/:trackingId/:uuid/:seed.:ext', dynimg)
app.get('/dynimg/:appId/:userId/:model/:recNum/:notificationId/:trackingId/:uuid/:seed/:exclude.:ext', dynimg)
app.get('/dynlink/:appId/:userId/:model/:recNum/:notificationId', dynlink)
app.get('/dynsubject/:appId/:userId/:model/:recNum/:notificationId', dynsubject)
app.post('/tokens', tokens.create)
app.delete('/tokens', tokens.deleteAllExpired)
app.get('/authorizations', authorizations.read)
app.post('/notifications', notifications.create)
app.get('/notifications', notifications.read)
app.get('/notifications/activeApps', notifications.activeApps)
app.get('/notifications/:notificationId', notifications.readOne)
app.put('/notifications/:id', notifications.upsert)
app.patch('/notifications/:id', notifications.patch)
app.delete('/notifications/:notificationId', notifications.delete)
app.get('/notifications/:notificationId/users/:userId.html', notifications.email)
app.get('/notifications/:notificationId/batches', batches.byNotification)
app.get('/notifications/:notificationId/batches/active', batches.activeBatchForNotification)
app.post('/notifications/:notificationId/batches', batches.createForNotification)
app.post('/validate/campaign', validate.campaign)
// batch crud
app.get('/batches/:id', batches.readOne)
app.put('/batches/:id', batches.upsert)
app.patch('/batches/:id', batches.patch)
app.post('/batches/:id/cancel', batches.cancel)
app.post('/batches/:id/deactivate', batches.deactivate)
app.post('/segments', segments.create)
app.get('/segments', segments.read)
app.get('/segments/:segmentId', segments.readOne)
app.put('/segments/:segmentId', segments.update)
app.delete('/segments/:segmentId', segments.delete)
app.post('/segments/query', segments.query)
app.get('/analytics/events', analytics.eventMetrics)
app.get('/analytics/users', analytics.userMetrics)
app.get('/analytics/resources', analytics.resourceMetrics)
app.get('/analytics/attributes', analytics.attributeMetrics)
app.get('/analytics/sendgrid', analytics.sendgrid)
app.get('/analytics/topics', analytics.topicMetrics)
app.get('/analytics/clickthroughs', analytics.clickthroughMetrics)
app.get('/analytics/notifications', analytics.notificationMetrics)
// Autocomplete
app.get('/autocomplete', autocomplete.complete)
app.put('/autocomplete/rebuild', autocomplete.rebuild)
// Unsubscribe
app.get('/unsubscribe/:app/:bsin/:email', unsubscribe.create)
app.get('/unsubscribe/:app/:bsin/:email/:notification', unsubscribe.create)
app.post('/unsubscribe', unsubscribe.byPost)
app.get('/feed/suppression', unsubscribe.read)
// deprecated, but keeping for old emails
app.get('/unsubscribe', unsubscribe.create)
// Resubscribe
app.get('/resubscribe/:app/:email', resubscribe)
app.get('/resubscribe/:app/:email/:notification', resubscribe)
app.post('/resubscribe', resubscribe)
// Templates
app.post('/templates', templates.create)
app.get('/templates', templates.read)
app.get('/templates/:templateId', templates.readOne)
app.put('/templates/:templateId', templates.update)
app.patch('/templates/:templateId', templates.patch)
app.delete('/templates/:templateId', templates.delete)
// Snippets
app.post('/snippets', snippets.create)
app.get('/snippets', snippets.read)
app.get('/snippets/:snippetId', snippets.readOne)
app.put('/snippets/:snippetId', snippets.update)
app.patch('/snippets/:snippetId', snippets.patch)
app.delete('/snippets/:snippetId', snippets.delete)
app.post('/feedback', feedback)
// External client monitoring for Dynamic Image
app.get('/monitoring/dynimgCampaigns', notifications.dynimgCampaigns)
app.post('/monitoring/dynimgCampaigns/results', storeExternalMonitorFetchRecLatency)
// API Keys
app.get('/apikeys', apiKeys.list)
app.post('/apikeys', express.bodyParser(), apiKeys.add)
app.del('/apikeys', express.bodyParser(), apiKeys.revoke)
// V1 Partner API
app.get('/v1/insights/dashboards', v1.insights.dashboards)
// signup
app.post('/signup/invite', signup.invite)
app.post('/signup/join', signup.join)
app.post('/signup', signup.new)
// Password Reset
app.post('/password/reset', passwordReset.generate)
app.post('/password/set', passwordReset.resolve)
app.post('/password/change', passwordReset.change)
// signup configs
app.post('/signupConfigs', signupConfigs.create)
app.get('/signupConfigs', signupConfigs.read)
app.get('/signupConfigs/:configId', signupConfigs.readOne)
app.put('/signupConfigs/:configId', signupConfigs.update)
app.delete('/signupConfigs/:configId', signupConfigs.delete)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment