Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const fetch = require("node-fetch")
- async function aio(videoUrl) {
- const searchResponse = await fetch('https://ssvid.app/api/ajax/search?hl=id', {
- method: 'POST',
- headers: {
- 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
- 'Accept': '*/*',
- 'X-Requested-With': 'XMLHttpRequest',
- 'User-Agent': 'Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Mobile Safari/537.36',
- 'Referer': 'https://ssvid.app/id'
- },
- body: `query=${encodeURIComponent(videoUrl)}&cf_token=&vt=home`
- });
- const searchResult = await searchResponse.json();
- if (searchResult.data && searchResult.data.extractor === 'tiktok') {
- const tiktokData = searchResult.data;
- return {
- vid: tiktokData.keyword,
- title: tiktokData.title,
- a: tiktokData.author?.full_name,
- thumbnail: tiktokData.thumbnail,
- author: tiktokData.author,
- links: {
- video: tiktokData.links.video.map(item => ({
- q_text: item.q_text,
- size: item.size,
- downloadUrl: item.url,
- f: 'mp4'
- })),
- audio: tiktokData.links.audio.map(item => ({
- q_text: item.q_text,
- size: item.size,
- downloadUrl: item.url,
- f: 'mp3'
- }))
- }
- };
- }
- if (searchResult.data && searchResult.data.extractor === 'instagram-downloader') {
- const instagramData = searchResult.data;
- return {
- vid: instagramData.pid,
- title: instagramData.title,
- a: instagramData.author?.full_name,
- thumbnail: instagramData.thumbnail,
- author: instagramData.author,
- links: {
- video: Object.entries(instagramData.links.video).map(([quality, item]) => ({
- q_text: item.q_text,
- size: item.size,
- downloadUrl: item.url,
- f: 'mp4',
- resolution: item.resolution
- }))
- }
- };
- }
- if (searchResult.data && searchResult.data.extractor === 'facebook') {
- const facebookData = searchResult.data;
- return {
- vid: facebookData.pid,
- title: facebookData.title,
- a: facebookData.author?.full_name,
- thumbnail: facebookData.thumbnail,
- author: facebookData.author,
- links: {
- video: Object.entries(facebookData.links.video).map(([quality, item]) => ({
- q_text: item.q_text,
- size: item.size,
- downloadUrl: item.url,
- f: 'mp4',
- resolution: item.resolution
- })),
- audio: facebookData.links.audio.map(item => ({
- q_text: item.q_text,
- size: item.size,
- downloadUrl: item.url,
- f: 'm4a',
- resolution: item.resolution
- }))
- }
- };
- }
- const vid = searchResult.vid;
- const allDownloads = {};
- for (const [formatType, qualities] of Object.entries(searchResult.links)) {
- allDownloads[formatType] = {};
- for (const [qualityCode, qualityInfo] of Object.entries(qualities)) {
- const convertResponse = await fetch('https://ssvid.app/api/ajax/convert?hl=id', {
- method: 'POST',
- headers: {
- 'authority': 'ssvid.app',
- 'accept': '*/*',
- 'accept-language': 'id-ID,id;q=0.9,en-US;q=0.8,en;q=0.7',
- 'content-type': 'application/x-www-form-urlencoded; charset=UTF-8',
- 'origin': 'https://ssvid.app',
- 'referer': 'https://ssvid.app/id',
- 'sec-ch-ua': '"Chromium";v="139", "Not;A=Brand";v="99"',
- 'sec-ch-ua-mobile': '?1',
- 'sec-ch-ua-platform': '"Android"',
- 'sec-fetch-dest': 'empty',
- 'sec-fetch-mode': 'cors',
- 'sec-fetch-site': 'same-origin',
- 'user-agent': 'Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Mobile Safari/537.36',
- 'x-requested-with': 'XMLHttpRequest'
- },
- body: `vid=${vid}&k=${encodeURIComponent(qualityInfo.k)}`
- });
- const convertResult = await convertResponse.json();
- allDownloads[formatType][qualityCode] = {
- size: qualityInfo.size,
- f: qualityInfo.f,
- q: qualityInfo.q,
- q_text: qualityInfo.q_text,
- downloadUrl: convertResult.dlink,
- fquality: convertResult.fquality
- };
- }
- }
- return {
- vid: searchResult.vid,
- title: searchResult.title,
- a: searchResult.a,
- links: allDownloads
- };
- }
- //use
- return aio("https://www.instagram.com/reel/DOA5XWIjzEk/?igsh=MWFyMmxvN2w5b3l5cg==")
Advertisement
Add Comment
Please, Sign In to add comment