|
|
const express = require('express'); |
|
|
const { tiktokStalk } = require('./lib/tiktokstalk'); |
|
|
const { yt1s } = require('./lib/yt1s'); |
|
|
const { ytdl } = require('./lib/ytdl'); |
|
|
|
|
|
const app = express(); |
|
|
const port = process.env.PORT || 7860; |
|
|
|
|
|
|
|
|
app.use(express.json()); |
|
|
|
|
|
app.get('/', (req, res) => res.status(400).json({ message: 'Hello World' })); |
|
|
|
|
|
|
|
|
app.get('/endpoint/tiktokstalk', async (req, res) => { |
|
|
const query = req.query.query; |
|
|
|
|
|
console.log(`[TikTokStalk] Received query: ${query}`); |
|
|
|
|
|
if (!query) { |
|
|
console.error(`[TikTokStalk] Error: Query is required`); |
|
|
return res.status(400).json({ error: 'Query is required' }); |
|
|
} |
|
|
|
|
|
try { |
|
|
const result = await tiktokStalk(query); |
|
|
console.log(`[TikTokStalk] Success: Result fetched for ${query}`); |
|
|
res.json(result); |
|
|
} catch (error) { |
|
|
console.error(`[TikTokStalk] Error:`, error); |
|
|
res.status(500).json({ error: 'Something went wrong' }); |
|
|
} |
|
|
}); |
|
|
|
|
|
|
|
|
app.get('/endpoint/yt1s', async (req, res) => { |
|
|
const url = req.query.url; |
|
|
|
|
|
console.log(`[YouTubeDownload] Received request for URL: ${url}`); |
|
|
|
|
|
if (!url) { |
|
|
console.error(`[YouTubeDownload] Error: URL is required`); |
|
|
return res.status(400).json({ error: 'URL is required' }); |
|
|
} |
|
|
|
|
|
try { |
|
|
const result = await yt1s.dl(url); |
|
|
console.log(`[YouTubeDownload] Success: Video fetched for URL: ${url}`); |
|
|
res.json(result); |
|
|
} catch (error) { |
|
|
console.error(`[YouTubeDownload] Error:`, error); |
|
|
res.status(500).json({ error: 'Something went wrong' }); |
|
|
} |
|
|
}); |
|
|
|
|
|
|
|
|
app.get('/endpoint/ytdl', async (req, res) => { |
|
|
const url = req.query.url; |
|
|
const resolution = parseInt(req.query.resolution, 10) || 720; |
|
|
|
|
|
console.log(`[YTDLDownload] Received request for URL: ${url}, Resolution: ${resolution}`); |
|
|
|
|
|
if (!url) { |
|
|
console.error(`[YTDLDownload] Error: URL is required`); |
|
|
return res.status(400).json({ error: 'URL is required' }); |
|
|
} |
|
|
|
|
|
try { |
|
|
const result = await ytdl(url, resolution); |
|
|
console.log(`[YTDLDownload] Success: Video fetched for URL: ${url}, Resolution: ${resolution}`); |
|
|
res.json(result); |
|
|
} catch (error) { |
|
|
console.error(`[YTDLDownload] Error:`, error); |
|
|
res.status(500).json({ error: 'Something went wrong' }); |
|
|
} |
|
|
}); |
|
|
|
|
|
|
|
|
app.listen(port, () => { |
|
|
console.log(`API running on http://localhost:${port}`); |
|
|
}); |
|
|
|