Nftoken Generate

JavaScriptPublic
by zx-apiSep 5, 2026, 05:02 PMExpires: Never764 views
Nftoken Generate
Raw
1/* 
2 * Name: NfToken Generate Akun Premium Rendom
3 * Description: Ngambil Nf Token Login Ke Akun Netflix Premium ( gak bisa costum plan/negara)
4 * Credit by zx
5 * Note: Kalau Mau di sher lagi kasih sumber/credit ya ๐Ÿ˜ก๐Ÿ˜ก
6 *
7 * Sumber: https://whatsapp.com/channel/0029VbDLqe7EquiSF4STU13o
8 * Saluran Yang punya Nftoken ya:
9 * https://whatsapp.com/channel/0029VbDTbWUD8SE7nkyNsd33/317
10 *
11 * URL WEBSITE UPLOADER GRATIS: https://zfile.web.id/
12 * Website Uploader File Gratis yang bisa memberikan url public untuk mendownload File tersebut 
13 *
14*/
15
16const axios = require('axios');
17const fs = require('fs');
18const path = require('path');
19
20const API_URL = 'https://nftoken.zone.id/api/auto-generate';
21const MAX_RETRIES = 3;
22const RETRY_DELAY_MS = 1000;
23
24/**
25 * Generate nftoken dari nftoken.zone.id
26 * @param {number} count - Jumlah token yang ingin di-generate (default: 1)
27 * @param {string} outputFile - Nama file output JSON (optional)
28 * @returns {Promise<Object|Array>} Hasil response atau array response
29 */
30async function generateNFToken(count = 1, outputFile = null) {
31  const results = [];
32  const errors = [];
33
34  console.log(`๐Ÿš€ Starting generation of ${count} token(s)...\n`);
35
36  for (let i = 0; i < count; i++) {
37    let attempt = 0;
38    let success = false;
39    let result = null;
40
41    while (attempt < MAX_RETRIES && !success) {
42      try {
43        const response = await axios.post(API_URL, {}, {
44          headers: {
45            'Content-Type': 'application/json',
46            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36',
47            'Accept': 'application/json',
48          },
49          timeout: 15000,
50        });
51
52        if (response.data?.success) {
53          result = {
54            index: i + 1,
55            success: true,
56            token: response.data.token,
57            expiry: response.data.expiry,
58            profile: response.data.profile,
59            links: response.data.links,
60            type: response.data.type,
61            generatedAt: new Date().toISOString(),
62          };
63          success = true;
64
65          console.log(`โœ… [${i + 1}/${count}] Token generated successfully`);
66          console.log(`   ๐Ÿ“Œ Token: ${response.data.token.substring(0, 50)}...`);
67          console.log(`   ๐Ÿ“… Expiry: ${response.data.expiry}`);
68          console.log(`   ๐ŸŒ Country: ${response.data.profile?.country || 'Unknown'}`);
69          console.log(`   ๐Ÿ’Ž Plan: ${response.data.profile?.plan || 'Unknown'}`);
70          console.log('');
71        } else {
72          throw new Error('API returned success: false');
73        }
74      } catch (error) {
75        attempt++;
76        const msg = error.response
77          ? `HTTP ${error.response.status} - ${error.response.statusText}`
78          : error.message;
79        console.log(`โŒ [${i + 1}/${count}] Attempt ${attempt}/${MAX_RETRIES} failed: ${msg}`);
80
81        if (attempt >= MAX_RETRIES) {
82          errors.push({
83            index: i + 1,
84            error: msg,
85            failedAt: new Date().toISOString(),
86          });
87        } else {
88          console.log(`   โณ Retrying in ${RETRY_DELAY_MS}ms...`);
89          await sleep(RETRY_DELAY_MS);
90        }
91      }
92    }
93
94    if (result) results.push(result);
95  }
96
97  const summary = {
98    totalRequested: count,
99    successCount: results.length,
100    errorCount: errors.length,
101    generatedAt: new Date().toISOString(),
102    data: results,
103    errors,
104  };
105
106  console.log('โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•');
107  console.log(`๐Ÿ“Š SUMMARY: ${results.length}/${count} berhasil, ${errors.length} gagal`);
108  console.log('โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•\n');
109
110  if (outputFile) {
111    const outputPath = path.resolve(outputFile);
112    fs.writeFileSync(outputPath, JSON.stringify(summary, null, 2));
113    console.log(`๐Ÿ’พ Results saved to: ${outputPath}`);
114  }
115
116  return count === 1 ? results[0] || errors[0] : summary;
117}
118
119function sleep(ms) {
120  return new Promise(resolve => setTimeout(resolve, ms));
121}
122
123/**
124 * Helper: Ambil hanya token string (untuk penggunaan cepat)
125 */
126async function getTokenOnly() {
127  const result = await generateNFToken(1);
128  return result?.token || null;
129}
130
131// Contoh Penggunaan
132(async () => {
133  try {
134    // Generate 1 token
135    const single = await generateNFToken(1);
136    console.log('\n๐Ÿ“Ž Netflix Link:', single);
137
138    //  Generate 5 token sekaligus & simpan ke file
139    // const bulk = await generateNFToken(5, 'results.json');
140
141    // Ambil token string saja
142    // const token = await getTokenOnly();
143    // console.log('Raw token:', token);
144  } catch (err) {
145    console.error('Fatal error:', err);
146  }
147})();
148
149module.exports = { generateNFToken, getTokenOnly };
149 linesยท4,790 charsยท4.9 KB