feat: slack integration deletion

This commit is contained in:
Sheen Capadngan
2024-09-02 20:34:13 +08:00
parent f6d3831d6d
commit 07fd489982
7 changed files with 276 additions and 135 deletions
@@ -126,6 +126,46 @@ export const registerSlackRouter = async (server: FastifyZodProvider) => {
}
});
server.route({
method: "DELETE",
url: "/:slackIntegrationId",
config: {
rateLimit: writeLimit
},
schema: {
security: [
{
bearerAuth: []
}
],
params: z.object({
slackIntegrationId: z.string()
}),
response: {
200: SlackIntegrationsSchema.pick({
id: true,
teamName: true,
isAccessRequestNotificationEnabled: true,
accessRequestChannels: true,
isSecretRequestNotificationEnabled: true,
secretRequestChannels: true
})
}
},
onRequest: verifyAuth([AuthMode.JWT, AuthMode.IDENTITY_ACCESS_TOKEN]),
handler: async (req) => {
// TODO: add audit logs
return server.services.slack.deleteSlackIntegration({
actor: req.permission.type,
actorId: req.permission.id,
actorAuthMethod: req.permission.authMethod,
actorOrgId: req.permission.orgId,
id: req.params.slackIntegrationId
});
}
});
server.route({
method: "GET",
url: "/oauth_redirect",