import Route from "./interface"; import HTTP_METHODS from "../constants/HttpMethods"; class SchedulerRoute { public static routes: { [key: string]: Route } = { // Title Promotion Schedule Routes listSchedules: { url: '/schedulers', method: HTTP_METHODS.GET }, createSchedule: { url: '/schedulers', method: HTTP_METHODS.POST }, getSchedule: { url: '/schedulers/{scheduler_id}', method: HTTP_METHODS.GET }, updateSchedule: { url: '/schedulers/{scheduler_id}', method: HTTP_METHODS.PUT }, deleteSchedule: { url: '/schedulers/{scheduler_id}', method: HTTP_METHODS.DELETE }, getSchedulePosts: { url: '/schedulers/{scheduler_id}/posts', method: HTTP_METHODS.GET }, // Title Update Routes listUpdates: { url: '/schedulers/{scheduler_id}/updates', method: HTTP_METHODS.GET }, searchUpdates: { url: '/schedulers/{scheduler_id}/updates/search', method: HTTP_METHODS.GET }, createUpdate: { url: '/schedulers/{scheduler_id}/updates', method: HTTP_METHODS.POST }, getUpdate: { url: '/schedulers/{scheduler_id}/updates/{update_id}', method: HTTP_METHODS.GET }, updateUpdate: { url: '/schedulers/{scheduler_id}/updates/{update_id}', method: HTTP_METHODS.PUT }, deleteUpdate: { url: '/schedulers/{scheduler_id}/updates/{update_id}', method: HTTP_METHODS.DELETE }, scheduleUpdate: { url: '/schedulers/{scheduler_id}/updates/{update_id}/schedule', method: HTTP_METHODS.POST }, testTone: { url: '/schedulers/{scheduler_id}/tone', method: HTTP_METHODS.POST }, getSchedulerReports: { url: '/schedulers/{scheduler_id}/reports', method: HTTP_METHODS.GET }, getSchedulerProgression: { url: '/schedulers/{scheduler_id}/progression', method: HTTP_METHODS.GET }, // Clear OAuth Routes clearTwitterAuth: { url: '/schedulers/{scheduler_id}/clearTwitterAuth', method: HTTP_METHODS.DELETE }, clearFacebookAuth: { url: '/schedulers/{scheduler_id}/clearFacebookAuth', method: HTTP_METHODS.DELETE }, clearInstagramAuth: { url: '/schedulers/{scheduler_id}/clearInstagramAuth', method: HTTP_METHODS.DELETE }, clearSnapchatAuth: { url: '/schedulers/{scheduler_id}/clearSnapchatAuth', method: HTTP_METHODS.DELETE }, clearTikTokAuth: { url: '/schedulers/{scheduler_id}/clearTikTokAuth', method: HTTP_METHODS.DELETE }, clearTwitchAuth: { url: '/schedulers/{scheduler_id}/clearTwitchAuth', method: HTTP_METHODS.DELETE }, clearKickAuth: { url: '/schedulers/{scheduler_id}/clearKickAuth', method: HTTP_METHODS.DELETE }, clearRedditAuth: { url: '/schedulers/{scheduler_id}/clearRedditAuth', method: HTTP_METHODS.DELETE }, clearRedditAdsAuth: { url: '/schedulers/{scheduler_id}/clearRedditAdsAuth', method: HTTP_METHODS.DELETE }, clearYouTubeAuth: { url: '/schedulers/{scheduler_id}/clearYouTubeAuth', method: HTTP_METHODS.DELETE }, clearPatreonAuth: { url: '/schedulers/{scheduler_id}/clearPatreonAuth', method: HTTP_METHODS.DELETE }, clearPinterestAuth: { url: '/schedulers/{scheduler_id}/clearPinterestAuth', method: HTTP_METHODS.DELETE }, clearSteamAuth: { url: '/schedulers/{scheduler_id}/clearSteamAuth', method: HTTP_METHODS.DELETE }, clearDiscordAuth: { url: '/schedulers/{scheduler_id}/clearDiscordAuth', method: HTTP_METHODS.DELETE }, clearBlueskyAuth: { url: '/schedulers/{scheduler_id}/clearBlueskyAuth', method: HTTP_METHODS.DELETE }, clearTiktokAdsAuth: { url: '/schedulers/{scheduler_id}/clearTiktokAdsAuth', method: HTTP_METHODS.DELETE }, clearGoogleAdsAuth: { url: '/schedulers/{scheduler_id}/clearGoogleAdsAuth', method: HTTP_METHODS.DELETE }, //Social Utility Routes getFacebookGroups: { url: '/schedulers/{scheduler_id}/facebook/groups', method: HTTP_METHODS.GET }, getInstagramAccounts: { url: '/schedulers/{scheduler_id}/instagram/accounts', method: HTTP_METHODS.GET }, getRedditSubreddits: { url: '/schedulers/{scheduler_id}/reddit/subreddits', method: HTTP_METHODS.GET }, getRedditSubredditFlairs: { url: '/schedulers/{scheduler_id}/reddit/subreddits/{subreddit}/flairs', method: HTTP_METHODS.GET }, getRedditSubredditRules: { url: '/schedulers/{scheduler_id}/reddit/subreddits/{subreddit}/rules', method: HTTP_METHODS.GET }, getDiscordChannels: { url: '/schedulers/{scheduler_id}/discord/channels', method: HTTP_METHODS.GET }, searchDiscordMedia: { url: '/schedulers/{scheduler_id}/discord/media', method: HTTP_METHODS.GET }, importDiscordMedia: { url: '/schedulers/{scheduler_id}/discord/media/import', method: HTTP_METHODS.POST }, getDiscordUserCommandStatus: { url: '/schedulers/{scheduler_id}/discord/user-command', method: HTTP_METHODS.GET }, disconnectDiscordUserCommand: { url: '/schedulers/{scheduler_id}/discord/user-command', method: HTTP_METHODS.DELETE }, listDiscordMediaCaptures: { url: '/schedulers/{scheduler_id}/discord/captures', method: HTTP_METHODS.GET }, importDiscordMediaCapture: { url: '/schedulers/{scheduler_id}/discord/captures/import', method: HTTP_METHODS.POST }, dismissDiscordMediaCapture: { url: '/schedulers/{scheduler_id}/discord/captures/{capture_id}', method: HTTP_METHODS.DELETE }, crossPromoteListRelationships: { url: '/schedulers/{scheduler_id}/crosspromote/relationships', method: HTTP_METHODS.GET }, crossPromoteFind: { url: '/schedulers/{scheduler_id}/crosspromote/find', method: HTTP_METHODS.GET }, crossPromoteInvitesList: { url: '/schedulers/{scheduler_id}/crosspromote/invites', method: HTTP_METHODS.GET }, crossPromoteInviteSend: { url: '/schedulers/{scheduler_id}/crosspromote/invites', method: HTTP_METHODS.POST }, crossPromoteInviteAccept: { url: '/schedulers/{scheduler_id}/crosspromote/invites/{invite_id}/accept', method: HTTP_METHODS.POST }, crossPromoteInviteReject: { url: '/schedulers/{scheduler_id}/crosspromote/invites/{invite_id}/reject', method: HTTP_METHODS.POST }, crossPromoteRelationshipDelete: { url: '/schedulers/{scheduler_id}/crosspromote/relationships/{relationship_id}', method: HTTP_METHODS.DELETE }, crossPromoteRelationshipGetPlatforms: { url: '/schedulers/{scheduler_id}/crosspromote/relationships/{relationship_id}/platforms', method: HTTP_METHODS.GET }, crossPromoteRelationshipSetPlatforms: { url: '/schedulers/{scheduler_id}/crosspromote/relationships/{relationship_id}/platforms', method: HTTP_METHODS.PUT }, crossPromoteRelationshipPosts: { url: '/schedulers/{scheduler_id}/crosspromote/relationships/{relationship_id}/posts', method: HTTP_METHODS.GET }, crossPromoteSearch: { url: '/schedulers/cross-promote/search', method: HTTP_METHODS.GET }, crossPromoteInvitationSend: { url: '/schedulers/cross-promote/invitations', method: HTTP_METHODS.POST }, crossPromoteInvitationRespond: { url: '/schedulers/cross-promote/invitations/{invitation_id}/respond', method: HTTP_METHODS.POST }, crossPromoteRelationshipsList: { url: '/schedulers/cross-promote/relationships', method: HTTP_METHODS.GET }, crossPromoteRelationshipEnd: { url: '/schedulers/cross-promote/relationships/{relationship_id}/end', method: HTTP_METHODS.POST }, crossPromoteRelationshipLogs: { url: '/schedulers/cross-promote/relationships/{relationship_id}/logs', method: HTTP_METHODS.GET }, getCampaignBusinesses: { url: "/schedulers/{scheduler_id}/businesses", method: HTTP_METHODS.GET, }, getCampaignAdAccounts: { url: "/schedulers/{scheduler_id}/ad_accounts", method: HTTP_METHODS.GET, }, getCampaignFundingInstruments: { url: "/schedulers/{scheduler_id}/funding_instruments", method: HTTP_METHODS.GET, }, generateContent: { url: '/schedulers/{scheduler_id}/generateContent', method: HTTP_METHODS.POST }, getRedditRecommendations: { url: '/schedulers/{scheduler_id}/reddit/recommendations', method: HTTP_METHODS.POST }, generateRedditContent: { url: '/schedulers/{scheduler_id}/reddit/generateContent', method: HTTP_METHODS.POST }, getRedditSubredditMatches: { url: '/schedulers/{scheduler_id}/reddit/subreddit-matches', method: HTTP_METHODS.POST }, getRedditSubredditPositioning: { url: '/schedulers/{scheduler_id}/reddit/subreddit-positioning', method: HTTP_METHODS.POST }, listDestinations: { url: '/schedulers/{scheduler_id}/updates/{update_id}/destinations', method: HTTP_METHODS.GET }, createDestination: { url: '/schedulers/{scheduler_id}/updates/{update_id}/destinations', method: HTTP_METHODS.POST }, getDestination: { url: '/schedulers/{scheduler_id}/updates/{update_id}/destinations/{destination_id}', method: HTTP_METHODS.GET }, updateDestination: { url: '/schedulers/{scheduler_id}/updates/{update_id}/destinations/{destination_id}', method: HTTP_METHODS.PUT }, deleteDestination: { url: '/schedulers/{scheduler_id}/updates/{update_id}/destinations/{destination_id}', method: HTTP_METHODS.DELETE }, getSchedulerPostsWithComments: { url: '/schedulers/{scheduler_id}/posts-with-comments', method: HTTP_METHODS.GET }, syncAllSchedulerComments: { url: '/schedulers/{scheduler_id}/sync-all-comments', method: HTTP_METHODS.POST }, getConversionActions: { url: '/schedulers/{scheduler_id}/conversion-actions', method: HTTP_METHODS.GET }, sendTestConversionEvent: { url: '/schedulers/{scheduler_id}/test-event/{platform}', method: HTTP_METHODS.GET }, syncHistory: { url: '/schedulers/{scheduler_id}/sync-history/{platform}', method: HTTP_METHODS.POST }, generateHashtags: { url: '/schedulers/{scheduler_id}/generateHashtags', method: HTTP_METHODS.POST }, getTikTokHashtags: { url: '/schedulers/{scheduler_id}/tiktok/discovery/hashtags', method: HTTP_METHODS.GET }, getTikTokMusic: { url: '/schedulers/{scheduler_id}/tiktok/discovery/music', method: HTTP_METHODS.GET }, getTikTokMusicList: { url: '/schedulers/{scheduler_id}/tiktok/music', method: HTTP_METHODS.GET }, getTikTokTrendingHashtags: { url: '/schedulers/{scheduler_id}/tiktok/discovery/hashtags/trending', method: HTTP_METHODS.GET }, getTikTokHashtagDetail: { url: '/schedulers/{scheduler_id}/tiktok/discovery/hashtags/detail', method: HTTP_METHODS.GET }, getTikTokTrendingKeywords: { url: '/schedulers/{scheduler_id}/tiktok/discovery/search-keywords', method: HTTP_METHODS.GET }, getTikTokRecommendedKeywords: { url: '/schedulers/{scheduler_id}/tiktok/discovery/search-keywords/recommend', method: HTTP_METHODS.GET }, }; } export default SchedulerRoute;