private async Task DisableIntegrationAsync(WebHookNotification body)
        {
            switch (body.Type)
            {
            case WebHookType.General:
                await _webHookRepository.MarkDisabledAsync(body.WebHookId).AnyContext();

                break;

            case WebHookType.Slack:
                var project = await _projectRepository.GetByIdAsync(body.ProjectId).AnyContext();

                var token = project?.GetSlackToken();
                if (token == null)
                {
                    return;
                }

                await _slackService.RevokeAccessTokenAsync(token.AccessToken).AnyContext();

                if (project.NotificationSettings.Remove(Project.NotificationIntegrations.Slack) | project.Data.Remove(Project.KnownDataKeys.SlackToken))
                {
                    await _projectRepository.SaveAsync(project, o => o.Cache());
                }

                break;
            }
        }