| const axios = require('axios'); | |
| const handler = async (req, res) => { | |
| try { | |
| const { url } = req.query; | |
| if (!url) { | |
| return res.status(400).json({ | |
| success: false, | |
| error: 'Missing required parameter: url' | |
| }); | |
| } | |
| const match = url.match(/\/s\/([^/?#]+)/); | |
| if (!match || !match[1]) { | |
| return res.status(400).json({ | |
| success: false, | |
| error: 'Invalid URL format' | |
| }); | |
| } | |
| const id = match[1]; | |
| const { data } = await axios.get(`https://tera2.sylyt93.workers.dev/info?s=${id}`); | |
| res.json({ | |
| author: "Herza", | |
| success: data.status === 'ok', | |
| data: data.status === 'ok' ? { | |
| file: data.file, | |
| dlink: data.dlink | |
| } : {} | |
| }); | |
| } catch (error) { | |
| res.status(500).json({ | |
| success: false, | |
| error: error.message | |
| }); | |
| } | |
| }; | |
| module.exports = { | |
| name: 'TeraBox DL', | |
| description: 'Auto extract ID and get file info from TeraBox URL', | |
| type: 'GET', | |
| routes: ['api/download/terabox'], | |
| tags: ['downloader', 'tools', 'misc'], | |
| parameters: ['url', 'key'], | |
| enabled: true, | |
| main: ['Downloader'], | |
| handler | |
| }; | |