Best JavaScript code snippet using stryker-parent
api.js
Source:api.js
1__path = process.cwd()2//var favicon = require('serve-favicon');3var express = require('express');4var db = require(__path + '/database/db');5try {6var zahirr = db.get("zahirr");7} catch (e) {8 console.log('') 9}10 11var creator = "Bimbim"12var neoxr = "yntkts"13var zeks = "administrator"14var zeks2 = "apivinz"15var secure = require('ssl-express-www');16var cors = require('cors');17var fetch = require('node-fetch');18var cheerio = require('cheerio');19var request = require('request');20var zrapi = require("zrapi");21var dotenv = require("dotenv").config()22var fs = require('fs');23var TikTokScraper = require('tiktok-scraper');24var { EmojiAPI } = require("emoji-api");25var emoji = new EmojiAPI();26var router = express.Router();27var { TiktokDownloader } = require('../lib/tiktokdl.js')28var { color, bgcolor } = require(__path + '/lib/color.js');29var { fetchJson } = require(__path + '/lib/fetcher.js');30var options = require(__path + '/lib/options.js');31var {32 Searchnabi,33 Gempa34} = require('./../lib');3536var {37 pShadow,38 pRomantic,39 pSmoke,40 pBurnPapper,41 pNaruto,42 pLoveMsg,43 pMsgGrass,44 pGlitch,45 pDoubleHeart,46 pCoffeCup,47 pLoveText,48 pButterfly49} = require("./../lib/utils/photooxy");5051var {52 ttdownloader,53 pinterest,54 fbdown,55 igstalk,56 igstory,57 igdl,58 linkwa,59 igDownloader60} = require("./../lib/anjay");6162var {63 igStalk,64 igDownloader65} = require("./../lib/utils/igdown");6667var {68 ytDonlodMp3,69 ytDonlodMp4,70 ytPlayMp3,71 ytPlayMp4,72 ytSearch73} = require("./../lib/utils/yt");7475var { 76 Joox, 77 FB, 78 Tiktok79} = require("./../lib/utils/downloader");8081var {82 Cuaca, 83 Lirik84} = require('./../lib/utils/information');8586var {87 Base, 88 WPUser89} = require('./../lib/utils/tools');9091var {92 fbDownloader,93 fbdown294} = require('./../lib/utils/fbdl');9596//var TiktokDownloader = require('./../lib/tiktokdl');9798var tebakGambar = require('./../lib/utils/tebakGambar');99100var cookie = process.env.COOCKIE101/*102* @Pesan Error103*/104loghandler = {105 notparam: {106 status: false,107 creator: `${creator}`,108 code: 406,109 message: 'masukan parameter apikey'110 },111 noturl: {112 status: false,113 creator: `${creator}`,114 code: 406,115 message: 'masukan parameter url'116 },117 notgcname: {118 status: false,119 creator: `${creator}`,120 code: 406,121 message: 'masukkan paramer gcname'122 },123 notgcicon: {124 status: false,125 creator: `${creator}`,126 code: 406,127 message: 'masukkan paramer gcicon'128 },129 notpp: {130 status: false,131 creator: `${creator}`,132 code: 406,133 message: 'masukkan paramer pp'134 },135 notbg: {136 status: false,137 creator: `${creator}`,138 code: 406,139 message: 'masukkan paramer bg'140 },141 notmemberCount: {142 status: false,143 creator: `${creator}`,144 code: 406,145 message: 'masukkan paramer memberCount'146 },147 notquery: {148 status: false,149 creator: `${creator}`,150 code: 406,151 message: 'masukkan parameter query'152 },153 notkata: {154 status: false,155 creator: `${creator}`,156 code: 406,157 message: 'masukan parameter kata'158 },159 nottext: {160 status: false,161 creator: `${creator}`,162 code: 406,163 message: 'masukan parameter text'164 },165 nottext2: {166 status: false,167 creator: `${creator}`,168 code: 406,169 message: 'masukan parameter text2'170 },171 notnabi: {172 status: false,173 creator: `${creator}`,174 code: 406, 175 message: 'masukan parameter nabi'176 },177 nottext3: {178 status: false,179 creator: `${creator}`,180 code: 406,181 message: 'masukan parameter text3'182 },183 nottheme: {184 status: false,185 creator: `${creator}`,186 code: 406,187 message: 'masukan parameter theme'188 },189 notusername: {190 status: false,191 creator: `${creator}`,192 code: 406,193 message: 'masukan parameter username'194 },195 notvalue: {196 status: false,197 creator: `${creator}`,198 code: 406,199 message: 'masukan parameter value'200 },201 invalidKey: {202 status: false,203 creator: `${creator}`,204 code: 406,205 message: 'apikey invalid'206 },207 invalidlink: {208 status: false,209 creator: `${creator}`,210 message: 'error, mungkin link anda tidak valid.'211 },212 invalidkata: {213 status: false,214 creator: `${creator}`,215 message: 'error, mungkin kata tidak ada dalam api.'216 },217 error: {218 status: false,219 creator: `${creator}`,220 message: '404 ERROR'221 }222}223224/*225Akhir Pesan Error226*/227228//router.use(favicon(__path + "/views/favicon.ico"));229230const listkey = ["apirey", "APIKEY", "ditofficial"];231232router.post("/apikey", async (req, res, next) => {233 const key = req.query.key;234 if(listkey.includes(key)) {235 res.json({236 message: 'apikey sudah terdaftar'237 });238 } else {239 listkey.push(key);240 res.json({241 message: `berhasil mendaftarkan ${key} Kedatabase apikey`242 });243 }244});245246// delete apikey247248router.delete("/apikey", async(req, res, next) => {249 const key = req.query.delete;250 if(listkey.includes(key)) {251 res.json({252 message: 'apikey tidak ada sebelumnya'253 })254 } else {255 listkey.splice(key, 1)256 res.json({257 message: 'apikey berhasil dihapus' 258});259 }260});261262router.get('/game/family100', async (req, res, next) => {263 var Apikey = req.query.apikey264265 if(!Apikey) return res.json(loghandler.notparam)266 if(listkey.includes(Apikey)){267 var soal = JSON.parse(268 fs.readFileSync(__path + '/data/family100.json')269 )270 res271 .status(200)272 .json({273 code: 200,274 success: true,275 ...soal[~~(Math.random() * soal.length)]276 })277 } else {278 res.json(loghandler.invalidKey)279 }280})281282router.get('/game/tebakkalimat', async (req, res, next) => {283 var Apikey = req.query.apikey284285 if(!Apikey) return res.json(loghandler.notparam)286 if(listkey.includes(Apikey)){287 var soal = JSON.parse(288 fs.readFileSync(__path + '/data/tebakkalimat.json')289 )290 res291 .status(200)292 .json({293 code: 200,294 success: true,295 ...soal[~~(Math.random() * soal.length)]296 })297 } else {298 res.json(loghandler.invalidKey)299 }300})301302router.get('/game/tebakkata', async (req, res, next) => {303 var Apikey = req.query.apikey304305 if(!Apikey) return res.json(loghandler.notparam)306 if(listkey.includes(Apikey)){307 var soal = JSON.parse(308 fs.readFileSync(__path + '/data/tebakkata.json')309 )310 res311 .status(200)312 .json({313 code: 200,314 success: true,315 ...soal[~~(Math.random() * soal.length)]316 })317 } else {318 res.json(loghandler.invalidKey)319 }320})321322router.get('/game/tebakjenaka', async (req, res, next) => {323 var Apikey = req.query.apikey324325 if(!Apikey) return res.json(loghandler.notparam)326 if(listkey.includes(Apikey)){327 var pertanyaan = JSON.parse(328 fs.readFileSync(__path + '/data/tebakjenaka.json')329 )330 res331 .status(200)332 .json({333 code: 200,334 success: true,335 ...pertanyaan[~~(Math.random() * pertanyaan.length)]336 })337 } else {338 res.json(loghandler.invalidKey)339 }340})341342router.get('/game/tebakkimia', async (req, res, next) => {343 var Apikey = req.query.apikey344345 if(!Apikey) return res.json(loghandler.notparam)346 if(listkey.includes(Apikey)){347 var nama = JSON.parse(348 fs.readFileSync(__path + '/data/tebakkimia.json')349 )350 res351 .status(200)352 .json({353 code: 200,354 success: true,355 ...nama[~~(Math.random() * nama.length)]356 })357 } else {358 res.json(loghandler.invalidKey)359 }360})361362router.get('/game/tebaklirik', async (req, res, next) => {363 var Apikey = req.query.apikey364365 if(!Apikey) return res.json(loghandler.notparam)366 if(listkey.includes(Apikey)){367 var question = JSON.parse(368 fs.readFileSync(__path + '/data/tebaklirik.json')369 )370 res371 .status(200)372 .json({373 code: 200,374 success: true,375 ...question[~~(Math.random() * question.length)]376 })377 } else {378 res.json(loghandler.invalidKey)379 }380})381382router.get('/game/tebakchara', async (req, res, next) => {383 var Apikey = req.query.apikey384385 if(!Apikey) return res.json(loghandler.notparam)386 if(listkey.includes(Apikey)){387 var name = JSON.parse(388 fs.readFileSync(__path + '/data/tebakchara.json')389 )390 res391 .status(200)392 .json({393 code: 200,394 success: true,395 ...name[~~(Math.random() * name.length)]396 })397 } else {398 res.json(loghandler.invalidKey)399 }400})401402router.get('/game/tebaktebakan', async (req, res, next) => {403 var Apikey = req.query.apikey404405 if(!Apikey) return res.json(loghandler.notparam)406 if(listkey.includes(Apikey)){407 var soal = JSON.parse(408 fs.readFileSync(__path + '/data/tebaktebakan.json')409 )410 res411 .status(200)412 .json({413 code: 200,414 success: true,415 ...soal[~~(Math.random() * soal.length)]416 })417 } else {418 res.json(loghandler.invalidKey)419 }420})421422router.get('/game/tebakbendera', async (req, res, next) => {423 var Apikey = req.query.apikey424425 if(!Apikey) return res.json(loghandler.notparam)426 if(listkey.includes(Apikey)){427 var bendera = JSON.parse(428 fs.readFileSync(__path + '/data/tebakbendera.json')429 )430 res431 .status(200)432 .json({433 code: 200,434 success: true,435 ...bendera[~~(Math.random() * bendera.length)]436 })437 } else {438 res.json(loghandler.invalidKey)439 }440})441442router.get('/music/joox', async(req, res, next) => {443 const query = req.query.query;444 const apikey = req.query.apikey;445 446 if(!query) return res.json(loghandler.notquery)447 if(!apikey) return res.json(loghandler.notparam)448 449 if(listkey.includes(apikey)){450 Joox(query)451 .then((result) => {452 res.json(result)453 res.json(result)454 });455 } else {456 res.json(loghandler.invalidKey)457 }458});459460router.get('/music/spotify', async(req, res, next) => {461 const apikey = req.query.apikey;462 const query = req.query.query;463 if(!apikey) return res.json(loghandler.notparam)464 if(!query) return res.json(loghandler.notquery)465 466 if(listkey.includes(apikey)){467 fetch(encodeURI(`https://alpin-api-2021.herokuapp.com/api/spotify?apikey=alpin1&q=${query}`))468 .then(response => response.json())469 .then(hasil => {470471 var result = hasil.data;472 res.json({473 status : true,474 creator : `${creator}`,475 result476 })477 })478 .catch(e => {479 res.json(loghandler.error)480})481} else {482 res.json(loghandler.invalidKey)483}484})485router.get('/download/ytmp3', async(req, res, next) => {486 const url = req.query.url;487 const apikey = req.query.apikey;488 if(!url) return res.json(loghandler.noturl)489 if(!apikey) return res.json(loghandler.notparam)490 if(listkey.includes(apikey)){491 ytDonlodMp3(url)492 .then((result) => {493 res.json({494 status: true,495 code: 200,496 creator: `${creator}`,497 result498 })499 })500 .catch((error) => {501 console.log(error)502 res.json(error)503 });504 } else {505 res.json(loghandler.invalidKey)506 }507});508509router.get('/download/ytmp4', async(req, res, next) => {510 const url = req.query.url;511 const apikey = req.query.apikey;512513 if(!url) return res.json(loghandler.noturl)514 if(!apikey) return res.json(loghandler.notparam)515 if(listkey.includes(apikey)){516 ytDonlodMp4(url)517 .then((result) => {518 res.json({519 status: true,520 code: 200,521 creator: `${creator}`,522 result523 })524 })525 .catch((error) => {526 res.json(error)527 });528 } else {529 res.json(loghandler.invalidKey)530 }531});532533router.get("/yt/playmp3", async(req, res, next) => {534 const query = req.query.query;535 const apikey = req.query.apikey;536 537 if(!query) return res.json(loghandler.notquery)538 if(!apikey) return res.json(loghandler.notparam)539 if(listkey.includes(apikey)){540 ytPlayMp3(query)541 .then((result) => {542 res.json(result);543 })544 .catch((error) => {545 res.json(error);546 });547 } else {548 res.json(loghandler.invalidKey)549 }550});551552router.get("/yt/playmp4", async(req, res, next) => {553554 const query = req.query.query;555556 const apikey = req.query.apikey;557 558 if(!query) return res.json(loghandler.notquery)559 if(!apikey) return res.json(loghandler.notparam)560 if(listkey.includes(apikey)){561 ytPlayMp4(query)562 .then((result) => {563 res.json(result);564 })565 .catch((error) => {566 res.json(error);567 });568 } else {569 res.json(loghandler.invalidKey)570 }571});572573574router.get('/yt/search', async(req, res, next) => {575 const query = req.query.query;576 const apikey = req.query.apikey;577 578 if(!query) return res.json(loghandler.notquery)579 if(!apikey) return res.json(loghandler.notparam)580 if(listkey.includes(apikey)){581 ytSearch(query)582 .then((result) => {583 res.json({584 status: true,585 code: 200,586 creator: `${creator}`,587 result588 })589 })590 .catch((error) => {591 res.json(error);592 });593 } else {594 res.json(loghandler.invalidKey)595 }596});597598router.get('/download/tiktok', async (req, res, next) => {599 var Apikey = req.query.apikey,600 url = req.query.url601602 if(!Apikey) return res.json(loghandler.notparam)603 if(listkey.includes(Apikey)){604 if (!url) return res.json(loghandler.noturl)605 TiktokDownloader(`${url}`)606 .then(data => {607 var result = data.result;608 res.json({609 status: true,610 code: 200,611 creator: `${creator}`,612 result613 })614 })615 .catch((error) => {616 res.json(error);617 });618 } else {619 res.json(loghandler.invalidKey)620 }621});622623router.get('/download/ig', async(req, res, next) => {624 const url = req.query.url;625 const apikey = req.query.apikey;626 if(!url) return res.json(loghandler.noturl)627 if(!apikey) return res.json(loghandler.notparam)628 if(listkey.includes(apikey)){629 igDownloader(url)630 .then((result) => {631 res.json({632 status: true,633 code: 200,634 creator: `${creator}`,635 result636 })637 })638 .catch((error) => {639 res.json(error)640 });641 } else {642 res.json(loghandler.invalidKey)643 }644});645646router.get('/download/ig2', async(req, res, next) => {647 const url = req.query.url;648 const apikey = req.query.apikey;649 if(!url) return res.json(loghandler.noturl)650 if(!apikey) return res.json(loghandler.notparam)651 if(listkey.includes(apikey)){652 igdl(url)653 .then((result) => {654 res.json({655 status: true,656 code: 200,657 creator: `${creator}`,658 result659 })660 })661 .catch((error) => {662 res.json(error)663 });664 } else {665 res.json(loghandler.invalidKey)666 }667});668669router.get('/download/stickerline', async(req, res, next) => {670 const apikey = req.query.apikey;671 const url = req.query.url;672 673 if(!url) return res.json(loghandler.noturl)674 if(!apikey) return res.json(loghandler.notparam)675 676 if(listkey.includes(apikey)){677 fetch(encodeURI(`http://nzcha-apii.herokuapp.com/stickerline?url=${url}`))678 .then(response => response.json())679 .then(hasil => {680681 var result = hasil.result;682 res.json({683 status : true,684 creator : `${creator}`,685 result686 })687 })688 .catch(e => {689 res.json(loghandler.error)690})691} else {692 res.json(loghandler.invalidKey)693}694})695696router.get('/download/smule', async(req, res, next) => {697 const apikey = req.query.apikey;698 const url = req.query.url;699 700 if(!url) return res.json(loghandler.noturl)701 if(!apikey) return res.json(loghandler.notparam)702 703 if(listkey.includes(apikey)){704 fetch(encodeURI(`https://mnazria.herokuapp.com/api/smule?link=${url}`))705 .then(response => response.json())706 .then(hasil => {707708 var result = hasil.result;709 res.json({710 status : true,711 creator : `${creator}`,712 result713 })714 })715 .catch(e => {716 res.json(loghandler.error)717})718} else {719 res.json(loghandler.invalidKey)720}721})722723router.get('/download/joox3', async(req, res, next) => {724 const apikey = req.query.apikey;725 const query = req.query.query;726 727 if(!query) return res.json(loghandler.notquery)728 if(!apikey) return res.json(loghandler.notparam)729 730 if(listkey.includes(apikey)){731 fetch(encodeURI(`http://nzcha-apii.herokuapp.com/joox?q=${query}`))732 .then(response => response.json())733 .then(hasil => {734735 var result = hasil.data;736 res.json({737 status : true,738 creator : `${creator}`,739 result740 })741 })742 .catch(e => {743 res.json(loghandler.error)744})745} else {746 res.json(loghandler.invalidKey)747}748})749750router.get('/download/joox2', async(req, res, next) => {751 const apikey = req.query.apikey;752 const query = req.query.query;753 754 if(!query) return res.json(loghandler.notquery)755 if(!apikey) return res.json(loghandler.notparam)756 757 if(listkey.includes(apikey)){758 fetch(encodeURI(`https://mnazria.herokuapp.com/api/jooxnich?search=${query}`))759 .then(response => response.json())760 .then(hasil => {761762 var result = hasil.lirik;763 res.json({764 status : true,765 creator : `${creator}`,766 result767 })768 })769 .catch(e => {770 res.json(loghandler.error)771})772} else {773 res.json(loghandler.invalidKey)774}775})776777router.get('/download/apkdl', async(req, res, next) => {778 const apikey = req.query.apikey;779 const url = req.query.url;780 781 if(!url) return res.json(loghandler.noturl)782 if(!apikey) return res.json(loghandler.notparam)783 784 if(listkey.includes(apikey)){785 fetch(encodeURI(`http://nzcha-apii.herokuapp.com/apk-download?dl_url=${url}`))786 .then(response => response.json())787 .then(hasil => {788789 var result = hasil.result;790 res.json({791 status : true,792 creator : `${creator}`,793 result794 })795 })796 .catch(e => {797 res.json(loghandler.error)798})799} else {800 res.json(loghandler.invalidKey)801}802})803804router.get('/download/apk', async(req, res, next) => {805 const apikey = req.query.apikey;806 const query = req.query.query;807 808 if(!query) return res.json(loghandler.notquery)809 if(!apikey) return res.json(loghandler.notparam)810 811 if(listkey.includes(apikey)){812 fetch(encodeURI(`http://nzcha-apii.herokuapp.com/apk-search?q=${query}`))813 .then(response => response.json())814 .then(hasil => {815816 var result = hasil.result;817 res.json({818 status : true,819 creator : `${creator}`,820 result821 })822 })823 .catch(e => {824 res.json(loghandler.error)825})826} else {827 res.json(loghandler.invalidKey)828}829})830831router.get('/download/googleimg', async(req, res, next) => {832 const apikey = req.query.apikey;833 const query = req.query.query;834 835 if(!query) return res.json(loghandler.notquery)836 if(!apikey) return res.json(loghandler.notparam)837 838 if(listkey.includes(apikey)){839 fetch(encodeURI(`http://nzcha-apii.herokuapp.com/googleimage?q=${query}`))840 .then(response => response.json())841 .then(hasil => {842843 var result = hasil.result;844 res.json({845 status : true,846 creator : `${creator}`,847 result848 })849 })850 .catch(e => {851 res.json(loghandler.error)852})853} else {854 res.json(loghandler.invalidKey)855}856})857858router.get('/download/mediafire', async(req, res, next) => {859 const apikey = req.query.apikey;860 const url = req.query.url;861 862 if(!url) return res.json(loghandler.noturl)863 if(!apikey) return res.json(loghandler.notparam)864 865 if(listkey.includes(apikey)){866 fetch(encodeURI(`https://api-json-reysekha.herokuapp.com/api/mediafire/?url=${url}&apikey=Yuzzu`))867 .then(response => response.json())868 .then(hasil => {869870 var result = hasil.result;871 res.json({872 status : true,873 creator : `${creator}`,874 result875 })876 })877 .catch(e => {878 res.json(loghandler.error)879})880} else {881 res.json(loghandler.invalidKey)882}883})884885router.get('/stalk/github', async(req, res, next) => {886 const apikey = req.query.apikey;887 const username = req.query.username;888 889 if(!username) return res.json(loghandler.notusername)890 if(!apikey) return res.json(loghandler.notparam)891 892 if(listkey.includes(apikey)){893 fetch(encodeURI(`https://free-restapii.herokuapp.com/docs/githubstalk?username=${username}&apikey=LoliKillers`))894 .then(response => response.json())895 .then(hasil => {896897 var result = hasil.data.result;898 res.json({899 status : true,900 creator : `${creator}`,901 result902 })903 })904 .catch(e => {905 res.json(loghandler.error)906})907} else {908 res.json(loghandler.invalidKey)909}910})911912router.get('/stalk/ig', async(req, res, next) => {913 const apikey = req.query.apikey;914 const username = req.query.username;915 916 if(!username) return res.json(loghandler.notusername)917 if(!apikey) return res.json(loghandler.notparam)918 919 if(listkey.includes(apikey)){920 fetch(encodeURI(`https://aqulzz.herokuapp.com/igstalk?username=${username}`))921 .then(response => response.json())922 .then(hasil => {923924 var result = hasil.result;925 res.json({926 status : true,927 creator : `${creator}`,928 result929 })930 })931 .catch(e => {932 res.json(loghandler.error)933})934} else {935 res.json(loghandler.invalidKey)936}937})938939router.get('/downloader/wallpaperflare', async(req, res, next) => {940 const apikey = req.query.apikey;941 const query = req.query.query;942 943 if(!query) return res.json(loghandler.notquery)944 if(!apikey) return res.json(loghandler.notparam)945 946 if(listkey.includes(apikey)){947 fetch(encodeURI(`https://hadi-api.herokuapp.com/api/wallpaperflare?query=${query}`))948 .then(response => response.json())949 .then(hasil => {950951 var result = hasil.result;952 res.json({953 status : true,954 creator : `${creator}`,955 result956 })957 })958 .catch(e => {959 res.json(loghandler.error)960})961} else {962 res.json(loghandler.invalidKey)963}964})965966router.get('/download/ytmp32', async(req, res, next) => {967 const apikey = req.query.apikey;968 const url = req.query.url;969 970 if(!url) return res.json(loghandler.noturl)971 if(!apikey) return res.json(loghandler.notparam)972 973 if(listkey.includes(apikey)){974 fetch(encodeURI(`http://kocakz.herokuapp.com/api/media/ytaudio?url=${url}`))975 .then(response => response.json())976 .then(hasil => {977978 var result = hasil.result;979 res.json({980 status : true,981 creator : `${creator}`,982 result983 })984 })985 .catch(e => {986 res.json(loghandler.error)987})988} else {989 res.json(loghandler.invalidKey)990}991})992993router.get('/download/ytmp42', async(req, res, next) => {994 const apikey = req.query.apikey;995 const url = req.query.url;996 997 if(!url) return res.json(loghandler.noturl)998 if(!apikey) return res.json(loghandler.notparam)999 1000 if(listkey.includes(apikey)){1001 fetch(encodeURI(`http://kocakz.herokuapp.com/api/media/ytvid?url=${url}`))1002 .then(response => response.json())1003 .then(hasil => {10041005 var result = hasil.getVideo;1006 res.json({1007 status : true,1008 creator : `${creator}`,1009 result1010 })1011 })1012 .catch(e => {1013 res.json(loghandler.error)1014})1015} else {1016 res.json(loghandler.invalidKey)1017}1018})10191020router.get('/download/shoppe', async(req, res, next) => {1021 const apikey = req.query.apikey;1022 const q = req.query.q;1023 1024 if(!q) return res.json(loghandler.notquery)1025 if(!apikey) return res.json(loghandler.notparam)1026 1027 if(listkey.includes(apikey)){1028 fetch(encodeURI(`https://api.zeks.me/api/shopee?apikey=reyterganz&q=${q}`))1029 .then(response => response.json())1030 .then(hasil => {10311032 var result = hasil.data;1033 res.json({1034 status : true,1035 creator : `${creator}`,1036 result1037 })1038 })1039 .catch(e => {1040 res.json(loghandler.error)1041})1042} else {1043 res.json(loghandler.invalidKey)1044}1045})10461047router.get('/primbon/zodiak', async(req, res, next) => {1048 const apikey = req.query.apikey;1049 const text = req.query.text;1050 1051 if(!text) return res.json(loghandler.nottext)1052 if(!apikey) return res.json(loghandler.notparam)1053 1054 if(listkey.includes(apikey)){1055 fetch(encodeURI(`http://revita.herokuapp.com/api/primbon/zodiaku?mimpi=${text}`))1056 .then(response => response.json())1057 .then(hasil => {10581059 var result = hasil.result;1060 res.json({1061 status : true,1062 creator : `${creator}`,1063 result1064 })1065 })1066 .catch(e => {1067 res.json(loghandler.error)1068})1069} else {1070 res.json(loghandler.invalidKey)1071}1072})10731074router.get('/primbon/artimimpi', async(req, res, next) => {1075 const apikey = req.query.apikey;1076 const text = req.query.text;1077 1078 if(!text) return res.json(loghandler.nottext)1079 if(!apikey) return res.json(loghandler.notparam)1080 1081 if(listkey.includes(apikey)){1082 fetch(encodeURI(`http://kocakz.herokuapp.com/api/primbon/tafsirmimpi?mimpi=${text}`))1083 .then(response => response.json())1084 .then(hasil => {10851086 var result = hasil.result;1087 res.json({1088 status : true,1089 creator : `${creator}`,1090 result1091 })1092 })1093 .catch(e => {1094 res.json(loghandler.error)1095})1096} else {1097 res.json(loghandler.invalidKey)1098}1099})11001101router.get('/primbon/artinama', async(req, res, next) => {1102 const apikey = req.query.apikey;1103 const text = req.query.text;1104 1105 if(!text) return res.json(loghandler.nottext)1106 if(!apikey) return res.json(loghandler.notparam)1107 1108 if(listkey.includes(apikey)){1109 fetch(encodeURI(`http://kocakz.herokuapp.com/api/primbon/artinama?name=${text}`))1110 .then(response => response.json())1111 .then(hasil => {11121113 var result = hasil.result;1114 res.json({1115 status : true,1116 creator : `${creator}`,1117 result1118 })1119 })1120 .catch(e => {1121 res.json(loghandler.error)1122})1123} else {1124 res.json(loghandler.invalidKey)1125}1126})11271128router.get('/download/unplash', async(req, res, next) => {1129 const apikey = req.query.apikey;1130 const q = req.query.q;1131 1132 if(!q) return res.json(loghandler.notquery)1133 if(!apikey) return res.json(loghandler.notparam)1134 1135 if(listkey.includes(apikey)){1136 fetch(encodeURI(`https://api.zeks.me/api/unsplash?apikey=apivinz&q=${q}`))1137 .then(response => response.json())1138 .then(hasil => {11391140 var result = hasil.result;1141 res.json({1142 status : true,1143 creator : `${creator}`,1144 result1145 })1146 })1147 .catch(e => {1148 res.json(loghandler.error)1149})1150} else {1151 res.json(loghandler.invalidKey)1152}1153})11541155router.get('/download/sticker', async(req, res, next) => {1156 const apikey = req.query.apikey;1157 const q = req.query.q;1158 1159 if(!q) return res.json(loghandler.notquery)1160 if(!apikey) return res.json(loghandler.notparam)1161 1162 if(listkey.includes(apikey)){1163 fetch(encodeURI(`https://api.zeks.me/api/searchsticker?apikey=reyterganz&q=${q}`))1164 .then(response => response.json())1165 .then(hasil => {11661167 var result = hasil.sticker;1168 res.json({1169 status : true,1170 creator : `${creator}`,1171 result1172 })1173 })1174 .catch(e => {1175 res.json(loghandler.error)1176})1177} else {1178 res.json(loghandler.invalidKey)1179}1180})11811182router.get('/downloader/xnxx', async(req, res, next) => {1183 const apikey = req.query.apikey;1184 const query = req.query.query;1185 1186 if(!query) return res.json(loghandler.notquery)1187 if(!apikey) return res.json(loghandler.notparam)1188 1189 if(listkey.includes(apikey)){1190 fetch(encodeURI(`http://kocakz.herokuapp.com/api/media/xnxx/search?query=${query}`))1191 .then(response => response.json())1192 .then(hasil => {11931194 var result = hasil.result;1195 res.json({1196 status : true,1197 creator : `${creator}`,1198 result1199 })1200 })1201 .catch(e => {1202 res.json(loghandler.error)1203})1204} else {1205 res.json(loghandler.invalidKey)1206}1207})12081209router.get('/downloader/twittervid', async(req, res, next) => {1210 const apikey = req.query.apikey;1211 const url = req.query.url;1212 1213 if(!url) return res.json(loghandler.noturl)1214 if(!apikey) return res.json(loghandler.notparam)1215 1216 if(listkey.includes(apikey)){1217 fetch(encodeURI(`http://kocakz.herokuapp.com/api/media/twvid?url=${url}`))1218 .then(response => response.json())1219 .then(hasil => {12201221 var result = hasil.getVideo;1222 res.json({1223 status : true,1224 creator : `${creator}`,1225 result1226 })1227 })1228 .catch(e => {1229 res.json(loghandler.error)1230})1231} else {1232 res.json(loghandler.invalidKey)1233}1234})12351236router.get('/downloader/twitterimg', async(req, res, next) => {1237 const apikey = req.query.apikey;1238 const url = req.query.url;1239 1240 if(!url) return res.json(loghandler.noturl)1241 if(!apikey) return res.json(loghandler.notparam)1242 1243 if(listkey.includes(apikey)){1244 fetch(encodeURI(`http://kocakz.herokuapp.com/api/media/twimg?url=${url}`))1245 .then(response => response.json())1246 .then(hasil => {12471248 var result = hasil.images;1249 res.json({1250 status : true,1251 creator : `${creator}`,1252 result1253 })1254 })1255 .catch(e => {1256 res.json(loghandler.error)1257})1258} else {1259 res.json(loghandler.invalidKey)1260}1261})12621263router.get('/downloader/xvideo', async(req, res, next) => {1264 const apikey = req.query.apikey;1265 const query = req.query.query;1266 1267 if(!query) return res.json(loghandler.notquery)1268 if(!apikey) return res.json(loghandler.notparam)1269 1270 if(listkey.includes(apikey)){1271 fetch(encodeURI(`http://kocakz.herokuapp.com/api/media/xvideo/search?query=${query}`))1272 .then(response => response.json())1273 .then(hasil => {12741275 var result = hasil.result;1276 res.json({1277 status : true,1278 creator : `${creator}`,1279 result1280 })1281 })1282 .catch(e => {1283 res.json(loghandler.error)1284})1285} else {1286 res.json(loghandler.invalidKey)1287}1288})12891290router.get('/downloader/pornhub', async(req, res, next) => {1291 const apikey = req.query.apikey;1292 const query = req.query.query;1293 1294 if(!query) return res.json(loghandler.notquery)1295 if(!apikey) return res.json(loghandler.notparam)1296 1297 if(listkey.includes(apikey)){1298 fetch(encodeURI(`http://kocakz.herokuapp.com/api/media/pornhub/search?query=${query}`))1299 .then(response => response.json())1300 .then(hasil => {13011302 var result = hasil.res;1303 res.json({1304 status : true,1305 creator : `${creator}`,1306 result1307 })1308 })1309 .catch(e => {1310 res.json(loghandler.error)1311})1312} else {1313 res.json(loghandler.invalidKey)1314}1315})13161317router.get('/downloader/pinterest', async(req, res, next) => {1318 const apikey = req.query.apikey;1319 const q = req.query.q;1320 1321 if(!q) return res.json(loghandler.notquery)1322 if(!apikey) return res.json(loghandler.notparam)1323 1324 if(listkey.includes(apikey)){1325 fetch(encodeURI(`https://aqulzz.herokuapp.com/pinterest?q=${q}`))1326 .then(response => response.json())1327 .then(hasil => {13281329 var result = hasil.result;1330 res.json({1331 status : true,1332 creator : `${creator}`,1333 result1334 })1335 })1336 .catch(e => {1337 res.json(loghandler.error)1338})1339} else {1340 res.json(loghandler.invalidKey)1341}1342})13431344router.get('/downloader/igtv', async(req, res, next) => {1345 const apikey = req.query.apikey;1346 const url = req.query.url;1347 1348 if(!url) return res.json(loghandler.noturl)1349 if(!apikey) return res.json(loghandler.notparam)1350 1351 if(listkey.includes(apikey)){1352 fetch(encodeURI(`https://aqulzz.herokuapp.com/igtv?url=${url}`))1353 .then(response => response.json())1354 .then(hasil => {13551356 var result = hasil.result;1357 res.json({1358 status : true,1359 creator : `${creator}`,1360 result1361 })1362 })1363 .catch(e => {1364 res.json(loghandler.error)1365})1366} else {1367 res.json(loghandler.invalidKey)1368}1369})13701371router.get('/download/tiktok3', async(req, res, next) => {1372 const apikey = req.query.apikey;1373 const url = req.query.url;1374 1375 if(!url) return res.json(loghandler.noturl)1376 if(!apikey) return res.json(loghandler.notparam)1377 1378 if(listkey.includes(apikey)){1379 fetch(encodeURI(`https://tiktokd.herokuapp.com/tiktok?url=${url}`))1380 .then(response => response.json())1381 .then(hasil => {13821383 var result = hasil.link;1384 res.json({1385 status : true,1386 creator : `${creator}`,1387 result1388 })1389 })1390 .catch(e => {1391 res.json(loghandler.error)1392})1393} else {1394 res.json(loghandler.invalidKey)1395}1396})13971398router.get('/download/tiktok2', async(req, res, next) => {1399 const apikey = req.query.apikey;1400 const url = req.query.url;1401 1402 if(!url) return res.json(loghandler.noturl)1403 if(!apikey) return res.json(loghandler.notparam)1404 1405 if(listkey.includes(apikey)){1406 fetch(encodeURI(`https://aqulzz.herokuapp.com/tiktok?url=${url}`))1407 .then(response => response.json())1408 .then(hasil => {14091410 var result = hasil.result;1411 res.json({1412 status : true,1413 creator : `${creator}`,1414 result1415 })1416 })1417 .catch(e => {1418 res.json(loghandler.error)1419})1420} else {1421 res.json(loghandler.invalidKey)1422}1423})14241425router.get('/downloader/facebook2', async(req, res, next) => {1426 const apikey = req.query.apikey;1427 const url = req.query.url;1428 1429 if(!url) return res.json(loghandler.noturl)1430 if(!apikey) return res.json(loghandler.notparam)1431 1432 if(listkey.includes(apikey)){1433 fetch(encodeURI(`https://api-xcoders.xyz/api/download/fb?url=${url}&apikey=UW8wc3KPy0`))1434 .then(response => response.json())1435 .then(hasil => {14361437 var result = hasil.data;1438 res.json({1439 status : true,1440 creator : `${creator}`,1441 result1442 })1443 })1444 .catch(e => {1445 res.json(loghandler.error)1446})1447} else {1448 res.json(loghandler.invalidKey)1449}1450})14511452router.get('/downloader/facebook', async(req, res, next) => {1453 const apikey = req.query.apikey;1454 const url = req.query.url;1455 1456 if(!url) return res.json(loghandler.noturl)1457 if(!apikey) return res.json(loghandler.notparam)1458 1459 if(listkey.includes(apikey)){1460 fetch(encodeURI(`https://api-xcoders.xyz/api/download/fb?url=${url}&apikey=UW8wc3KPy0`))1461 .then(response => response.json())1462 .then(hasil => {14631464 var result = hasil.data.url;1465 res.json({1466 status : true,1467 creator : `${creator}`,1468 result1469 })1470 })1471 .catch(e => {1472 res.json(loghandler.error)1473})1474} else {1475 res.json(loghandler.invalidKey)1476}1477})14781479router.get('/downloader/fb2', async (req, res, next) => {14801481 var Apikey = req.query.apikey,1482 url = req.query.url1483 1484 if(!Apikey) return res.json(loghandler.notparam)1485 if(listkey.includes(Apikey)){1486 if (!url) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter url"})14871488 FB(url)1489 .then((data) => {1490 res.json({1491 status: true,1492 code: 200,1493 creator: `${creator}`,1494 title: data.title,1495 desc: data.deskripsi,1496 durasi: data.durasi,1497 thumb: data.thumbnail,1498 result: data.hd1499 })1500 });1501} else {1502res.json(loghandler.invalidKey)1503}1504});15051506router.get('/downloader/fb', async (req, res, next) => {15071508 const url = req.query.url;1509 const apikey = req.query.apikey;1510 if(!url) return res.json(loghandler.noturl)1511 if(!apikey) return res.json(loghandler.notparam)1512 if(listkey.includes(apikey)){1513 fbDownloader(`${url}`)1514 .then((result) => {1515 res.json({1516 status: true,1517 code: 200,1518 creator: `${creator}`,1519 result1520 })1521 })1522 .catch((error) => {1523 res.json(error)1524 });1525 } else {1526 res.json(loghandler.invalidKey)1527 }1528});15291530router.get('/stalk/tiktok', async (req, res, next) => {1531 var Apikey = req.query.apikey,1532 username = req.query.username15331534 if(!Apikey) return res.json(loghandler.notparam)1535 if(listkey.includes(Apikey)){1536 if (!username) return res.json(loghandler.notusername)153715381539 TikTokScraper.getUserProfileInfo(username)1540 .then(user => {1541 res.json({1542 status : true,1543 creator : `${creator}`,1544 result : user1545 })1546 })1547 .catch(e => {1548 res.json({1549 status : false,1550 creator : `${creator}`,1551 message : "error, mungkin username anda tidak valid"1552 })1553 })1554 } else {1555 res.json(loghandler.invalidKey)1556 }1557})15581559router.get('/stalk/ig2', async(req, res, next) => {1560 const username = req.query.username;1561 const apikey = req.query.apikey;1562 if(!username) return res.json(loghandler.notusername)1563 if(!apikey) return res.json(loghandler.notparam)1564 if(listkey.includes(apikey)){1565 igStalk(username)1566 .then((result) => {1567 res.json({1568 status : true,1569 code: 200,1570 creator : `${creator}`,1571 result1572 });1573 })1574 .catch((err) => {1575 res.json(err);1576 });1577 } else {1578 res.json(loghandler.invalidKey)1579 }1580});158115821583router.get('/stalk/npm', async (req, res, next) => {1584 var Apikey = req.query.apikey,1585 query = req.query.query1586 1587 if(!Apikey) return res.json(loghandler.notparam)1588 if(listkey.includes(Apikey)){1589 if (!query) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter query"})15901591 fetch(encodeURI(`https://registry.npmjs.org/${query}`))1592 .then(response => response.json())1593 .then(data => {1594 var result = data;1595 res.json({1596 status : true,1597 creator : `${creator}`,1598 result1599 })1600 })1601 .catch(e => {1602 res.json(loghandler.error)1603})1604} else {1605res.json(loghandler.invalidKey)1606}1607})16081609router.get('/random/faktaunik', async (req, res, next) => {1610 var Apikey = req.query.apikey1611 if(!Apikey) return res.json(loghandler.notparam)1612 if(listkey.includes(Apikey)){16131614 fetch(encodeURI(`http://kocakz.herokuapp.com/api/random/text/faktaunik`))1615 .then(response => response.json())1616 .then(hasil => {1617 var result = hasil.result;1618 res.json({1619 creator : `${creator}`,1620 result1621 })1622 })1623 .catch(e => {1624 res.json(loghandler.error)1625})1626} else {1627res.json(loghandler.invalidKey)1628}1629})16301631router.get('/random/katabijak', async (req, res, next) => {1632 var Apikey = req.query.apikey1633 if(!Apikey) return res.json(loghandler.notparam)1634 if(listkey.includes(Apikey)){16351636 fetch(encodeURI(`http://kocakz.herokuapp.com/api/random/text/katabijak`))1637 .then(response => response.json())1638 .then(hasil => {1639 var result = hasil.result;1640 res.json({1641 creator : `${creator}`,1642 result1643 })1644 })1645 .catch(e => {1646 res.json(loghandler.error)1647})1648} else {1649res.json(loghandler.invalidKey)1650}1651})16521653router.get('/random/pantun', async (req, res, next) => {1654 var Apikey = req.query.apikey1655 if(!Apikey) return res.json(loghandler.notparam)1656 if(listkey.includes(Apikey)){16571658 fetch(encodeURI(`http://kocakz.herokuapp.com/api/random/text/pantun`))1659 .then(response => response.json())1660 .then(hasil => {1661 var result = hasil.result;1662 res.json({1663 creator : `${creator}`,1664 result1665 })1666 })1667 .catch(e => {1668 res.json(loghandler.error)1669})1670} else {1671res.json(loghandler.invalidKey)1672}1673})16741675router.get('/random/fancytext', async (req, res, next) => {1676 var Apikey = req.query.apikey1677 text = req.query.text 1678 1679 if(!Apikey) return res.json(loghandler.notparam)1680 if(!text) return res.json(loghandler.nottext)1681 if(listkey.includes(Apikey)){16821683 fetch(encodeURI(`http://kocakz.herokuapp.com/api/random/text/fancytext?text=${text}`))1684 .then(response => response.json())1685 .then(hasil => {1686 var result = hasil.result;1687 res.json({1688 creator : `${creator}`,1689 result1690 })1691 })1692 .catch(e => {1693 res.json(loghandler.error)1694})1695} else {1696res.json(loghandler.invalidKey)1697}1698})16991700router.get('/random/quotes', async (req, res, next) => {1701 var Apikey = req.query.apikey1702 1703 if(!Apikey) return res.json(loghandler.notparam)1704 if(listkey.includes(Apikey)){17051706 fetch(encodeURI(`http://kocakz.herokuapp.com/api/random/text/quotes`))1707 .then(response => response.json())1708 .then(hasil => {1709 var result = hasil.result;1710 res.json({1711 creator : `${creator}`,1712 result1713 })1714 })1715 .catch(e => {1716 res.json(loghandler.error)1717})1718} else {1719res.json(loghandler.invalidKey)1720}1721})172217231724router.get('/jadwal-bioskop', async(req, res, next) => {1725var Apikey = req.query.apikey17261727if(!Apikey) return res.json(loghandler.notparam)1728if(listkey.includes(Apikey)){1729const { default: Axios } = require('axios')1730const cheerio = require('cheerio')17311732Axios.get('https://jadwalnonton.com/now-playing')1733.then(({ data }) => {1734 const $ = cheerio.load(data)1735 let title = []1736 let url = []1737 let img = []1738 $('div.row > div.item > div.clearfix > div.rowl > div.col-xs-6 > a').get().map((rest) => {1739 url.push($(rest).attr('href'))1740 })1741 $('div.row > div.item > div.clearfix > div.rowl > div.col-xs-6 > a > img').get().map((rest) => {1742 title.push($(rest).attr('alt'))1743 })1744 $('div.row > div.item > div.clearfix > div.rowl > div.col-xs-6 > a > img').get().map((rest) => {1745 img.push($(rest).attr('src'))1746 })1747 let result = []1748 for (let i = 0; i < url.length; i++) {1749 result.push({1750 url: url[i],1751 title: title[i],1752 img: img[i]1753 })1754 }1755 res.json({1756 creator: `${creator}`,1757 status: true,1758 result: result1759 })1760})1761} else {1762res.json(loghandler.invalidKey)1763}1764})17651766router.get('/short/tinyurl', async (req, res, next) => {1767 var Apikey = req.query.apikey,1768 url = req.query.url17691770 if(!Apikey) return res.json(loghandler.notparam)1771 if(listkey.includes(Apikey)){1772 if (!url) return res.json(loghandler.noturl)1773 request(`https://tinyurl.com/api-create.php?url=${url}`, function (error, response, body) {1774 try {1775 res.json({1776 status : true,1777 creator : `${creator}`,1778 result : `${body}`1779 })1780 } catch (e) {1781 console.log('Error :', color(e,'red'))1782 res.json(loghandler.invalidlink)1783 }1784 })1785 } else {1786res.json(loghandler.invalidKey)1787}1788})17891790router.get('/base', async (req, res, next) => {1791 var type = req.query.type,1792 encode = req.query.encode,1793 decode = req.query.decode,1794 Apikey = req.query.apikey;1795 if (!Apikey) return res.json(loghandler.notparam)1796 if (listkey.includes(Apikey)){1797 if (!type) return res.json({status: false, creator, code: 404, message: 'masukan parameter type, type yang tersedia : base64 , base32'})1798 if (type == 'base64' && encode){1799 Base("b64enc", encode)1800 .then(result => {1801 res.json({1802 status:true,1803 creator: `${creator}`,1804 result1805 })1806 })1807 } else if (type == 'base64' && decode){1808 Base("b64dec", decode)1809 .then(result => {1810 res.json({1811 status: true,1812 creator: `${creator}`,1813 result1814 })1815 })1816 } else if (type == 'base32' && encode){1817 Base('b32enc', encode)1818 .then(result => {1819 res.json({1820 status:true,1821 creator: `${creator}`,1822 result1823 })1824 })1825 } else if (type == 'base32' && decode){1826 Base('b32dec', decode)1827 .then(result => {1828 res.json({1829 status:true,1830 creator: `${creator}`,1831 result1832 })1833 })1834 } else if(!(encode || decode)){1835 res.json({1836 status:false,1837 creator: `${creator}`,1838 message: "tambahkan parameter encode/decode"1839 })1840 } else {1841 res.json(loghandler.error)1842 }1843 } else {1844res.json(loghandler.invalidKey)1845}1846});18471848router.get('/tools/wpuser', async(req, res, next) => {1849 const link = req.query.url;1850 const apikey = req.query.apikey;1851 1852 if(!link) return res.json(loghandler.noturl)1853 if(!apikey) return res.json(loghandler.notparam)1854 1855 if(listkey.includes(apikey)) {1856 WPUser(link)1857 .then((data) => {1858 res.json(data)1859 })1860} else {1861 res.json(loghandler.invalidKey)1862};1863});18641865router.get('/info/cuaca', async(req, res, next) => {1866 const apikey = req.query.apikey;1867 const kota = req.query.kota;1868 1869 if(!apikey) return res.json(loghandler.notparam)1870 if(!kota) return res.json({status: false, code: 406, message: 'masukkan parameter kota'})1871 if(listkey.includes(apikey)) {1872 Cuaca(kota)1873 .then((data) => {1874 res.json(data)1875 })1876 } else {1877 res.json(loghandler.invalidKey)1878 }1879})1880router.get('/info/gempa', async (req, res, next) => {1881 var Apikey = req.query.apikey18821883 if (!Apikey) return res.json(loghandler.notparam)1884 if (listkey.includes(Apikey)){1885 Gempa()1886 .then(result => {1887 res.json({1888 creator: creator,1889 result1890 })1891 })1892 .catch(e => {1893 console.log('Error :', color(e, 'red'))1894 res.json(loghandler.error)1895 })1896 } else {1897res.json(loghandler.invalidKey)1898}1899})190019011902router.get('/muslim/kisahnabi', async (req, res, next) => {1903 var nabi = req.query.nabi,1904 Apikey = req.query.apikey;19051906 if (!Apikey) return res.json(loghandler.notparam)1907 if (listkey.includes(Apikey)){1908 Searchnabi(nabi)1909 .then(result => {1910 res.json({1911 creator: creator,1912 result1913 })1914 })1915 .catch(e => {1916 console.log('Error :', color(e, 'red'))1917 res.json(loghandler.error)1918 })1919 } else {1920res.json(loghandler.invalidKey)1921}1922})192319241925router.get('/muslim/hadits', async (req, res, next) => {1926 var Apikey = req.query.apikey,1927 kitab = req.query.kitab,1928 nomor = req.query.nomor1929 if(!Apikey) return res.json(loghandler.notparam)1930 if(listkey.includes(Apikey)){1931 if (!kitab) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter kitab"})1932 if (!nomor) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter nomor"})19331934 fetch(encodeURI(`https://hadits-api-zhirrr.vercel.app/books/${kitab}/${nomor}`))1935 .then(response => response.json())1936 .then(data => {1937 res.json(1938 data1939 )1940 })1941 .catch(e => {1942 res.json(loghandler.error)1943})1944} else {1945res.json(loghandler.invalidKey)1946}1947})194819491950router.get('/muslim/quran', async (req, res, next) => {1951 var Apikey = req.query.apikey,1952 surah = req.query.surah,1953 ayat = req.query.ayat1954 1955 if(!Apikey) return res.json(loghandler.notparam)1956 if(listkey.includes(Apikey)){1957 if (!surah) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter surah"})1958 if (!ayat) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter ayat"})19591960 fetch(encodeURI(`https://alquran-apiii.vercel.app/surah/${surah}/${ayat}`))1961 .then(response => response.json())1962 .then(data => {1963 var result = data;1964 res.json({1965 result1966 })1967 })1968 .catch(e => {1969 res.json(loghandler.error)1970})1971} else {1972res.json(loghandler.invalidKey)1973}1974})19751976router.get('/muslim/tahlil', async (req, res, next) => {1977 var Apikey = req.query.apikey1978 1979 if(!Apikey) return res.json(loghandler.notparam)1980 if(listkey.includes(Apikey)){19811982 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/dataTahlil.json`))1983 .then(response => response.json())1984 .then(data => {1985 var result = data;1986 res.json({1987 result1988 })1989 })1990 .catch(e => {1991 res.json(loghandler.error)1992})1993} else {1994res.json(loghandler.invalidKey)1995}1996})199719981999router.get('/muslim/wirid', async (req, res, next) => {2000 var Apikey = req.query.apikey2001 2002 if(!Apikey) return res.json(loghandler.notparam)2003 if(listkey.includes(Apikey)){20042005 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/dataWirid.json`))2006 .then(response => response.json())2007 .then(data => {2008 var result = data;2009 res.json({2010 result2011 })2012 })2013 .catch(e => {2014 res.json(loghandler.error)2015})2016} else {2017res.json(loghandler.invalidKey)2018}2019})202020212022router.get('/muslim/ayatkursi', async (req, res, next) => {2023 var Apikey = req.query.apikey2024 2025 if(!Apikey) return res.json(loghandler.notparam)2026 if(listkey.includes(Apikey)){20272028 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/dataAyatKursi.json`))2029 .then(response => response.json())2030 .then(data => {2031 var result = data;2032 res.json({2033 result2034 })2035 })2036 .catch(e => {2037 res.json(loghandler.error)2038})2039} else {2040res.json(loghandler.invalidKey)2041}2042})204320442045router.get('/muslim/doaharian', async (req, res, next) => {2046 var Apikey = req.query.apikey2047 2048 if(!Apikey) return res.json(loghandler.notparam)2049 if(listkey.includes(Apikey)){20502051 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/dataDoaHarian.json`))2052 .then(response => response.json())2053 .then(data => {2054 var result = data;2055 res.json({2056 result2057 })2058 })2059 .catch(e => {2060 res.json(loghandler.error)2061})2062} else {2063res.json(loghandler.invalidKey)2064}2065})206620672068router.get('/muslim/bacaanshalat', async (req, res, next) => {2069 var Apikey = req.query.apikey2070 2071 if(!Apikey) return res.json(loghandler.notparam)2072 if(listkey.includes(Apikey)){20732074 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/dataBacaanShalat.json`))2075 .then(response => response.json())2076 .then(data => {2077 var result = data;2078 res.json({2079 result2080 })2081 })2082 .catch(e => {2083 res.json(loghandler.error)2084})2085} else {2086res.json(loghandler.invalidKey)2087}2088})208920902091router.get('/muslim/niatshalat', async (req, res, next) => {2092 var Apikey = req.query.apikey2093 2094 if(!Apikey) return res.json(loghandler.notparam)2095 if(listkey.includes(Apikey)){20962097 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/dataNiatShalat.json`))2098 .then(response => response.json())2099 .then(data => {2100 var result = data;2101 res.json({2102 result2103 })2104 })2105 .catch(e => {2106 res.json(loghandler.error)2107})2108} else {2109res.json(loghandler.invalidKey)2110}2111})211221132114router.get('/muslim/kisahnabi', async (req, res, next) => {2115 var Apikey = req.query.apikey2116 2117 if(!Apikey) return res.json(loghandler.notparam)2118 if(listkey.includes(Apikey)){21192120 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/dataKisahNabi.json`))2121 .then(response => response.json())2122 .then(data => {2123 var result = data;2124 res.json({2125 result2126 })2127 })2128 .catch(e => {2129 res.json(loghandler.error)2130})2131} else {2132res.json(loghandler.invalidKey)2133}2134})213521362137router.get('/muslim/asmaulhusna', async (req, res, next) => {2138 var Apikey = req.query.apikey21392140 if(!Apikey) return res.json(loghandler.notparam)2141 if(listkey.includes(Apikey)){21422143 asmaul = JSON.parse(fs.readFileSync(__path +'/data/AsmaulHusna.json'));2144 res.json(asmaul)2145} else {2146res.json(loghandler.invalidKey)2147}2148})214921502151router.get('/muslim/niatshubuh', async (req, res, next) => {2152 var Apikey = req.query.apikey2153 2154 if(!Apikey) return res.json(loghandler.notparam)2155 if(listkey.includes(Apikey)){21562157 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/NiatShubuh.json`))2158 .then(response => response.json())2159 .then(data => {2160 var result = data;2161 res.json({2162 result2163 })2164 })2165 .catch(e => {2166 res.json(loghandler.error)2167})2168} else {2169res.json(loghandler.invalidKey)2170}2171})217221732174router.get('/muslim/niatdzuhur', async (req, res, next) => {2175 var Apikey = req.query.apikey2176 2177 if(!Apikey) return res.json(loghandler.notparam)2178 if(listkey.includes(Apikey)){21792180 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/NiatDzuhur.json`))2181 .then(response => response.json())2182 .then(data => {2183 var result = data;2184 res.json({2185 result2186 })2187 })2188 .catch(e => {2189 res.json(loghandler.error)2190})2191} else {2192res.json(loghandler.invalidKey)2193}2194})219521962197router.get('/muslim/niatmaghrib', async (req, res, next) => {2198 var Apikey = req.query.apikey2199 2200 if(!Apikey) return res.json(loghandler.notparam)2201 if(listkey.includes(Apikey)){22022203 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/NiatMaghrib.json`))2204 .then(response => response.json())2205 .then(data => {2206 var result = data;2207 res.json({2208 result2209 })2210 })2211 .catch(e => {2212 res.json(loghandler.error)2213})2214} else {2215res.json(loghandler.invalidKey)2216}2217})221822192220router.get('/muslim/niatisya', async (req, res, next) => {2221 var Apikey = req.query.apikey2222 2223 if(!Apikey) return res.json(loghandler.notparam)2224 if(listkey.includes(Apikey)){22252226 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/NiatIsya.json`))2227 .then(response => response.json())2228 .then(data => {2229 var result = data;2230 res.json({2231 result2232 })2233 })2234 .catch(e => {2235 res.json(loghandler.error)2236})2237} else {2238res.json(loghandler.invalidKey)2239}2240})224122422243router.get('/muslim/niatashar', async (req, res, next) => {2244 var Apikey = req.query.apikey2245 2246 if(!Apikey) return res.json(loghandler.notparam)2247 if(listkey.includes(Apikey)){22482249 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/My-SQL-Results/main/data/NiatAshar.json`))2250 .then(response => response.json())2251 .then(data => {2252 var result = data;2253 res.json({2254 result2255 })2256 })2257 .catch(e => {2258 res.json(loghandler.error)2259})2260} else {2261res.json(loghandler.invalidKey)2262}2263})2264router.get('/muslim/jadwalshalat', async (req, res, next) => {2265 var Apikey = req.query.apikey,2266 kota = req.query.kota2267 2268 if(!Apikey) return res.json(loghandler.notparam)2269 if(listkey.includes(Apikey)){2270 if(!kota) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter kota"})22712272 fetch(encodeURI(`https://raw.githubusercontent.com/Zhirrr/Zhirrr-Database/main/adzan/${kota}/2021/03.json`))2273 .then(response => response.json())2274 .then(data => {2275 var result = data;2276 res.json({2277 result2278 })2279 })2280 .catch(e => {2281 res.json(loghandler.error)2282})2283} else {2284res.json(loghandler.invalidKey)2285}2286})22872288router.get('/search/image', async(req, res, next) => {2289 const apikey = req.query.apikey;2290 const query = req.query.query;2291 2292 if(!query) return res.json(loghandler.notquery)2293 if(!apikey) return res.json(loghandler.notparam)2294 2295 if(listkey.includes(apikey)){2296 try {2297 var options = {2298 url: `http://results.dogpile.com/serp?qc=images&q=${query}`,2299 method: "GET",2300 headers: {2301 "Accept": "text/html",2302 "User-Agent": "Chrome"2303 }2304 }2305 request(options, function(error, response, responseBody) {2306 if (error) return23072308 $ = cheerio.load(responseBody)2309 var links = $(".image a.link")2310 var cari = new Array(links.length).fill(0).map((v, i) => links.eq(i).attr("href"))2311 if (!cari.length) return2312 var hasil = cari[Math.floor(Math.random() * cari.length)]2313 res.json({2314 status: true,2315 code: 200,2316 creator: `${creator}`,2317 result: hasil2318 })2319 })2320 } catch (e) {}2321 } else {2322 res.json(loghandler.invalidKey)2323 }2324})2325232623272328router.get('/nsfw/ahegao', async (req, res, next) => {2329 var Apikey = req.query.apikey2330 2331 if(!Apikey) return res.json(loghandler.notparam)2332 if(listkey.includes(Apikey)){23332334 const ahegao = JSON.parse(fs.readFileSync(__path +'/data/ahegao.json'));2335 const randahegao = ahegao[Math.floor(Math.random() * ahegao.length)];2336 data = await fetch(randahegao).then(v => v.buffer())2337 await fs.writeFileSync(__path +'/tmp/ahegao.jpeg', data)2338 res.sendFile(__path +'/tmp/ahegao.jpeg')2339} else {2340res.json(loghandler.invalidKey)2341}2342})23432344router.get('/nsfw/ass', async (req, res, next) => {2345 var Apikey = req.query.apikey2346 2347 if(!Apikey) return res.json(loghandler.notparam)2348 if(listkey.includes(Apikey)){23492350 const ass = JSON.parse(fs.readFileSync(__path +'/data/ass.json'));2351 const randass = ass[Math.floor(Math.random() * ass.length)];2352 data = await fetch(randass).then(v => v.buffer())2353 await fs.writeFileSync(__path +'/tmp/ass.jpeg', data)2354 res.sendFile(__path +'/tmp/ass.jpeg')2355} else {2356res.json(loghandler.invalidKey)2357}2358})23592360router.get('/nsfw/bdsm', async (req, res, next) => {2361 var Apikey = req.query.apikey2362 2363 if(!Apikey) return res.json(loghandler.notparam)2364 if(listkey.includes(Apikey)){23652366 const bdsm = JSON.parse(fs.readFileSync(__path +'/data/bdsm.json'));2367 const randbdsm = bdsm[Math.floor(Math.random() * bdsm.length)];2368 data = await fetch(randbdsm).then(v => v.buffer())2369 await fs.writeFileSync(__path +'/tmp/bdsm.jpeg', data)2370 res.sendFile(__path +'/tmp/bdsm.jpeg')2371} else {2372res.json(loghandler.invalidKey)2373}2374})23752376router.get('/nsfw/blowjob', async (req, res, next) => {2377 var Apikey = req.query.apikey2378 2379 if(!Apikey) return res.json(loghandler.notparam)2380 if(listkey.includes(Apikey)){23812382 const blowjob = JSON.parse(fs.readFileSync(__path +'/data/blowjob.json'));2383 const randblowjob = blowjob[Math.floor(Math.random() * blowjob.length)];2384 data = await fetch(randblowjob).then(v => v.buffer())2385 await fs.writeFileSync(__path +'/tmp/blowjob.jpeg', data)2386 res.sendFile(__path +'/tmp/blowjob.jpeg')2387} else {2388res.json(loghandler.invalidKey)2389}2390})23912392router.get('/nsfw/cuckold', async (req, res, next) => {2393 var Apikey = req.query.apikey2394 2395 if(!Apikey) return res.json(loghandler.notparam)2396 if(listkey.includes(Apikey)){23972398 const cuckold = JSON.parse(fs.readFileSync(__path +'/data/cuckold.json'));2399 const randcuckold = cuckold[Math.floor(Math.random() * cuckold.length)];2400 data = await fetch(randcuckold).then(v => v.buffer())2401 await fs.writeFileSync(__path +'/tmp/cuckold.jpeg', data)2402 res.sendFile(__path +'/tmp/cuckold.jpeg')2403} else {2404res.json(loghandler.invalidKey)2405}2406})24072408router.get('/nsfw/cum', async (req, res, next) => {2409 var Apikey = req.query.apikey2410 2411 if(!Apikey) return res.json(loghandler.notparam)2412 if(listkey.includes(Apikey)){24132414 const cum = JSON.parse(fs.readFileSync(__path +'/data/cum.json'));2415 const randcum = cum[Math.floor(Math.random() * cum.length)];2416 data = await fetch(randcum).then(v => v.buffer())2417 await fs.writeFileSync(__path +'/tmp/cum.jpeg', data)2418 res.sendFile(__path +'/tmp/cum.jpeg')2419} else {2420res.json(loghandler.invalidKey)2421}2422})24232424router.get('/nsfw/ero', async (req, res, next) => {2425 var Apikey = req.query.apikey2426 2427 if(!Apikey) return res.json(loghandler.notparam)2428 if(listkey.includes(Apikey)){24292430 const ero = JSON.parse(fs.readFileSync(__path +'/data/ero.json'));2431 const randero = ero[Math.floor(Math.random() * ero.length)];2432 data = await fetch(randero).then(v => v.buffer())2433 await fs.writeFileSync(__path +'/tmp/ero.jpeg', data)2434 res.sendFile(__path +'/tmp/ero.jpeg')2435} else {2436res.json(loghandler.invalidKey)2437}2438})24392440router.get('/nsfw/femdom', async (req, res, next) => {2441 var Apikey = req.query.apikey2442 2443 if(!Apikey) return res.json(loghandler.notparam)2444 if(listkey.includes(Apikey)){24452446 const femdom = JSON.parse(fs.readFileSync(__path +'/data/femdom.json'));2447 const randfemdom = femdom[Math.floor(Math.random() * femdom.length)];2448 data = await fetch(randfemdom).then(v => v.buffer())2449 await fs.writeFileSync(__path +'/tmp/femdom.jpeg', data)2450 res.sendFile(__path +'/tmp/femdom.jpeg')2451} else {2452res.json(loghandler.invalidKey)2453}2454})24552456router.get('/nsfw/foot', async (req, res, next) => {2457 var Apikey = req.query.apikey2458 2459 if(!Apikey) return res.json(loghandler.notparam)2460 if(listkey.includes(Apikey)){24612462 const foot = JSON.parse(fs.readFileSync(__path +'/data/foot.json'));2463 const randfoot = foot[Math.floor(Math.random() * foot.length)];2464 data = await fetch(randfoot).then(v => v.buffer())2465 await fs.writeFileSync(__path +'/tmp/foot.jpeg', data)2466 res.sendFile(__path +'/tmp/foot.jpeg')2467} else {2468res.json(loghandler.invalidKey)2469}2470})24712472router.get('/nsfw/gangbang', async (req, res, next) => {2473 var Apikey = req.query.apikey2474 2475 if(!Apikey) return res.json(loghandler.notparam)2476 if(listkey.includes(Apikey)){24772478 const gangbang = JSON.parse(fs.readFileSync(__path +'/data/gangbang.json'));2479 const randgangbang = gangbang[Math.floor(Math.random() * gangbang.length)];2480 data = await fetch(randgangbang).then(v => v.buffer())2481 await fs.writeFileSync(__path +'/tmp/gangbang.jpeg', data)2482 res.sendFile(__path +'/tmp/gangbang.jpeg')2483} else {2484res.json(loghandler.invalidKey)2485}2486})24872488router.get('/nsfw/glasses', async (req, res, next) => {2489 var Apikey = req.query.apikey2490 2491 if(!Apikey) return res.json(loghandler.notparam)2492 if(listkey.includes(Apikey)){24932494 const glasses = JSON.parse(fs.readFileSync(__path +'/data/glasses.json'));2495 const randglasses = glasses[Math.floor(Math.random() * glasses.length)];2496 data = await fetch(randglasses).then(v => v.buffer())2497 await fs.writeFileSync(__path +'/tmp/glasses.jpeg', data)2498 res.sendFile(__path +'/tmp/glasses.jpeg')2499} else {2500res.json(loghandler.invalidKey)2501}2502})25032504router.get('/nsfw/hentai', async (req, res, next) => {2505 var Apikey = req.query.apikey2506 2507 if(!Apikey) return res.json(loghandler.notparam)2508 if(listkey.includes(Apikey)){25092510 const hentai = JSON.parse(fs.readFileSync(__path +'/data/hentai.json'));2511 const randhentai = hentai[Math.floor(Math.random() * hentai.length)];2512 data = await fetch(randhentai).then(v => v.buffer())2513 await fs.writeFileSync(__path +'/tmp/hentai.jpeg', data)2514 res.sendFile(__path +'/tmp/hentai.jpeg')2515} else {2516res.json(loghandler.invalidKey)2517}2518})25192520router.get('/nsfw/gifs', async (req, res, next) => {2521 var Apikey = req.query.apikey2522 2523 if(!Apikey) return res.json(loghandler.notparam)2524 if(listkey.includes(Apikey)){25252526 const gifs = JSON.parse(fs.readFileSync(__path +'/data/gifs.json'));2527 const randgifs = gifs[Math.floor(Math.random() * gifs.length)];2528 data = await fetch(randgifs).then(v => v.buffer())2529 await fs.writeFileSync(__path +'/tmp/gifs.jpeg', data)2530 res.sendFile(__path +'/tmp/gifs.jpeg')2531} else {2532res.json(loghandler.invalidKey)2533}2534})25352536router.get('/nsfw/jahy', async (req, res, next) => {2537 var Apikey = req.query.apikey2538 2539 if(!Apikey) return res.json(loghandler.notparam)2540 if(listkey.includes(Apikey)){25412542 const jahy = JSON.parse(fs.readFileSync(__path +'/data/jahy.json'));2543 const randjahy = jahy[Math.floor(Math.random() * jahy.length)];2544 data = await fetch(randjahy).then(v => v.buffer())2545 await fs.writeFileSync(__path +'/tmp/jahy.jpeg', data)2546 res.sendFile(__path +'/tmp/jahy.jpeg')2547} else {2548res.json(loghandler.invalidKey)2549}2550})25512552router.get('/nsfw/manga', async (req, res, next) => {2553 var Apikey = req.query.apikey2554 2555 if(!Apikey) return res.json(loghandler.notparam)2556 if(listkey.includes(Apikey)){25572558 const manga = JSON.parse(fs.readFileSync(__path +'/data/manga.json'));2559 const randmanga = manga[Math.floor(Math.random() * manga.length)];2560 data = await fetch(randmanga).then(v => v.buffer())2561 await fs.writeFileSync(__path +'/tmp/manga.jpeg', data)2562 res.sendFile(__path +'/tmp/manga.jpeg')2563} else {2564res.json(loghandler.invalidKey)2565}2566})25672568router.get('/nsfw/masturbation', async (req, res, next) => {2569 var Apikey = req.query.apikey2570 2571 if(!Apikey) return res.json(loghandler.notparam)2572 if(listkey.includes(Apikey)){25732574 const masturbation = JSON.parse(fs.readFileSync(__path +'/data/masturbation.json'));2575 const randmasturbation = masturbation[Math.floor(Math.random() * masturbation.length)];2576 data = await fetch(randmasturbation).then(v => v.buffer())2577 await fs.writeFileSync(__path +'/tmp/masturbation.jpeg', data)2578 res.sendFile(__path +'/tmp/masturbation.jpeg')2579} else {2580res.json(loghandler.invalidKey)2581}2582})25832584router.get('/nsfw/neko', async (req, res, next) => {2585 var Apikey = req.query.apikey2586 2587 if(!Apikey) return res.json(loghandler.notparam)2588 if(listkey.includes(Apikey)){25892590 const neko = JSON.parse(fs.readFileSync(__path +'/data/neko.json'));2591 const randneko = neko[Math.floor(Math.random() * neko.length)];2592 data = await fetch(randneko).then(v => v.buffer())2593 await fs.writeFileSync(__path +'/tmp/neko.jpeg', data)2594 res.sendFile(__path +'/tmp/neko.jpeg')2595} else {2596res.json(loghandler.invalidKey)2597}2598})25992600router.get('/nsfw/orgy', async (req, res, next) => {2601 var Apikey = req.query.apikey2602 2603 if(!Apikey) return res.json(loghandler.notparam)2604 if(listkey.includes(Apikey)){26052606 const orgy = JSON.parse(fs.readFileSync(__path +'/data/orgy.json'));2607 const randorgy = orgy[Math.floor(Math.random() * orgy.length)];2608 data = await fetch(randorgy).then(v => v.buffer())2609 await fs.writeFileSync(__path +'/tmp/orgy.jpeg', data)2610 res.sendFile(__path +'/tmp/orgy.jpeg')2611} else {2612res.json(loghandler.invalidKey)2613}2614})26152616router.get('/nsfw/panties', async (req, res, next) => {2617 var Apikey = req.query.apikey2618 2619 if(!Apikey) return res.json(loghandler.notparam)2620 if(listkey.includes(Apikey)){26212622 const panties = JSON.parse(fs.readFileSync(__path +'/data/panties.json'));2623 const randpanties = panties[Math.floor(Math.random() * panties.length)];2624 data = await fetch(randpanties).then(v => v.buffer())2625 await fs.writeFileSync(__path +'/tmp/panties.jpeg', data)2626 res.sendFile(__path +'/tmp/panties.jpeg')2627} else {2628res.json(loghandler.invalidKey)2629}2630})26312632router.get('/nsfw/pussy', async (req, res, next) => {2633 var Apikey = req.query.apikey2634 2635 if(!Apikey) return res.json(loghandler.notparam)2636 if(listkey.includes(Apikey)){26372638 const pussy = JSON.parse(fs.readFileSync(__path +'/data/pussy.json'));2639 const randpussy = pussy[Math.floor(Math.random() * pussy.length)];2640 data = await fetch(randpussy).then(v => v.buffer())2641 await fs.writeFileSync(__path +'/tmp/pussy.jpeg', data)2642 res.sendFile(__path +'/tmp/pussy.jpeg')2643} else {2644res.json(loghandler.invalidKey)2645}2646})26472648router.get('/nsfw/neko2', async (req, res, next) => {2649 var Apikey = req.query.apikey2650 2651 if(!Apikey) return res.json(loghandler.notparam)2652 if(listkey.includes(Apikey)){26532654 const neko2 = JSON.parse(fs.readFileSync(__path +'/data/neko2.json'));2655 const randneko2 = neko2[Math.floor(Math.random() * neko2.length)];2656 data = await fetch(randneko2).then(v => v.buffer())2657 await fs.writeFileSync(__path +'/tmp/neko2.jpeg', data)2658 res.sendFile(__path +'/tmp/neko2.jpeg')2659} else {2660res.json(loghandler.invalidKey)2661}2662})26632664router.get('/nsfw/tentacles', async (req, res, next) => {2665 var Apikey = req.query.apikey2666 2667 if(!Apikey) return res.json(loghandler.notparam)2668 if(listkey.includes(Apikey)){26692670 const tentacles = JSON.parse(fs.readFileSync(__path +'/data/tentacles.json'));2671 const randtentacles = tentacles[Math.floor(Math.random() * tentacles.length)];2672 data = await fetch(randtentacles).then(v => v.buffer())2673 await fs.writeFileSync(__path +'/tmp/tentacles.jpeg', data)2674 res.sendFile(__path +'/tmp/tentacles.jpeg')2675} else {2676res.json(loghandler.invalidKey)2677}2678})26792680router.get('/nsfw/thighs', async (req, res, next) => {2681 var Apikey = req.query.apikey2682 2683 if(!Apikey) return res.json(loghandler.notparam)2684 if(listkey.includes(Apikey)){26852686 const thighs = JSON.parse(fs.readFileSync(__path +'/data/thighs.json'));2687 const randthighs = thighs[Math.floor(Math.random() * thighs.length)];2688 data = await fetch(randthighs).then(v => v.buffer())2689 await fs.writeFileSync(__path +'/tmp/thighs.jpeg', data)2690 res.sendFile(__path +'/tmp/thighs.jpeg')2691} else {2692res.json(loghandler.invalidKey)2693}2694})26952696router.get('/nsfw/yuri', async (req, res, next) => {2697 var Apikey = req.query.apikey2698 2699 if(!Apikey) return res.json(loghandler.notparam)2700 if(listkey.includes(Apikey)){27012702 const yuri = JSON.parse(fs.readFileSync(__path +'/data/yuri.json'));2703 const randyuri = yuri[Math.floor(Math.random() * yuri.length)];2704 data = await fetch(randyuri).then(v => v.buffer())2705 await fs.writeFileSync(__path +'/tmp/yuri.jpeg', data)2706 res.sendFile(__path +'/tmp/yuri.jpeg')2707} else {2708res.json(loghandler.invalidKey)2709}2710})27112712router.get('/nsfw/zettai', async (req, res, next) => {2713 var Apikey = req.query.apikey2714 2715 if(!Apikey) return res.json(loghandler.notparam)2716 if(listkey.includes(Apikey)){27172718 const zettai = JSON.parse(fs.readFileSync(__path +'/data/zettai.json'));2719 const randzettai = zettai[Math.floor(Math.random() * zettai.length)];2720 data = await fetch(randzettai).then(v => v.buffer())2721 await fs.writeFileSync(__path +'/tmp/zettai.jpeg', data)2722 res.sendFile(__path +'/tmp/zettai.jpeg')2723} else {2724res.json(loghandler.invalidKey)2725}2726})27272728router.get('/wallpaper/keneki', async (req, res, next) => {2729 var Apikey = req.query.apikey2730 2731 if(!Apikey) return res.json(loghandler.notparam)2732 if(listkey.includes(Apikey)){27332734 const keneki = JSON.parse(fs.readFileSync(__path +'/data/keneki.json'));2735 const randkeneki = keneki[Math.floor(Math.random() * keneki.length)];2736 data = await fetch(randkeneki).then(v => v.buffer())2737 await fs.writeFileSync(__path +'/tmp/keneki.jpeg', data)2738 res.sendFile(__path +'/tmp/keneki.jpeg')2739} else {2740res.json(loghandler.invalidKey)2741}2742})27432744router.get('/wallpaper/megumin', async (req, res, next) => {2745 var Apikey = req.query.apikey2746 2747 if(!Apikey) return res.json(loghandler.notparam)2748 if(listkey.includes(Apikey)){27492750 const megumin = JSON.parse(fs.readFileSync(__path +'/data/megumin.json'));2751 const randmegumin = megumin[Math.floor(Math.random() * megumin.length)];2752 data = await fetch(randmegumin).then(v => v.buffer())2753 await fs.writeFileSync(__path +'/tmp/megumin.jpeg', data)2754 res.sendFile(__path +'/tmp/megumin.jpeg')2755} else {2756res.json(loghandler.invalidKey)2757}2758})27592760router.get('/wallpaper/yotsuba', async (req, res, next) => {2761 var Apikey = req.query.apikey2762 2763 if(!Apikey) return res.json(loghandler.notparam)2764 if(listkey.includes(Apikey)){27652766 const yotsuba = JSON.parse(fs.readFileSync(__path +'/data/yotsuba.json'));2767 const randyotsuba = yotsuba[Math.floor(Math.random() * yotsuba.length)];2768 data = await fetch(randyotsuba).then(v => v.buffer())2769 await fs.writeFileSync(__path +'/tmp/yotsuba.jpeg', data)2770 res.sendFile(__path +'/tmp/yotsuba.jpeg')2771} else {2772res.json(loghandler.invalidKey)2773}2774})27752776router.get('/wallpaper/shinomiya', async (req, res, next) => {2777 var Apikey = req.query.apikey2778 2779 if(!Apikey) return res.json(loghandler.notparam)2780 if(listkey.includes(Apikey)){27812782 const shinomiya = JSON.parse(fs.readFileSync(__path +'/data/shinomiya.json'));2783 const randshinomiya = shinomiya[Math.floor(Math.random() * shinomiya.length)];2784 data = await fetch(randshinomiya).then(v => v.buffer())2785 await fs.writeFileSync(__path +'/tmp/shinomiya.jpeg', data)2786 res.sendFile(__path +'/tmp/shinomiya.jpeg')2787} else {2788res.json(loghandler.invalidKey)2789}2790})27912792router.get('/wallpaper/yumeko', async (req, res, next) => {2793 var Apikey = req.query.apikey2794 2795 if(!Apikey) return res.json(loghandler.notparam)2796 if(listkey.includes(Apikey)){27972798 const yumeko = JSON.parse(fs.readFileSync(__path +'/data/yumeko.json'));2799 const randyumeko = yumeko[Math.floor(Math.random() * yumeko.length)];2800 data = await fetch(randyumeko).then(v => v.buffer())2801 await fs.writeFileSync(__path +'/tmp/yumeko.jpeg', data)2802 res.sendFile(__path +'/tmp/yumeko.jpeg')2803} else {2804res.json(loghandler.invalidKey)2805}2806})28072808router.get('/wallpaper/tejina', async (req, res, next) => {2809 var Apikey = req.query.apikey2810 2811 if(!Apikey) return res.json(loghandler.notparam)2812 if(listkey.includes(Apikey)){28132814 const tejina = JSON.parse(fs.readFileSync(__path +'/data/tejina.json'));2815 const randtejina = tejina[Math.floor(Math.random() * tejina.length)];2816 data = await fetch(randtejina).then(v => v.buffer())2817 await fs.writeFileSync(__path +'/tmp/tejina.jpeg', data)2818 res.sendFile(__path +'/tmp/tejina.jpeg')2819} else {2820res.json(loghandler.invalidKey)2821}2822})28232824router.get('/wallpaper/chiho', async (req, res, next) => {2825 var Apikey = req.query.apikey2826 2827 if(!Apikey) return res.json(loghandler.notparam)2828 if(listkey.includes(Apikey)){28292830 const chiho = JSON.parse(fs.readFileSync(__path +'/data/chiho.json'));2831 const randchiho = chiho[Math.floor(Math.random() * chiho.length)];2832 data = await fetch(randchiho).then(v => v.buffer())2833 await fs.writeFileSync(__path +'/tmp/chiho.jpeg', data)2834 res.sendFile(__path +'/tmp/chiho.jpeg')2835} else {2836res.json(loghandler.invalidKey)2837}2838})28392840router.get('/wallpaper/cyberspace', async (req, res, next) => {2841 var Apikey = req.query.apikey2842 2843 if(!Apikey) return res.json(loghandler.notparam)2844 if(listkey.includes(Apikey)){28452846 const cyberspace = JSON.parse(fs.readFileSync(__path +'/data/CyberSpace.json'));2847 const randcyberspace = cyberspace[Math.floor(Math.random() * cyberspace.length)];2848 data = await fetch(randcyberspace).then(v => v.buffer())2849 await fs.writeFileSync(__path +'/tmp/cyberspace.jpeg', data)2850 res.sendFile(__path +'/tmp/cyberspace.jpeg')2851} else {2852res.json(loghandler.invalidKey)2853}2854})28552856router.get('/wallpaper/gaming', async (req, res, next) => {2857 var Apikey = req.query.apikey2858 2859 if(!Apikey) return res.json(loghandler.notparam)2860 if(listkey.includes(Apikey)){28612862 const gaming = JSON.parse(fs.readFileSync(__path +'/data/GameWallp.json'));2863 const randgaming = gaming[Math.floor(Math.random() * gaming.length)];2864 data = await fetch(randgaming).then(v => v.buffer())2865 await fs.writeFileSync(__path +'/tmp/gaming.jpeg', data)2866 res.sendFile(__path +'/tmp/gaming.jpeg')2867} else {2868res.json(loghandler.invalidKey)2869}2870})28712872router.get('/wallpaper/islami', async (req, res, next) => {2873 var Apikey = req.query.apikey2874 2875 if(!Apikey) return res.json(loghandler.notparam)2876 if(listkey.includes(Apikey)){28772878 const islami = JSON.parse(fs.readFileSync(__path +'/data/Islamic.json'));2879 const randislami = islami[Math.floor(Math.random() * islami.length)];2880 data = await fetch(randislami).then(v => v.buffer())2881 await fs.writeFileSync(__path +'/tmp/islami.jpeg', data)2882 res.sendFile(__path +'/tmp/islami.jpeg')2883} else {2884res.json(loghandler.invalidKey)2885}2886})28872888router.get('/wallpaper/programing', async (req, res, next) => {2889 var Apikey = req.query.apikey2890 2891 if(!Apikey) return res.json(loghandler.notparam)2892 if(listkey.includes(Apikey)){28932894 const programing = JSON.parse(fs.readFileSync(__path +'/data/Programming.json'));2895 const randprograming = programing[Math.floor(Math.random() * programing.length)];2896 data = await fetch(randprograming).then(v => v.buffer())2897 await fs.writeFileSync(__path +'/tmp/programing.jpeg', data)2898 res.sendFile(__path +'/tmp/programing.jpeg')2899} else {2900res.json(loghandler.invalidKey)2901}2902})29032904router.get('/wallpaper/teknologi', async (req, res, next) => {2905 var Apikey = req.query.apikey2906 2907 if(!Apikey) return res.json(loghandler.notparam)2908 if(listkey.includes(Apikey)){29092910 const teknologi = JSON.parse(fs.readFileSync(__path +'/data/Technology.json'));2911 const randteknologi = teknologi[Math.floor(Math.random() * teknologi.length)];2912 data = await fetch(randteknologi).then(v => v.buffer())2913 await fs.writeFileSync(__path +'/tmp/teknologi.jpeg', data)2914 res.sendFile(__path +'/tmp/teknologi.jpeg')2915} else {2916res.json(loghandler.invalidKey)2917}2918})29192920router.get('/wallpaper/mountain', async (req, res, next) => {2921 var Apikey = req.query.apikey2922 2923 if(!Apikey) return res.json(loghandler.notparam)2924 if(listkey.includes(Apikey)){29252926 const mountain = JSON.parse(fs.readFileSync(__path +'/data/Mountain.json'));2927 const randmountain = mountain[Math.floor(Math.random() * mountain.length)];2928 data = await fetch(randmountain).then(v => v.buffer())2929 await fs.writeFileSync(__path +'/tmp/mountain.jpeg', data)2930 res.sendFile(__path +'/tmp/mountain.jpeg')2931} else {2932res.json(loghandler.invalidKey)2933}2934})29352936router.get('/wallpaper/tatasurya', async (req, res, next) => {2937 var Apikey = req.query.apikey2938 2939 if(!Apikey) return res.json(loghandler.notparam)2940 if(listkey.includes(Apikey)){29412942 const tatasurya = JSON.parse(fs.readFileSync(__path +'/data/tatasurya.json'));2943 const randtatasurya = tatasurya[Math.floor(Math.random() * tatasurya.length)];2944 data = await fetch(randtatasurya).then(v => v.buffer())2945 await fs.writeFileSync(__path +'/tmp/tatasurya.jpeg', data)2946 res.sendFile(__path +'/tmp/tatasurya.jpeg')2947} else {2948res.json(loghandler.invalidKey)2949}2950})29512952router.get('/wallpaper/kartun', async (req, res, next) => {2953 var Apikey = req.query.apikey2954 2955 if(!Apikey) return res.json(loghandler.notparam)2956 if(listkey.includes(Apikey)){29572958 const kartun = JSON.parse(fs.readFileSync(__path +'/data/kartun.json'));2959 const randkartun = kartun[Math.floor(Math.random() * kartun.length)];2960 data = await fetch(randkartun).then(v => v.buffer())2961 await fs.writeFileSync(__path +'/tmp/kartun.jpeg', data)2962 res.sendFile(__path +'/tmp/kartun.jpeg')2963} else {2964res.json(loghandler.invalidKey)2965}2966})29672968router.get('/random/yuli', async (req, res, next) => {2969 var Apikey = req.query.apikey2970 2971 if(!Apikey) return res.json(loghandler.notparam)2972 if(listkey.includes(Apikey)){29732974 const yuli = JSON.parse(fs.readFileSync(__path +'/data/yulibocil.json'));2975 const randyuli = yuli[Math.floor(Math.random() * yuli.length)];2976 data = await fetch(randyuli).then(v => v.buffer())2977 await fs.writeFileSync(__path +'/tmp/yuli.jpeg', data)2978 res.sendFile(__path +'/tmp/yuli.jpeg')2979} else {2980res.json(loghandler.invalidKey)2981}2982})29832984router.get('/wallpaper/pentol', async (req, res, next) => {2985 var Apikey = req.query.apikey2986 2987 if(!Apikey) return res.json(loghandler.notparam)2988 if(listkey.includes(Apikey)){29892990 const pentol = JSON.parse(fs.readFileSync(__path +'/data/pentol.json'));2991 const randpentol = pentol[Math.floor(Math.random() * pentol.length)];2992 data = await fetch(randpentol).then(v => v.buffer())2993 await fs.writeFileSync(__path +'/tmp/pentol.jpeg', data)2994 res.sendFile(__path +'/tmp/pentol.jpeg')2995} else {2996res.json(loghandler.invalidKey)2997}2998})29993000router.get('/wallpaper/katakata', async (req, res, next) => {3001 var Apikey = req.query.apikey3002 3003 if(!Apikey) return res.json(loghandler.notparam)3004 if(listkey.includes(Apikey)){30053006 const katakata = JSON.parse(fs.readFileSync(__path +'/data/katakata.json'));3007 const randkatakata = katakata[Math.floor(Math.random() * katakata.length)];3008 data = await fetch(randkatakata).then(v => v.buffer())3009 await fs.writeFileSync(__path +'/tmp/katakata.jpeg', data)3010 res.sendFile(__path +'/tmp/katakata.jpeg')3011} else {3012res.json(loghandler.invalidKey)3013}3014})30153016router.get('/wallpaper/toukachan', async (req, res, next) => {3017 var Apikey = req.query.apikey3018 3019 if(!Apikey) return res.json(loghandler.notparam)3020 if(listkey.includes(Apikey)){30213022 const toukachan = JSON.parse(fs.readFileSync(__path +'/data/toukachan.json'));3023 const randtoukachan = toukachan[Math.floor(Math.random() * toukachan.length)];3024 data = await fetch(randtoukachan).then(v => v.buffer())3025 await fs.writeFileSync(__path +'/tmp/toukachan.jpeg', data)3026 res.sendFile(__path +'/tmp/toukachan.jpeg')3027} else {3028res.json(loghandler.invalidKey)3029}3030})30313032router.get('/wallpaper/akira', async (req, res, next) => {3033 var Apikey = req.query.apikey3034 3035 if(!Apikey) return res.json(loghandler.notparam)3036 if(listkey.includes(Apikey)){30373038 const akira = JSON.parse(fs.readFileSync(__path +'/data/akira.json'));3039 const randakira = akira[Math.floor(Math.random() * akira.length)];3040 data = await fetch(randakira).then(v => v.buffer())3041 await fs.writeFileSync(__path +'/tmp/akira.jpeg', data)3042 res.sendFile(__path +'/tmp/akira.jpeg')3043} else {3044res.json(loghandler.invalidKey)3045}3046})30473048router.get('/wallpaper/itori', async (req, res, next) => {3049 var Apikey = req.query.apikey3050 3051 if(!Apikey) return res.json(loghandler.notparam)3052 if(listkey.includes(Apikey)){30533054 const itori = JSON.parse(fs.readFileSync(__path +'/data/itori.json'));3055 const randitori = itori[Math.floor(Math.random() * itori.length)];3056 data = await fetch(randitori).then(v => v.buffer())3057 await fs.writeFileSync(__path +'/tmp/itori.jpeg', data)3058 res.sendFile(__path +'/tmp/itori.jpeg')3059} else {3060res.json(loghandler.invalidKey)3061}3062})30633064router.get('/wallpaper/kurumi', async (req, res, next) => {3065 var Apikey = req.query.apikey3066 3067 if(!Apikey) return res.json(loghandler.notparam)3068 if(listkey.includes(Apikey)){30693070 const kurumi = JSON.parse(fs.readFileSync(__path +'/data/kurumi.json'));3071 const randkurumi = kurumi[Math.floor(Math.random() * kurumi.length)];3072 data = await fetch(randkurumi).then(v => v.buffer())3073 await fs.writeFileSync(__path +'/tmp/kurumi.jpeg', data)3074 res.sendFile(__path +'/tmp/kurumi.jpeg')3075} else {3076res.json(loghandler.invalidKey)3077}3078})30793080router.get('/wallpaper/miku', async (req, res, next) => {3081 var Apikey = req.query.apikey3082 3083 if(!Apikey) return res.json(loghandler.notparam)3084 if(listkey.includes(Apikey)){30853086 const miku = JSON.parse(fs.readFileSync(__path +'/data/miku.json'));3087 const randmiku = miku[Math.floor(Math.random() * miku.length)];3088 data = await fetch(randmiku).then(v => v.buffer())3089 await fs.writeFileSync(__path +'/tmp/miku.jpeg', data)3090 res.sendFile(__path +'/tmp/miku.jpeg')3091} else {3092res.json(loghandler.invalidKey)3093}3094})30953096router.get('/wallpaper/pokemon', async (req, res, next) => {3097 var Apikey = req.query.apikey3098 3099 if(!Apikey) return res.json(loghandler.notparam)3100 if(listkey.includes(Apikey)){31013102 const pokemon = JSON.parse(fs.readFileSync(__path +'/data/pokemon.json'));3103 const randpokemon = pokemon[Math.floor(Math.random() * pokemon.length)];3104 data = await fetch(randpokemon).then(v => v.buffer())3105 await fs.writeFileSync(__path +'/tmp/pokemon.jpeg', data)3106 res.sendFile(__path +'/tmp/pokemon.jpeg')3107} else {3108res.json(loghandler.invalidKey)3109}3110})31113112router.get('/wallpaper/ryujin', async (req, res, next) => {3113 var Apikey = req.query.apikey3114 3115 if(!Apikey) return res.json(loghandler.notparam)3116 if(listkey.includes(Apikey)){31173118 const ryujin = JSON.parse(fs.readFileSync(__path +'/data/ryujin.json'));3119 const randryujin = ryujin[Math.floor(Math.random() * ryujin.length)];3120 data = await fetch(randryujin).then(v => v.buffer())3121 await fs.writeFileSync(__path +'/tmp/ryujin.jpeg', data)3122 res.sendFile(__path +'/tmp/ryujin.jpeg')3123} else {3124res.json(loghandler.invalidKey)3125}3126})31273128router.get('/wallpaper/rose', async (req, res, next) => {3129 var Apikey = req.query.apikey3130 3131 if(!Apikey) return res.json(loghandler.notparam)3132 if(listkey.includes(Apikey)){31333134 const rose = JSON.parse(fs.readFileSync(__path +'/data/rose.json'));3135 const randrose = rose[Math.floor(Math.random() * rose.length)];3136 data = await fetch(randrose).then(v => v.buffer())3137 await fs.writeFileSync(__path +'/tmp/rose.jpeg', data)3138 res.sendFile(__path +'/tmp/rose.jpeg')3139} else {3140res.json(loghandler.invalidKey)3141}3142})31433144router.get('/wallpaper/kaori', async (req, res, next) => {3145 var Apikey = req.query.apikey3146 3147 if(!Apikey) return res.json(loghandler.notparam)3148 if(listkey.includes(Apikey)){31493150 const kaori = JSON.parse(fs.readFileSync(__path +'/data/kaori.json'));3151 const randkaori = kaori[Math.floor(Math.random() * kaori.length)];3152 data = await fetch(randkaori).then(v => v.buffer())3153 await fs.writeFileSync(__path +'/tmp/kaori.jpeg', data)3154 res.sendFile(__path +'/tmp/kaori.jpeg')3155} else {3156res.json(loghandler.invalidKey)3157}3158})31593160router.get('/wallpaper/shizuka', async (req, res, next) => {3161 var Apikey = req.query.apikey3162 3163 if(!Apikey) return res.json(loghandler.notparam)3164 if(listkey.includes(Apikey)){31653166 const shizuka = JSON.parse(fs.readFileSync(__path +'/data/shizuka.json'));3167 const randshizuka = shizuka[Math.floor(Math.random() * shizuka.length)];3168 data = await fetch(randshizuka).then(v => v.buffer())3169 await fs.writeFileSync(__path +'/tmp/shizuka.jpeg', data)3170 res.sendFile(__path +'/tmp/shizuka.jpeg')3171} else {3172res.json(loghandler.invalidKey)3173}3174})31753176router.get('/wallpaper/kaga', async (req, res, next) => {3177 var Apikey = req.query.apikey3178 3179 if(!Apikey) return res.json(loghandler.notparam)3180 if(listkey.includes(Apikey)){31813182 const kaga = JSON.parse(fs.readFileSync(__path +'/data/kaga.json'));3183 const randkaga = kaga[Math.floor(Math.random() * kaga.length)];3184 data = await fetch(randkaga).then(v => v.buffer())3185 await fs.writeFileSync(__path +'/tmp/kaga.jpeg', data)3186 res.sendFile(__path +'/tmp/kaga.jpeg')3187} else {3188res.json(loghandler.invalidKey)3189}3190})31913192router.get('/wallpaper/kotori', async (req, res, next) => {3193 var Apikey = req.query.apikey3194 3195 if(!Apikey) return res.json(loghandler.notparam)3196 if(listkey.includes(Apikey)){31973198 const kotori = JSON.parse(fs.readFileSync(__path +'/data/kotori.json'));3199 const randkotori = kotori[Math.floor(Math.random() * kotori.length)];3200 data = await fetch(randkotori).then(v => v.buffer())3201 await fs.writeFileSync(__path +'/tmp/kotori.jpeg', data)3202 res.sendFile(__path +'/tmp/kotori.jpeg')3203} else {3204res.json(loghandler.invalidKey)3205}3206})32073208router.get('/wallpaper/mikasa', async (req, res, next) => {3209 var Apikey = req.query.apikey3210 3211 if(!Apikey) return res.json(loghandler.notparam)3212 if(listkey.includes(Apikey)){32133214 const mikasa = JSON.parse(fs.readFileSync(__path +'/data/mikasa.json'));3215 const randmikasa = mikasa[Math.floor(Math.random() * mikasa.length)];3216 data = await fetch(randmikasa).then(v => v.buffer())3217 await fs.writeFileSync(__path +'/tmp/mikasa.jpeg', data)3218 res.sendFile(__path +'/tmp/mikasa.jpeg')3219} else {3220res.json(loghandler.invalidKey)3221}3222})32233224router.get('/wallpaper/akiyama', async (req, res, next) => {3225 var Apikey = req.query.apikey3226 3227 if(!Apikey) return res.json(loghandler.notparam)3228 if(listkey.includes(Apikey)){32293230 const akiyama = JSON.parse(fs.readFileSync(__path +'/data/akiyama.json'));3231 const randakiyama = akiyama[Math.floor(Math.random() * akiyama.length)];3232 data = await fetch(randakiyama).then(v => v.buffer())3233 await fs.writeFileSync(__path +'/tmp/akiyama.jpeg', data)3234 res.sendFile(__path +'/tmp/akiyama.jpeg')3235} else {3236res.json(loghandler.invalidKey)3237}3238})32393240router.get('/wallpaper/gremory', async (req, res, next) => {3241 var Apikey = req.query.apikey3242 3243 if(!Apikey) return res.json(loghandler.notparam)3244 if(listkey.includes(Apikey)){32453246 const gremory = JSON.parse(fs.readFileSync(__path +'/data/gremory.json'));3247 const randgremory = gremory[Math.floor(Math.random() * gremory.length)];3248 data = await fetch(randgremory).then(v => v.buffer())3249 await fs.writeFileSync(__path +'/tmp/gremory.jpeg', data)3250 res.sendFile(__path +'/tmp/gremory.jpeg')3251} else {3252res.json(loghandler.invalidKey)3253}3254})32553256router.get('/wallpaper/isuzu', async (req, res, next) => {3257 var Apikey = req.query.apikey3258 3259 if(!Apikey) return res.json(loghandler.notparam)3260 if(listkey.includes(Apikey)){32613262 const isuzu = JSON.parse(fs.readFileSync(__path +'/data/isuzu.json'));3263 const randisuzu = isuzu[Math.floor(Math.random() * isuzu.length)];3264 data = await fetch(randisuzu).then(v => v.buffer())3265 await fs.writeFileSync(__path +'/tmp/isuzu.jpeg', data)3266 res.sendFile(__path +'/tmp/isuzu.jpeg')3267} else {3268res.json(loghandler.invalidKey)3269}3270})32713272router.get('/random/cosplay', async (req, res, next) => {3273 var Apikey = req.query.apikey3274 3275 if(!Apikey) return res.json(loghandler.notparam)3276 if(listkey.includes(Apikey)){32773278 const cosplay = JSON.parse(fs.readFileSync(__path +'/data/cosplay.json'));3279 const randcosplay = cosplay[Math.floor(Math.random() * cosplay.length)];3280 data = await fetch(randcosplay).then(v => v.buffer())3281 await fs.writeFileSync(__path +'/tmp/cosplay.jpeg', data)3282 res.sendFile(__path +'/tmp/cosplay.jpeg')3283} else {3284res.json(loghandler.invalidKey)3285}3286})32873288router.get('/wallpaper/shina', async (req, res, next) => {3289 var Apikey = req.query.apikey3290 3291 if(!Apikey) return res.json(loghandler.notparam)3292 if(listkey.includes(Apikey)){32933294 const shina = JSON.parse(fs.readFileSync(__path +'/data/shina.json'));3295 const randshina = shina[Math.floor(Math.random() * shina.length)];3296 data = await fetch(randshina).then(v => v.buffer())3297 await fs.writeFileSync(__path +'/tmp/shina.jpeg', data)3298 res.sendFile(__path +'/tmp/shina.jpeg')3299} else {3300res.json(loghandler.invalidKey)3301}3302})33033304router.get('/wallpaper/kagura', async (req, res, next) => {3305 var Apikey = req.query.apikey3306 3307 if(!Apikey) return res.json(loghandler.notparam)3308 if(listkey.includes(Apikey)){33093310 const kagura = JSON.parse(fs.readFileSync(__path +'/data/kagura.json'));3311 const randkagura = kagura[Math.floor(Math.random() * kagura.length)];3312 data = await fetch(randkagura).then(v => v.buffer())3313 await fs.writeFileSync(__path +'/tmp/kagura.jpeg', data)3314 res.sendFile(__path +'/tmp/kagura.jpeg')3315} else {3316res.json(loghandler.invalidKey)3317}3318})33193320router.get('/wallpaper/shinka', async (req, res, next) => {3321 var Apikey = req.query.apikey3322 3323 if(!Apikey) return res.json(loghandler.notparam)3324 if(listkey.includes(Apikey)){33253326 const shinka = JSON.parse(fs.readFileSync(__path +'/data/shinka.json'));3327 const randshinka = shinka[Math.floor(Math.random() * shinka.length)];3328 data = await fetch(randshinka).then(v => v.buffer())3329 await fs.writeFileSync(__path +'/tmp/shinka.jpeg', data)3330 res.sendFile(__path +'/tmp/shinka.jpeg')3331} else {3332res.json(loghandler.invalidKey)3333}3334})33353336router.get('/wallpaper/eba', async (req, res, next) => {3337 var Apikey = req.query.apikey3338 3339 if(!Apikey) return res.json(loghandler.notparam)3340 if(listkey.includes(Apikey)){33413342 const eba = JSON.parse(fs.readFileSync(__path +'/data/eba.json'));3343 const randeba = eba[Math.floor(Math.random() * eba.length)];3344 data = await fetch(randeba).then(v => v.buffer())3345 await fs.writeFileSync(__path +'/tmp/eba.jpeg', data)3346 res.sendFile(__path +'/tmp/eba.jpeg')3347} else {3348res.json(loghandler.invalidKey)3349}3350})33513352router.get('/wallpaper/deidara', async (req, res, next) => {3353 var Apikey = req.query.apikey3354 3355 if(!Apikey) return res.json(loghandler.notparam)3356 if(listkey.includes(Apikey)){33573358 const Deidara = JSON.parse(fs.readFileSync(__path +'/data/deidara.json'));3359 const randDeidara = Deidara[Math.floor(Math.random() * Deidara.length)];3360 data = await fetch(randDeidara).then(v => v.buffer())3361 await fs.writeFileSync(__path +'/tmp/deidara.jpeg', data)3362 res.sendFile(__path +'/tmp/deidara.jpeg')3363} else {3364res.json(loghandler.invalidKey)3365}3366})33673368router.get('/wallpaper/trans', async (req, res, next) => {3369 var Apikey = req.query.apikey3370 3371 if(!Apikey) return res.json(loghandler.notparam)3372 if(listkey.includes(Apikey)){33733374 const trans = JSON.parse(fs.readFileSync(__path +'/data/trans.json'));3375 const randtrans = trans[Math.floor(Math.random() * trans.length)];3376 data = await fetch(randtrans).then(v => v.buffer())3377 await fs.writeFileSync(__path +'/tmp/trans.jpeg', data)3378 res.sendFile(__path +'/tmp/trans.jpeg')3379} else {3380res.json(loghandler.invalidKey)3381}3382})33833384router.get('/wallpaper/jeni', async (req, res, next) => {3385 var Apikey = req.query.apikey3386 3387 if(!Apikey) return res.json(loghandler.notparam)3388 if(listkey.includes(Apikey)){33893390 const jeni = JSON.parse(fs.readFileSync(__path +'/data/jeni.json'));3391 const randjeni = jeni[Math.floor(Math.random() * jeni.length)];3392 data = await fetch(randjeni).then(v => v.buffer())3393 await fs.writeFileSync(__path +'/tmp/jeni.jpeg', data)3394 res.sendFile(__path +'/tmp/jeni.jpeg')3395} else {3396res.json(loghandler.invalidKey)3397}3398})33993400router.get('/wallpaper/jiso', async (req, res, next) => {3401 var Apikey = req.query.apikey3402 3403 if(!Apikey) return res.json(loghandler.notparam)3404 if(listkey.includes(Apikey)){34053406 const jiso = JSON.parse(fs.readFileSync(__path +'/data/jiso.json'));3407 const randjiso = jiso[Math.floor(Math.random() * jiso.length)];3408 data = await fetch(randjiso).then(v => v.buffer())3409 await fs.writeFileSync(__path +'/tmp/jiso.jpeg', data)3410 res.sendFile(__path +'/tmp/jiso.jpeg')3411} else {3412res.json(loghandler.invalidKey)3413}3414})34153416router.get('/wallpaper/satanic', async (req, res, next) => {3417 var Apikey = req.query.apikey3418 3419 if(!Apikey) return res.json(loghandler.notparam)3420 if(listkey.includes(Apikey)){34213422 const satanic = JSON.parse(fs.readFileSync(__path +'/data/satanic.json'));3423 const randsatanic = satanic[Math.floor(Math.random() * satanic.length)];3424 data = await fetch(randsatanic).then(v => v.buffer())3425 await fs.writeFileSync(__path +'/tmp/satanic.jpeg', data)3426 res.sendFile(__path +'/tmp/satanic.jpeg')3427} else {3428res.json(loghandler.invalidKey)3429}3430})34313432router.get('/wallpaper/cecan2', async (req, res, next) => {3433 var Apikey = req.query.apikey3434 3435 if(!Apikey) return res.json(loghandler.notparam)3436 if(listkey.includes(Apikey)){34373438 const cecan2 = JSON.parse(fs.readFileSync(__path +'/data/cecan2.json'));3439 const randcecan2 = cecan2[Math.floor(Math.random() * cecan2.length)];3440 data = await fetch(randcecan2).then(v => v.buffer())3441 await fs.writeFileSync(__path +'/tmp/cecan2.jpeg', data)3442 res.sendFile(__path +'/tmp/cecan2.jpeg')3443} else {3444res.json(loghandler.invalidKey)3445}3446})34473448router.get('/wallpaper/cogan2', async (req, res, next) => {3449 var Apikey = req.query.apikey3450 3451 if(!Apikey) return res.json(loghandler.notparam)3452 if(listkey.includes(Apikey)){34533454 const cogan2 = JSON.parse(fs.readFileSync(__path +'/data/cogan2.json'));3455 const randcogan2 = cogan2[Math.floor(Math.random() * cogan2.length)];3456 data = await fetch(randcogan2).then(v => v.buffer())3457 await fs.writeFileSync(__path +'/tmp/cogan2.jpeg', data)3458 res.sendFile(__path +'/tmp/cogan2.jpeg')3459} else {3460res.json(loghandler.invalidKey)3461}3462})34633464router.get('/wallpaper/itachi', async (req, res, next) => {3465 var Apikey = req.query.apikey3466 3467 if(!Apikey) return res.json(loghandler.notparam)3468 if(listkey.includes(Apikey)){34693470 const Itachi = JSON.parse(fs.readFileSync(__path +'/data/itachi.json'));3471 const randItachi = Itachi[Math.floor(Math.random() * Itachi.length)];3472 data = await fetch(randItachi).then(v => v.buffer())3473 await fs.writeFileSync(__path +'/tmp/ita.jpeg', data)3474 res.sendFile(__path +'/tmp/ita.jpeg')3475} else {3476res.json(loghandler.invalidKey)3477}3478})34793480router.get('/wallpaper/madara', async (req, res, next) => {3481 var Apikey = req.query.apikey3482 3483 if(!Apikey) return res.json(loghandler.notparam)3484 if(listkey.includes(Apikey)){34853486 const Madara = JSON.parse(fs.readFileSync(__path +'/data/madara.json'));3487 const randMadara = Madara[Math.floor(Math.random() * Madara.length)];3488 data = await fetch(randMadara).then(v => v.buffer())3489 await fs.writeFileSync(__path +'/tmp/madara.jpeg', data)3490 res.sendFile(__path +'/tmp/madara.jpeg')3491} else {3492res.json(loghandler.invalidKey)3493}3494})34953496router.get('/wallpaper/yuki', async (req, res, next) => {3497 var Apikey = req.query.apikey3498 3499 if(!Apikey) return res.json(loghandler.notparam)3500 if(listkey.includes(Apikey)){35013502 const Yuki = JSON.parse(fs.readFileSync(__path +'/data/yuki.json'));3503 const randYuki = Yuki[Math.floor(Math.random() * Yuki.length)];3504 data = await fetch(randYuki).then(v => v.buffer())3505 await fs.writeFileSync(__path +'/tmp/yuki.jpeg', data)3506 res.sendFile(__path +'/tmp/yuki.jpeg')3507} else {3508res.json(loghandler.invalidKey)3509}3510})35113512router.get('/wallpaper/asuna', async (req, res, next) => {3513 var Apikey = req.query.apikey3514 3515 if(!Apikey) return res.json(loghandler.notparam)3516 if(listkey.includes(Apikey)){35173518 const asuna = JSON.parse(fs.readFileSync(__path +'/data/asuna.json'));3519 const randasuna = asuna[Math.floor(Math.random() * asuna.length)];3520 data = await fetch(randasuna).then(v => v.buffer())3521 await fs.writeFileSync(__path +'/tmp/asuna.jpeg', data)3522 res.sendFile(__path +'/tmp/asuna.jpeg')3523} else {3524res.json(loghandler.invalidKey)3525}3526})35273528router.get('/wallpaper/ayuzawa', async (req, res, next) => {3529 var Apikey = req.query.apikey3530 3531 if(!Apikey) return res.json(loghandler.notparam)3532 if(listkey.includes(Apikey)){35333534 const ayuzawa = JSON.parse(fs.readFileSync(__path +'/data/ayuzawa.json'));3535 const randayuzawa = ayuzawa[Math.floor(Math.random() * ayuzawa.length)];3536 data = await fetch(randayuzawa).then(v => v.buffer())3537 await fs.writeFileSync(__path +'/tmp/ayuzawa.jpeg', data)3538 res.sendFile(__path +'/tmp/ayuzawa.jpeg')3539} else {3540res.json(loghandler.invalidKey)3541}3542})35433544router.get('/wallpaper/chitoge', async (req, res, next) => {3545 var Apikey = req.query.apikey3546 3547 if(!Apikey) return res.json(loghandler.notparam)3548 if(listkey.includes(Apikey)){35493550 const chitoge = JSON.parse(fs.readFileSync(__path +'/data/chitoge.json'));3551 const randchitoge = chitoge[Math.floor(Math.random() * chitoge.length)];3552 data = await fetch(randchitoge).then(v => v.buffer())3553 await fs.writeFileSync(__path +'/tmp/chitoge.jpeg', data)3554 res.sendFile(__path +'/tmp/chitoge.jpeg')3555} else {3556res.json(loghandler.invalidKey)3557}3558})35593560router.get('/wallpaper/emilia', async (req, res, next) => {3561 var Apikey = req.query.apikey3562 3563 if(!Apikey) return res.json(loghandler.notparam)3564 if(listkey.includes(Apikey)){35653566 const emilia = JSON.parse(fs.readFileSync(__path +'/data/emilia.json'));3567 const randemilia = emilia[Math.floor(Math.random() * emilia.length)];3568 data = await fetch(randemilia).then(v => v.buffer())3569 await fs.writeFileSync(__path +'/tmp/emilia.jpeg', data)3570 res.sendFile(__path +'/tmp/emilia.jpeg')3571} else {3572res.json(loghandler.invalidKey)3573}3574})35753576router.get('/wallpaper/hestia', async (req, res, next) => {3577 var Apikey = req.query.apikey3578 3579 if(!Apikey) return res.json(loghandler.notparam)3580 if(listkey.includes(Apikey)){35813582 const hestia = JSON.parse(fs.readFileSync(__path +'/data/hestia.json'));3583 const randhestia = hestia[Math.floor(Math.random() * hestia.length)];3584 data = await fetch(randhestia).then(v => v.buffer())3585 await fs.writeFileSync(__path +'/tmp/hestia.jpeg', data)3586 res.sendFile(__path +'/tmp/hestia.jpeg')3587} else {3588res.json(loghandler.invalidKey)3589}3590})35913592router.get('/wallpaper/inori', async (req, res, next) => {3593 var Apikey = req.query.apikey3594 3595 if(!Apikey) return res.json(loghandler.notparam)3596 if(listkey.includes(Apikey)){35973598 const inori = JSON.parse(fs.readFileSync(__path +'/data/inori.json'));3599 const randinori = inori[Math.floor(Math.random() * inori.length)];3600 data = await fetch(randinori).then(v => v.buffer())3601 await fs.writeFileSync(__path +'/tmp/inori.jpeg', data)3602 res.sendFile(__path +'/tmp/inori.jpeg')3603} else {3604res.json(loghandler.invalidKey)3605}3606})36073608router.get('/wallpaper/ana', async (req, res, next) => {3609 var Apikey = req.query.apikey3610 3611 if(!Apikey) return res.json(loghandler.notparam)3612 if(listkey.includes(Apikey)){36133614 const ana = JSON.parse(fs.readFileSync(__path +'/data/ana.json'));3615 const randana = ana[Math.floor(Math.random() * ana.length)];3616 data = await fetch(randana).then(v => v.buffer())3617 await fs.writeFileSync(__path +'/tmp/ana.jpeg', data)3618 res.sendFile(__path +'/tmp/ana.jpeg')3619} else {3620res.json(loghandler.invalidKey)3621}3622})36233624router.get('/wallpaper/boruto', async (req, res, next) => {3625 var Apikey = req.query.apikey3626 3627 if(!Apikey) return res.json(loghandler.notparam)3628 if(listkey.includes(Apikey)){36293630 const Boruto = JSON.parse(fs.readFileSync(__path +'/data/boruto.json'));3631 const randBoruto = Boruto[Math.floor(Math.random() * Boruto.length)];3632 data = await fetch(randBoruto).then(v => v.buffer())3633 await fs.writeFileSync(__path +'/tmp/bor.jpeg', data)3634 res.sendFile(__path +'/tmp/bor.jpeg')3635} else {3636res.json(loghandler.invalidKey)3637}3638})36393640router.get('/wallpaper/erza', async (req, res, next) => {3641 var Apikey = req.query.apikey3642 3643 if(!Apikey) return res.json(loghandler.notparam)3644 if(listkey.includes(Apikey)){36453646 const Erza = JSON.parse(fs.readFileSync(__path +'/data/erza.json'));3647 const randErza = Erza[Math.floor(Math.random() * Erza.length)];3648 data = await fetch(randErza).then(v => v.buffer())3649 await fs.writeFileSync(__path +'/tmp/erza.jpeg', data)3650 res.sendFile(__path +'/tmp/erza.jpeg')3651} else {3652res.json(loghandler.invalidKey)3653}3654})36553656router.get('/wallpaper/kakasih', async (req, res, next) => {3657 var Apikey = req.query.apikey3658 3659 if(!Apikey) return res.json(loghandler.notparam)3660 if(listkey.includes(Apikey)){36613662 const Kakasih = JSON.parse(fs.readFileSync(__path +'/data/kakasih.json'));3663 const randKakasih = Kakasih[Math.floor(Math.random() * Kakasih.length)];3664 data = await fetch(randKakasih).then(v => v.buffer())3665 await fs.writeFileSync(__path +'/tmp/ka.jpeg', data)3666 res.sendFile(__path +'/tmp/ka.jpeg')3667} else {3668res.json(loghandler.invalidKey)3669}3670})36713672router.get('/wallpaper/sagiri', async (req, res, next) => {3673 var Apikey = req.query.apikey3674 3675 if(!Apikey) return res.json(loghandler.notparam)3676 if(listkey.includes(Apikey)){36773678 const Sagiri = JSON.parse(fs.readFileSync(__path +'/data/sagiri.json'));3679 const randSagiri = Sagiri[Math.floor(Math.random() * Sagiri.length)];3680 data = await fetch(randSagiri).then(v => v.buffer())3681 await fs.writeFileSync(__path +'/tmp/sagiri.jpeg', data)3682 res.sendFile(__path +'/tmp/sagiri.jpeg')3683} else {3684res.json(loghandler.invalidKey)3685}3686})36873688router.get('/wallpaper/minato', async (req, res, next) => {3689 var Apikey = req.query.apikey3690 3691 if(!Apikey) return res.json(loghandler.notparam)3692 if(listkey.includes(Apikey)){36933694 const Minato = JSON.parse(fs.readFileSync(__path +'/data/minato.json'));3695 const randMinato = Minato[Math.floor(Math.random() * Minato.length)];3696 data = await fetch(randMinato).then(v => v.buffer())3697 await fs.writeFileSync(__path +'/tmp/minato.jpeg', data)3698 res.sendFile(__path +'/tmp/minato.jpeg')3699} else {3700res.json(loghandler.invalidKey)3701}3702})37033704router.get('/wallpaper/naruto', async (req, res, next) => {3705 var Apikey = req.query.apikey3706 3707 if(!Apikey) return res.json(loghandler.notparam)3708 if(listkey.includes(Apikey)){37093710 const Naruto = JSON.parse(fs.readFileSync(__path +'/data/naruto.json'));3711 const randNaruto = Naruto[Math.floor(Math.random() * Naruto.length)];3712 data = await fetch(randNaruto).then(v => v.buffer())3713 await fs.writeFileSync(__path +'/tmp/naruto.jpeg', data)3714 res.sendFile(__path +'/tmp/naruto.jpeg')3715} else {3716res.json(loghandler.invalidKey)3717}3718})37193720router.get('/wallpaper/nezuko', async (req, res, next) => {3721 var Apikey = req.query.apikey3722 3723 if(!Apikey) return res.json(loghandler.notparam)3724 if(listkey.includes(Apikey)){37253726 const Nezuko = JSON.parse(fs.readFileSync(__path +'/data/nezuko.json'));3727 const randNezuko = Nezuko[Math.floor(Math.random() * Nezuko.length)];3728 data = await fetch(randNezuko).then(v => v.buffer())3729 await fs.writeFileSync(__path +'/tmp/nezu.jpeg', data)3730 res.sendFile(__path +'/tmp/nezu.jpeg')3731} else {3732res.json(loghandler.invalidKey)3733}3734})37353736router.get('/wallpaper/onepiece', async (req, res, next) => {3737 var Apikey = req.query.apikey3738 3739 if(!Apikey) return res.json(loghandler.notparam)3740 if(listkey.includes(Apikey)){37413742 const Pic = JSON.parse(fs.readFileSync(__path +'/data/onepiece.json'));3743 const randPic = Pic[Math.floor(Math.random() * Pic.length)];3744 data = await fetch(randPic).then(v => v.buffer())3745 await fs.writeFileSync(__path +'/tmp/pic.jpeg', data)3746 res.sendFile(__path +'/tmp/pic.jpeg')3747} else {3748res.json(loghandler.invalidKey)3749}3750})37513752router.get('/wallpaper/rize', async (req, res, next) => {3753 var Apikey = req.query.apikey3754 3755 if(!Apikey) return res.json(loghandler.notparam)3756 if(listkey.includes(Apikey)){37573758 const Rize = JSON.parse(fs.readFileSync(__path +'/data/rize.json'));3759 const randRize = Rize[Math.floor(Math.random() * Rize.length)];3760 data = await fetch(randRize).then(v => v.buffer())3761 await fs.writeFileSync(__path +'/tmp/rize.jpeg', data)3762 res.sendFile(__path +'/tmp/rize.jpeg')3763} else {3764res.json(loghandler.invalidKey)3765}3766})37673768router.get('/wallpaper/sakura', async (req, res, next) => {3769 var Apikey = req.query.apikey3770 3771 if(!Apikey) return res.json(loghandler.notparam)3772 if(listkey.includes(Apikey)){37733774 const Sakura = JSON.parse(fs.readFileSync(__path +'/data/sakura.json'));3775 const randSakura = Sakura[Math.floor(Math.random() * Sakura.length)];3776 data = await fetch(randSakura).then(v => v.buffer())3777 await fs.writeFileSync(__path +'/tmp/sakura.jpeg', data)3778 res.sendFile(__path +'/tmp/sakura.jpeg')3779} else {3780res.json(loghandler.invalidKey)3781}3782})37833784router.get('/wallpaper/sasuke', async (req, res, next) => {3785 var Apikey = req.query.apikey3786 3787 if(!Apikey) return res.json(loghandler.notparam)3788 if(listkey.includes(Apikey)){37893790 const Sasuke = JSON.parse(fs.readFileSync(__path +'/data/sasuke.json'));3791 const randSasuke = Sasuke[Math.floor(Math.random() * Sasuke.length)];3792 data = await fetch(randSasuke).then(v => v.buffer())3793 await fs.writeFileSync(__path +'/tmp/sasuke.jpeg', data)3794 res.sendFile(__path +'/tmp/sasuke.jpeg')3795} else {3796res.json(loghandler.invalidKey)3797}3798})37993800router.get('/wallpaper/tsunade', async (req, res, next) => {3801 var Apikey = req.query.apikey3802 3803 if(!Apikey) return res.json(loghandler.notparam)3804 if(listkey.includes(Apikey)){38053806 const Su = JSON.parse(fs.readFileSync(__path +'/data/tsunade.json'));3807 const randSu = Su[Math.floor(Math.random() * Su.length)];3808 data = await fetch(randSu).then(v => v.buffer())3809 await fs.writeFileSync(__path +'/tmp/su.jpeg', data)3810 res.sendFile(__path +'/tmp/su.jpeg')3811} else {3812res.json(loghandler.invalidKey)3813}3814})38153816router.get('/wallpaper/montor', async (req, res, next) => {3817 var Apikey = req.query.apikey3818 3819 if(!Apikey) return res.json(loghandler.notparam)3820 if(listkey.includes(Apikey)){38213822 const Mon = JSON.parse(fs.readFileSync(__path +'/data/montor.json'));3823 const randMon = Mon[Math.floor(Math.random() * Mon.length)];3824 data = await fetch(randMon).then(v => v.buffer());3825 await fs.writeFileSync(__path +'/tmp/montor.jpeg', data)3826 res.sendFile(__path+ '/tmp/montor.jpeg');3827} else {3828res.json(loghandler.invalidKey)3829}3830})38313832router.get('/wallpaper/mobil', async (req, res, next) => {3833 var Apikey = req.query.apikey3834 3835 if(!Apikey) return res.json(loghandler.notparam)3836 if(listkey.includes(Apikey)){38373838 const Mob = JSON.parse(fs.readFileSync(__path +'/data/mobil.json'));3839 const randMob = Mob[Math.floor(Math.random() * Mob.length)];3840 data = await fetch(randMob).then(v => v.buffer());3841 await fs.writeFileSync(__path +'/tmp/mobil.jpeg', data)3842 res.sendFile(__path+ '/tmp/mobil.jpeg');3843} else {3844res.json(loghandler.invalidKey)3845}3846})38473848router.get('/wallpaper/boneka-chucky', async (req, res, next) => {3849 var Apikey = req.query.apikey3850 3851 if(!Apikey) return res.json(loghandler.notparam)3852 if(listkey.includes(Apikey)){38533854 const Bon = JSON.parse(fs.readFileSync(__path +'/data/boneka.json'));3855 const randBon = Bon[Math.floor(Math.random() * Bon.length)];3856 data = await fetch(randBon).then(v => v.buffer());3857 await fs.writeFileSync(__path +'/tmp/chucky.jpeg', data)3858 res.sendFile(__path+ '/tmp/chucky.jpeg');3859} else {3860res.json(loghandler.invalidKey)3861}3862})38633864router.get('/wallpaper/anime', async (req, res, next) => {3865 var Apikey = req.query.apikey3866 3867 if(!Apikey) return res.json(loghandler.notparam)3868 if(listkey.includes(Apikey)){38693870 const Wai23 = JSON.parse(fs.readFileSync(__path +'/data/wallhp2.json'));3871 const randWai23 = Wai23[Math.floor(Math.random() * Wai23.length)];3872 data = await fetch(randWai23).then(v => v.buffer());3873 await fs.writeFileSync(__path +'/tmp/wallhp2.jpeg', data)3874 res.sendFile(__path+ '/tmp/wallhp2.jpeg');3875} else {3876res.json(loghandler.invalidKey)3877}3878})38793880router.get('/wallpaper/random/blackpink', async (req, res, next) => {3881 var Apikey = req.query.apikey3882 3883 if(!Apikey) return res.json(loghandler.notparam)3884 if(listkey.includes(Apikey)){38853886 Black = JSON.parse(fs.readFileSync(__path +'/data/blackpink.json'));3887 const randBlack = Black[Math.floor(Math.random() * Black.length)]3888 data = await fetch(randBlack).then(v => v.buffer())3889 await fs.writeFileSync(__path +'/tmp/blak.jpeg', data)3890 res.sendFile(__path +'/tmp/blak.jpeg')3891} else {3892res.json(loghandler.invalidKey)3893}3894})38953896router.get('/wallpaper/wallhp', async (req, res, next) => {3897 var Apikey = req.query.apikey3898 3899 if(!Apikey) return res.json(loghandler.notparam)3900 if(listkey.includes(Apikey)){39013902 const Wai22 = JSON.parse(fs.readFileSync(__path +'/data/wallhp.json'));3903 const randWai22 = Wai22[Math.floor(Math.random() * Wai22.length)];3904 data = await fetch(randWai22).then(v => v.buffer());3905 await fs.writeFileSync(__path +'/tmp/wallhp.jpeg', data)3906 res.sendFile(__path+ '/tmp/wallhp.jpeg');3907} else {3908res.json(loghandler.invalidKey)3909}3910})39113912router.get('/wallpaper/waifu2', async (req, res, next) => {3913 var Apikey = req.query.apikey3914 3915 if(!Apikey) return res.json(loghandler.notparam)3916 if(listkey.includes(Apikey)){39173918 const Wai2 = JSON.parse(fs.readFileSync(__path +'/data/waifu2.json'));3919 const randWai2 = Wai2[Math.floor(Math.random() * Wai2.length)];3920 data = await fetch(randWai2).then(v => v.buffer());3921 await fs.writeFileSync(__path +'/tmp/wibu2.jpeg', data)3922 res.sendFile(__path+ '/tmp/wibu2.jpeg');3923} else {3924res.json(loghandler.invalidKey)3925}3926})39273928router.get('/wallpaper/waifu', async (req, res, next) => {3929 var Apikey = req.query.apikey3930 3931 if(!Apikey) return res.json(loghandler.notparam)3932 if(listkey.includes(Apikey)){39333934 const Wai = JSON.parse(fs.readFileSync(__path +'/data/waifu.json'));3935 const randWai = Wai[Math.floor(Math.random() * Wai.length)];3936 data = await fetch(randWai).then(v => v.buffer());3937 await fs.writeFileSync(__path +'/tmp/wibu.jpeg', data)3938 res.sendFile(__path+ '/tmp/wibu.jpeg');3939} else {3940res.json(loghandler.invalidKey)3941}3942})39433944router.get('/wallpaper/kpop', async (req, res, next) => {3945 var Apikey = req.query.apikey3946 3947 if(!Apikey) return res.json(loghandler.notparam)3948 if(listkey.includes(Apikey)){39493950 Kpop = JSON.parse(fs.readFileSync(__path +'/data/kpop.json'));3951 const randKpop = Kpop[Math.floor(Math.random() * Kpop.length)]3952 data = await fetch(randKpop).then(v => v.buffer())3953 await fs.writeFileSync(__path +'/tmp/kpop.jpeg', data)3954 res.sendFile(__path +'/tmp/kpop.jpeg')3955} else {3956res.json(loghandler.invalidKey)3957}3958})39593960router.get('/wallpaper/hekel', async (req, res, next) => {3961 var Apikey = req.query.apikey3962 3963 if(!Apikey) return res.json(loghandler.notparam)3964 if(listkey.includes(Apikey)){39653966 Hekel = JSON.parse(fs.readFileSync(__path +'/data/hekel.json'));3967 const randHekel = Hekel[Math.floor(Math.random() * Hekel.length)]3968 data = await fetch(randHekel).then(v => v.buffer())3969 await fs.writeFileSync(__path +'/tmp/hek.jpeg', data)3970 res.sendFile(__path +'/tmp/hek.jpeg')3971} else {3972res.json(loghandler.invalidKey)3973}3974})39753976router.get('/wallpaper/kucing', async (req, res, next) => {3977 var Apikey = req.query.apikey3978 3979 if(!Apikey) return res.json(loghandler.notparam)3980 if(listkey.includes(Apikey)){39813982 Kucing = JSON.parse(fs.readFileSync(__path +'/data/kucing.json'));3983 const randKucing = Kucing[Math.floor(Math.random() * Kucing.length)]3984 data = await fetch(randKucing).then(v => v.buffer())3985 await fs.writeFileSync(__path +'/tmp/kucing.jpeg', data)3986 res.sendFile(__path +'/tmp/kucing.jpeg')3987} else {3988res.json(loghandler.invalidKey)3989}3990})39913992router.get('/wallpaper/pubg', async (req, res, next) => {3993 var Apikey = req.query.apikey3994 3995 if(!Apikey) return res.json(loghandler.notparam)3996 if(listkey.includes(Apikey)){39973998 Pubg = JSON.parse(fs.readFileSync(__path +'/data/pubg.json'));3999 const randPubg = Pubg[Math.floor(Math.random() * Pubg.length)]4000 data = await fetch(randPubg).then(v => v.buffer())4001 await fs.writeFileSync(__path +'/tmp/pubg.jpeg', data)4002 res.sendFile(__path +'/tmp/pubg.jpeg')4003} else {4004res.json(loghandler.invalidKey)4005}4006})40074008router.get('/wallpaper/ppcouple', async (req, res, next) => {4009 var Apikey = req.query.apikey4010 4011 if(!Apikey) return res.json(loghandler.notparam)4012 if(listkey.includes(Apikey)){40134014 Pp = JSON.parse(fs.readFileSync(__path +'/data/profil.json'));4015 const randPp = Pp[Math.floor(Math.random() * Pp.length)]4016 data = await fetch(randPp).then(v => v.buffer())4017 await fs.writeFileSync(__path +'/tmp/pp.jpeg', data)4018 res.sendFile(__path +'/tmp/pp.jpeg')4019} else {4020res.json(loghandler.invalidKey)4021}4022})40234024router.get('/wallpaper/anjing', async (req, res, next) => {4025 var Apikey = req.query.apikey4026 4027 if(!Apikey) return res.json(loghandler.notparam)4028 if(listkey.includes(Apikey)){40294030 Anjing = JSON.parse(fs.readFileSync(__path +'/data/anjing.json'));4031 const randAnjing = Anjing[Math.floor(Math.random() * Anjing.length)]4032 data = await fetch(randAnjing).then(v => v.buffer())4033 await fs.writeFileSync(__path +'/tmp/ajg.jpeg', data)4034 res.sendFile(__path +'/tmp/ajg.jpeg')4035} else {4036res.json(loghandler.invalidKey)4037}4038})40394040router.get('/wallpaper/doraemon', async (req, res, next) => {4041 var Apikey = req.query.apikey4042 4043 if(!Apikey) return res.json(loghandler.notparam)4044 if(listkey.includes(Apikey)){40454046 Dora = JSON.parse(fs.readFileSync(__path +'/data/doraemon.json'));4047 const randDora = Dora[Math.floor(Math.random() * Dora.length)]4048 data = await fetch(randDora).then(v => v.buffer())4049 await fs.writeFileSync(__path +'/tmp/dora.jpeg', data)4050 res.sendFile(__path +'/tmp/dora.jpeg')4051} else {4052res.json(loghandler.invalidKey)4053}4054})40554056router.get('/wallpaper/cogan', async (req, res, next) => {4057 var Apikey = req.query.apikey4058 4059 if(!Apikey) return res.json(loghandler.notparam)4060 if(listkey.includes(Apikey)){40614062 Cogan = JSON.parse(fs.readFileSync(__path +'/data/cogan.json'));4063 const randCogan = Cogan[Math.floor(Math.random() * Cogan.length)]4064 data = await fetch(randCogan).then(v => v.buffer())4065 await fs.writeFileSync(__path +'/tmp/cogan.jpeg', data)4066 res.sendFile(__path +'/tmp/cogan.jpeg')4067} else {4068res.json(loghandler.invalidKey)4069}4070})407140724073router.get('/wallpaper/elaina', async (req, res, next) => {4074 const Apikey = req.query.apikey;4075 if(!Apikey) return res.json(loghandler.notparam)4076 if(listkey.includes(Apikey)){40774078const Elaina = JSON.parse(fs.readFileSync(__path +'/data/elaina.json'))4079const randElaina = Elaina[Math.floor(Math.random() * Elaina.length)]4080//tansole.log(randLoli)4081data = await fetch(randElaina).then(v => v.buffer())4082await fs.writeFileSync(__path +'/tmp/elaina.jpeg', data)4083res.sendFile(__path +'/tmp/elaina.jpeg')4084} else {4085res.json(loghandler.invalidKey)4086}4087})408840894090router.get('/wallpaper/loli', async (req, res, next) => {4091 const Apikey = req.query.apikey;4092 if(!Apikey) return res.json(loghandler.notparam)4093 if(listkey.includes(Apikey)){40944095const Loli = JSON.parse(fs.readFileSync(__path +'/data/loli.json'))4096const randLoli = Loli[Math.floor(Math.random() * Loli.length)]4097//tansole.log(randLoli)4098data = await fetch(randLoli).then(v => v.buffer())4099await fs.writeFileSync(__path +'/tmp/loli.jpeg', data)4100res.sendFile(__path +'/tmp/loli.jpeg')4101} else {4102res.json(loghandler.invalidKey)4103}4104})410541064107router.get('/wallpaper/yuri', async (req, res, next) => {4108 const Apikey = req.query.apikey;4109 if(!Apikey) return res.json(loghandler.notparam)4110 if(listkey.includes(Apikey)){41114112const Yuri = JSON.parse(fs.readFileSync(__path +'/data/yuri.json'))4113const randYuri = Yuri[Math.floor(Math.random() * Yuri.length)]4114//tansole.log(randTech)4115data = await fetch(randYuri).then(v => v.buffer())4116await fs.writeFileSync(__path +'/tmp/Yuri.jpeg', data)4117res.sendFile(__path +'/tmp/Yuri.jpeg')4118} else {4119res.json(loghandler.invalidKey)4120}4121})412241234124router.get('/wallpaper/cecan', async (req, res, next) => {4125 var Apikey = req.query.apikey4126 4127 if(!Apikey) return res.json(loghandler.notparam)4128 if(listkey.includes(Apikey)){41294130 const cecan = JSON.parse(fs.readFileSync(__path +'/data/cecan.json'));4131 const randCecan = cecan[Math.floor(Math.random() * cecan.length)];4132 data = await fetch(randCecan).then(v => v.buffer());4133 await fs.writeFileSync(__path +'/tmp/cecan.jpeg', data)4134 res.sendFile(__path +'/tmp/cecan.jpeg');4135} else {4136res.json(loghandler.invalidKey)4137}4138})413941404141router.get('/wallpaper/aesthetic', async (req, res, next) => {4142 var Apikey = req.query.apikey4143 4144 if(!Apikey) return res.json(loghandler.notparam)4145 if(listkey.includes(Apikey)){41464147 const Aesthetic = JSON.parse(fs.readFileSync(__path +'/data/aesthetic.json'));4148 const randAesthetic = Aesthetic[Math.floor(Math.random() * Aesthetic.length)];4149 data = await fetch(randAesthetic).then(v => v.buffer());4150 await fs.writeFileSync(__path +'/tmp/aesthetic.jpeg', data)4151 res.sendFile(__path +'/tmp/aesthetic.jpeg');4152} else {4153res.json(loghandler.invalidKey)4154}4155})415641574158router.get('/wallpaper/justina', async (req, res, next) => {4159 var Apikey = req.query.apikey4160 4161 if(!Apikey) return res.json(loghandler.notparam)4162 if(listkey.includes(Apikey)){41634164 const Justina = JSON.parse(fs.readFileSync(__path +'/data/justina.json'));4165 const randJus = Justina[Math.floor(Math.random() * Justina.length)];4166 data = await fetch(randJus).then(v => v.buffer())4167 await fs.writeFileSync(__path +'/tmp/justina.jpeg', data)4168 res.sendFile(__path +'/tmp/justina.jpeg')4169} else {4170res.json(loghandler.invalidKey)4171}4172})417341744175router.get('/wallpaper/sagiri', async (req, res, next) => {4176 var Apikey = req.query.apikey4177 4178 if(!Apikey) return res.json(loghandler.notparam)4179 if(listkey.includes(Apikey)){41804181 const Sagiri = JSON.parse(fs.readFileSync(__path +'/data/sagiri.json'));4182 const randSagiri = Sagiri[Math.floor(Math.random() * Sagiri.length)];4183 data = await fetch(randSagiri).then(v => v.buffer())4184 await fs.writeFileSync(__path +'/tmp/sagiri.jpeg', data)4185 res.sendFile(__path +'/tmp/sagiri.jpeg')4186} else {4187res.json(loghandler.invalidKey)4188}4189})41904191router.get('/wallpaper/shota', async (req, res, next) => {4192 var Apikey = req.query.apikey4193 4194 if(!Apikey) return res.json(loghandler.notparam)4195 if(listkey.includes(Apikey)){41964197 const Shota = JSON.parse(fs.readFileSync(__path +'/data/shota.json'));4198 const randShota = Shota[Math.floor(Math.random() * Shota.length)];4199 data = await fetch(randShota).then(v => v.buffer());4200 await fs.writeFileSync(__path +'/tmp/shota.jpeg', data)4201 res.sendFile(__path+ '/tmp/shota.jpeg');4202} else {4203res.json(loghandler.invalidKey)4204}4205})42064207router.get('/wallpaper/nsfwloli', async (req, res, next) => {4208 var Apikey = req.query.apikey4209 4210 if(!Apikey) return res.json(loghandler.notparam)4211 if(listkey.includes(Apikey)){42124213 const Lol = JSON.parse(fs.readFileSync(__path +'/data/nsfwloli.json'));4214 const randLol = Lol[Math.floor(Math.random() * Lol.length)];4215 data = await fetch(randLol).then(v => v.buffer());4216 await fs.writeFileSync(__path +'/tmp/lol.jpeg', data)4217 res.sendFile(__path+ '/tmp/lol.jpeg');4218} else {4219res.json(loghandler.invalidKey)4220}4221})42224223router.get('/wallpaper/hinata', async (req, res, next) => {4224 var Apikey = req.query.apikey4225 4226 if(!Apikey) return res.json(loghandler.notparam)4227 if(listkey.includes(Apikey)){42284229 const Hinata = JSON.parse(fs.readFileSync(__path +'/data/hinata.json'));4230 const randHin = Hinata[Math.floor(Math.random() * Hinata.length)];4231 data = await fetch(randHin).then(v => v.buffer());4232 await fs.writeFileSync(__path +'/tmp/Hinata.jpeg', data)4233 res.sendFile(__path+ '/tmp/Hinata.jpeg');4234} else {4235res.json(loghandler.invalidKey)4236}4237})423842394240router.get('/random/quotes2', async (req, res, next) => {4241 var Apikey = req.query.apikey4242 4243 if(!Apikey) return res.json(loghandler.notparam)4244 if(listkey.includes(Apikey)){42454246 fetch(encodeURI(`https://kocakz.herokuapp.com/api/random/text/quotes`))4247 .then(response => response.json())4248 .then(data => {4249 var result = data;4250 res.json({4251 result4252 })4253 })4254 .catch(e => {4255 res.json(loghandler.error)4256})4257} else {4258res.json(loghandler.invalidKey)4259}4260})42614262router.get('/fun/simisimi-ar2', async (req, res, next) => {4263 var Apikey = req.query.apikey4264 text = req.query.text4265 4266 if(!Apikey) return res.json(loghandler.notparam)4267 if(listkey.includes(Apikey)){4268 if(!text) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter text"})42694270 fetch(encodeURI(`https://simsumi.herokuapp.com/api?text=${text}&lang=ar`))4271 .then(response => response.json())4272 .then(data => {4273 var result = data;4274 res.json({4275 status : true,4276 creator : `${creator}`,4277 result4278 })4279 })4280 .catch(e => {4281 res.json(loghandler.error)4282})4283} else {4284res.json(loghandler.invalidKey)4285}4286})42874288router.get('/fun/simisimi-en2', async (req, res, next) => {4289 var Apikey = req.query.apikey4290 text = req.query.text4291 4292 if(!Apikey) return res.json(loghandler.notparam)4293 if(listkey.includes(Apikey)){4294 if(!text) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter text"})42954296 fetch(encodeURI(`https://simsumi.herokuapp.com/api?text=${text}&lang=eng`))4297 .then(response => response.json())4298 .then(data => {4299 var result = data;4300 res.json({4301 status : true,4302 creator : `${creator}`,4303 result4304 })4305 })4306 .catch(e => {4307 res.json(loghandler.error)4308})4309} else {4310res.json(loghandler.invalidKey)4311}4312})43134314router.get('/fun/simisimi-jp2', async (req, res, next) => {4315 var Apikey = req.query.apikey4316 text = req.query.text4317 4318 if(!Apikey) return res.json(loghandler.notparam)4319 if(listkey.includes(Apikey)){4320 if(!text) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter text"})43214322 fetch(encodeURI(`https://simsumi.herokuapp.com/api?text=${text}&lang=jp`))4323 .then(response => response.json())4324 .then(data => {4325 var result = data;4326 res.json({4327 status : true,4328 creator : `${creator}`,4329 result4330 })4331 })4332 .catch(e => {4333 res.json(loghandler.error)4334})4335} else {4336res.json(loghandler.invalidKey)4337}4338})43394340router.get('/fun/simisimi-ind2', async (req, res, next) => {4341 var Apikey = req.query.apikey4342 text = req.query.text4343 4344 if(!Apikey) return res.json(loghandler.notparam)4345 if(listkey.includes(Apikey)){4346 if(!text) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter text"})43474348 fetch(encodeURI(`https://api.simsimi.net/v2/?text=${text}&lc=id`))4349 .then(response => response.json())4350 .then(data => {4351 var result = data;4352 res.json({4353 status : true,4354 creator : `${creator}`,4355 result4356 })4357 })4358 .catch(e => {4359 res.json(loghandler.error)4360})4361} else {4362res.json(loghandler.invalidKey)4363}4364})43654366router.get('/fun/simisimi4', async (req, res, next) => {4367 var Apikey = req.query.apikey4368 text = req.query.text4369 4370 if(!Apikey) return res.json(loghandler.notparam)4371 if(listkey.includes(Apikey)){4372 if(!text) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter text"})43734374 fetch(encodeURI(`https://api.simsimi.net/v2/?text=${text}&lc=ar`))4375 .then(response => response.json())4376 .then(data => {4377 var result = data;4378 res.json({4379 status : true,4380 creator : `${creator}`,4381 result4382 })4383 })4384 .catch(e => {4385 res.json(loghandler.error)4386})4387} else {4388res.json(loghandler.invalidKey)4389}4390})43914392router.get('/fun/simisimi3', async (req, res, next) => {4393 var Apikey = req.query.apikey4394 text = req.query.text4395 4396 if(!Apikey) return res.json(loghandler.notparam)4397 if(listkey.includes(Apikey)){4398 if(!text) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter text"})43994400 fetch(encodeURI(`https://api.simsimi.net/v2/?text=${text}&lc=ph`))4401 .then(response => response.json())4402 .then(data => {4403 var result = data;4404 res.json({4405 status : true,4406 creator : `${creator}`,4407 result4408 })4409 })4410 .catch(e => {4411 res.json(loghandler.error)4412})4413} else {4414res.json(loghandler.invalidKey)4415}4416})44174418router.get('/fun/simisimi2', async (req, res, next) => {4419 var Apikey = req.query.apikey4420 text = req.query.text4421 4422 if(!Apikey) return res.json(loghandler.notparam)4423 if(listkey.includes(Apikey)){4424 if(!text) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter text"})44254426 fetch(encodeURI(`https://api.simsimi.net/v2/?text=${text}&lc=en`))4427 .then(response => response.json())4428 .then(data => {4429 var result = data;4430 res.json({4431 status : true,4432 creator : `${creator}`,4433 result4434 })4435 })4436 .catch(e => {4437 res.json(loghandler.error)4438})4439} else {4440res.json(loghandler.invalidKey)4441}4442})44434444router.get('/fun/simisimi', async (req, res, next) => {4445 var Apikey = req.query.apikey4446 text = req.query.text4447 4448 if(!Apikey) return res.json(loghandler.notparam)4449 if(listkey.includes(Apikey)){4450 if(!text) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter text"})44514452 fetch(encodeURI(`https://simsumi.herokuapp.com/api?text=${text}&lang=id`))4453 .then(response => response.json())4454 .then(data => {4455 var result = data;4456 res.json({4457 status : true,4458 creator : `${creator}`,4459 result4460 })4461 })4462 .catch(e => {4463 res.json(loghandler.error)4464})4465} else {4466res.json(loghandler.invalidKey)4467}4468})44694470router.get('/random/asmaulhusna', async (req, res, next) => {4471 var Apikey = req.query.apikey4472 4473 if(!Apikey) return res.json(loghandler.notparam)4474 if(listkey.includes(Apikey)){44754476 fetch(encodeURI(`https://python-api-zhirrr.herokuapp.com/api/random/asmaulhusna`))4477 .then(response => response.json())4478 .then(data => {4479 var result = data;4480 res.json({4481 result4482 })4483 })4484 .catch(e => {4485 res.json(loghandler.error)4486})4487} else {4488res.json(loghandler.invalidKey)4489}4490})44914492router.get('/info/wikipedia', async (req, res, next) => {4493 var Apikey = req.query.apikey,4494 search = req.query.search4495 4496 if(!Apikey) return res.json(loghandler.notparam)4497 if(listkey.includes(Apikey)){4498 if(!search) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter search"})44994500 fetch(encodeURI(`https://docs-api-zahirrr.herokuapp.com/api/wiki?keyword=${search}`))4501 .then(response => response.json())4502 .then(data => {4503 var result = data;4504 res.json({4505 result4506 })4507 })4508 .catch(e => {4509 res.json(loghandler.error)4510})4511} else {4512res.json(loghandler.invalidKey)4513}4514})451545164517router.get('/info/drakorasia', async (req, res, next) => {4518 var Apikey = req.query.apikey,4519 search = req.query.search4520 4521 if(!Apikey) return res.json(loghandler.notparam)4522 if(listkey.includes(Apikey)){4523 if(!search) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter search"})45244525 fetch(encodeURI(`http://docs-api-zahirrr.herokuapp.com/api/drakorasia?search=${search}`))4526 .then(response => response.json())4527 .then(data => {4528 var result = data;4529 res.json({4530 result4531 })4532 })4533 .catch(e => {4534 res.json(loghandler.error)4535})4536} else {4537res.json(loghandler.invalidKey)4538}4539})45404541router.get('/fakedata', async (req, res, next) => {4542 var Apikey = req.query.apikey,4543 country = req.query.country4544 4545 if(!Apikey) return res.json(loghandler.notparam)4546 if(listkey.includes(Apikey)){4547 if(!country) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter country"})45484549 fetch(encodeURI(`https://fakename-api-zhirrr.vercel.app/api/fakename?country=${country}`))4550 .then(response => response.json())4551 .then(data => {4552 var result = data;4553 res.json({4554 result4555 })4556 })4557 .catch(e => {4558 res.json(loghandler.error)4559})4560} else {4561res.json(loghandler.invalidKey)4562}4563})456445654566router.get('/hilih', async (req, res, next) => {4567 var Apikey = req.query.apikey,4568 kata = req.query.kata4569 4570 if(!Apikey) return res.json(loghandler.notparam)4571 if(listkey.includes(Apikey)){4572 if(!kata) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter kata"})45734574 fetch(encodeURI(`https://hilih-api-zhirrr.vercel.app/api/hilih?kata=${kata}`))4575 .then(response => response.json())4576 .then(data => {4577 var result = data;4578 res.json({4579 result4580 })4581 })4582 .catch(e => {4583 res.json(loghandler.error)4584})4585} else {4586res.json(loghandler.invalidKey)4587}4588})458945904591router.get('/music/liriklagu', async (req, res, next) => {4592 var Apikey = req.query.apikey,4593 lagu = req.query.query;4594 4595 if(!Apikey) return res.json(loghandler.notparam)4596 if(listkey.includes(Apikey)){4597 if(!lagu) return res.json(loghandler.notquery)4598 Lirik(lagu)4599 .then((lirik) => {4600 res.json({4601 status: true,4602 code: 200,4603 creator: `${creator}`,4604 result: lirik.data4605 })4606 });4607} else {4608res.json(loghandler.invalidKey)4609}4610})461146124613router.get('/music/chordlagu', async (req, res, next) => {4614 var Apikey = req.query.apikey,4615 lagu = req.query.lagu4616 4617 if(!Apikey) return res.json(loghandler.notparam)4618 if(listkey.includes(Apikey)){4619 if(!lagu) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter kata"})46204621 fetch(encodeURI(`https://python-api-zhirrr.herokuapp.com/api/chord?q=${lagu}`))4622 .then(response => response.json())4623 .then(data => {4624 var result = data;4625 res.json({4626 result4627 })4628 })4629 .catch(e => {4630 res.json(loghandler.error)4631})4632} else {4633res.json(loghandler.invalidKey)4634}4635})463646374638router.get('/info/kbbi', async (req, res, next) => {4639 var Apikey = req.query.apikey,4640 kata = req.query.kata4641 4642 if(!Apikey) return res.json(loghandler.notparam)4643 if(listkey.includes(Apikey)){4644 if(!kata) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter kata"})46454646 fetch(encodeURI(`https://kbbi-api-zhirrr.vercel.app/api/kbbi?text=${kata}`))4647 .then(response => response.json())4648 .then(data => {4649 var result = data;4650 res.json({4651 result4652 })4653 })4654 .catch(e => {4655 res.json(loghandler.error)4656})4657} else {4658res.json(loghandler.invalidKey)4659}4660})466146624663router.get('/info/covidindo', async (req, res, next) => {4664 var Apikey = req.query.apikey4665 4666 if(!Apikey) return res.json(loghandler.notparam)4667 if(listkey.includes(Apikey)){46684669 fetch(encodeURI(`https://covid19-api-zhirrr.vercel.app/api/covid-indonesia`))4670 .then(response => response.json())4671 .then(data => {4672 var result = data;4673 res.json({4674 result4675 })4676 })4677 .catch(e => {4678 res.json(loghandler.error)4679})4680} else {4681res.json(loghandler.invalidKey)4682}4683})468446854686router.get('/info/covidworld', async (req, res, next) => {4687 var Apikey = req.query.apikey4688 4689 if(!Apikey) return res.json(loghandler.notparam)4690 if(listkey.includes(Apikey)){46914692 fetch(encodeURI(`https://covid19-api-zhirrr.vercel.app/api/world`))4693 .then(response => response.json())4694 .then(data => {4695 var result = data;4696 res.json({4697 result4698 })4699 })4700 .catch(e => {4701 res.json(loghandler.error)4702})4703} else {4704res.json(loghandler.invalidKey)4705}4706})47074708router.get('/random/meme', async (req, res, next) => {4709 var Apikey = req.query.apikey4710 4711 if(!Apikey) return res.json(loghandler.notparam)4712 if(listkey.includes(Apikey)){47134714 fetch(encodeURI(`https://docs-api-zahirrr.herokuapp.com/api/meme`))4715 .then(response => response.json())4716 .then(data => {4717 var result = data;4718 res.json({4719 result4720 })4721 })4722 .catch(e => {4723 res.json(loghandler.error)4724})4725} else {4726res.json(loghandler.invalidKey)4727}4728})472947304731router.get('/info/kodepos', async (req, res, next) => {4732 var Apikey = req.query.apikey,4733 kota = req.query.kota4734 4735 if(!Apikey) return res.json(loghandler.notparam)4736 if(listkey.includes(Apikey)){4737 if(!kota) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter kota"})47384739 fetch(encodeURI(`https://kodepos-api-zhirrr.vercel.app/?q=${kota}`))4740 .then(response => response.json())4741 .then(data => {4742 var result = data;4743 res.json({4744 result4745 })4746 })4747 .catch(e => {4748 res.json(loghandler.error)4749})4750} else {4751res.json(loghandler.invalidKey)4752}4753})475447554756router.get('/translate', async (req, res, next) => {4757 var Apikey = req.query.apikey,4758 kata = req.query.kata4759 4760 if(!Apikey) return res.json(loghandler.notparam)4761 if(listkey.includes(Apikey)){4762 if(!kata) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter kata"})4763 fetch(encodeURI(`https://docs-api-zahirrr.herokuapp.com/api/translate?text=${kata}`))4764 .then(response => response.json())4765 .then(data => {4766 var result = data;4767 res.json({4768 result4769 })4770 })4771 .catch(e => {4772 res.json(loghandler.error)4773})4774} else {4775res.json(loghandler.invalidKey)4776}4777})477847794780router.get('/anime/kusonime', async (req, res, next) => {4781 var Apikey = req.query.apikey,4782 search = req.query.search4783 4784 if(!Apikey) return res.json(loghandler.notparam)4785 if(listkey.includes(Apikey)){4786 if(!search) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter search"})4787 fetch(encodeURI(`https://docs-api-zahirrr.herokuapp.com/api/kusonime?search=${search}`))4788 .then(response => response.json())4789 .then(data => {4790 var result = data;4791 res.json({4792 result4793 })4794 })4795 .catch(e => {4796 res.json(loghandler.error)4797})4798} else {4799res.json(loghandler.invalidKey)4800}4801})48024803router.get('/anime/loli', async(req, res, next) => {4804 var apikey = req.query.apikey4805 if (!apikey) return res.json(loghandler.notparam)4806 if(listkey.includes(apikey)){4807 try {4808 var options = {4809 url: "http://results.dogpile.com/serp?qc=images&q= " + "Loli",4810 method: "GET",4811 headers: {4812 "Accept": "text/html",4813 "User-Agent": "Chrome"4814 }4815 }4816 request(options, function(error, response, responseBody) {4817 if (error) return48184819 $ = cheerio.load(responseBody)4820 var links = $(".image a.link")4821 var cari = new Array(links.length).fill(0).map((v, i) => links.eq(i).attr("href"))4822 if (!cari.length) return4823 var hasil = cari[Math.floor(Math.random() * cari.length)]4824 res.json({4825 status: true,4826 code: 200,4827 creator: `${creator}`,4828 result: hasil4829 })4830 })4831 } catch (e) {}4832 } else {4833 res.json(loghandler.invalidKey)4834 }4835});483648374838router.get('/anime/manga', async (req, res, next) => {4839 var Apikey = req.query.apikey,4840 search = req.query.search4841 4842 if(!Apikey) return res.json(loghandler.notparam)4843 if(listkey.includes(Apikey)){4844 if(!search) return res.json({ status : false, creator : `${creator}`, message : "masukan parameter search"})4845 fetch(encodeURI(`https://docs-api-zahirrr.herokuapp.com/api/manga?keyword=${search}`))4846 .then(response => response.json())4847 .then(data => {4848 var result = data;4849 res.json({4850 result4851 })4852 })4853 .catch(e => {4854 res.json(loghandler.error)4855})4856} else {4857res.json(loghandler.invalidKey)4858}4859})486048614862router.get('/kuis/caklontong', async (req, res, next) => {4863 var Apikey = req.query.apikey4864 if(!Apikey) return res.json(loghandler.notparam)4865 if(listkey.includes(Apikey)){4866 fetch(encodeURI(`https://docs-api-zahirrr.herokuapp.com/api/quote?type=caklontong`))4867 .then(response => response.json())4868 .then(data => {4869 var result = data;4870 res.json({4871 result4872 })4873 })4874 .catch(e => {4875 res.json(loghandler.error)4876})4877} else {4878res.json(loghandler.invalidKey)4879}4880})488148824883router.get('/kuis/tebakGambar', async (req, res, next) => {4884 var apikey = req.query.apikey;4885 4886 if(!apikey) return res.json(loghandler.notparam)4887 if(listkey.includes(apikey)){4888 let result = await tebakGambar()4889 if (result) {4890 const hasil = {4891 status: true,4892 code: 200,4893 creator: `${creator}`,4894 image: result.img,4895 jawaban: result.jawaban,4896 clue: result.petunjuk4897 }4898 res.json(hasil)4899 } else {4900 return res.status(408).json({4901 status: res.statusCode,4902 error: 'Emror'4903 })4904 }4905 } else {4906 res.json(loghandler.invalidKey)4907 }4908})49094910/**4911* @Maker4912**/4913491449154916router.get("/photooxy/shadow", async(req, res, next) => {4917 const text1 = req.query.text;4918 const apikey = req.query.apikey;4919 if(!text1) return res.json(loghandler.nottext1)4920 if(!apikey) return res.json(loghandler.notparam)4921 if(listkey.includes(apikey)){4922 pShadow(text1)4923 .then((data) => {4924 const result = {4925 status: true,4926 code: 200,4927 creator: `${creator}`,4928 result: data.url4929 }4930 res.json(result)4931 })4932 .catch((error) => {4933 res.json(error)4934 });4935 } else {4936 res.json(loghandler.invalidKey)4937 }4938});49394940router.get("/photooxy/romantic", async(req, res, next) => {4941 const text1 = req.query.text;4942 const apikey = req.query.apikey;4943 if(!text1) return res.json(loghandler.nottext1)4944 if(!apikey) return res.json(loghandler.notparam)4945 if(listkey.includes(apikey)){4946 pRomantic(text1)4947 .then((data) => {4948 const result = {4949 status: true,4950 code: 200,4951 creator: `${creator}`,4952 result: data.url4953 }4954 res.json(result)4955 })4956 .catch((error) => {4957 res.json(error)4958 });4959 } else {4960 res.json(loghandler.invalidKey)4961 }4962});49634964// @PHOTOOXY49654966router.get("/photooxy/smoke", async(req, res, next) => {4967 const text1 = req.query.text;4968 const apikey = req.query.apikey;4969 if(!text1) return res.json(loghandler.nottext1)4970 if(!apikey) return res.json(loghandler.notparam)4971 if(listkey.includes(apikey)){4972 pSmoke(text1)4973 .then((data) => {4974 const result = {4975 status: true,4976 code: 200,4977 creator: `${creator}`,4978 result: data.url4979 }4980 res.json(result)4981 })4982 .catch((error) => {4983 res.json(error)4984 });4985 } else {4986 res.json(loghandler.invalidKey)4987 }4988});49894990router.get("/photooxy/burn-papper", async(req, res, next) => {4991 const text1 = req.query.text;4992 const apikey = req.query.apikey;4993 if(!text1) return res.json(loghandler.nottext1)4994 if(!apikey) return res.json(loghandler.notparam)4995 if(listkey.includes(apikey)){4996 pBurnPapper(text1)4997 .then((data) => {4998 const result = {4999 status: true,5000 code: 200,5001 creator: `${creator}`,5002 result: data.url5003 }5004 res.json(result)5005 })5006 .catch((error) => {5007 res.json(error)5008 });5009 } else {5010 res.json(loghandler.invalidKey)5011 }5012});50135014router.get("/photooxy/naruto", async(req, res, next) => {5015 const text1 = req.query.text;5016 const apikey = req.query.apikey;5017 if(!text1) return res.json(loghandler.nottext1)5018 if(!apikey) return res.json(loghandler.notparam)5019 if(listkey.includes(apikey)){5020 pNaruto(text1)5021 .then((data) => {5022 const result = {5023 status: true,5024 code: 200,5025 creator: `${creator}`,5026 result: data.url5027 }5028 res.json(result)5029 })5030 .catch((error) => {5031 res.json(error)5032 });5033 } else {5034 res.json(loghandler.invalidKey)5035 }5036});50375038router.get("/photooxy/love-message", async(req, res, next) => {5039 const text1 = req.query.text;5040 const apikey = req.query.apikey;5041 if(!text1) return res.json(loghandler.nottext1)5042 if(!apikey) return res.json(loghandler.notparam)5043 if(listkey.includes(apikey)){5044 pLoveMsg(text1)5045 .then((data) => {5046 const result = {5047 status: true,5048 code: 200,5049 creator: `${creator}`,5050 result: data.url5051 }5052 res.json(result)5053 })5054 .catch((error) => {5055 res.json(error)5056 });5057 } else {5058 res.json(loghandler.invalidKey)5059 }5060});50615062router.get("/photooxy/message-under-grass", async(req, res, next) => {5063 const text1 = req.query.text;5064 const apikey = req.query.apikey;5065 if(!text1) return res.json(loghandler.nottext1)5066 if(!apikey) return res.json(loghandler.notparam)5067 if(listkey.includes(apikey)){5068 pMsgGrass(text1)5069 .then((data) => {5070 const result = {5071 status: true,5072 code: 200,5073 creator: `${creator}`,5074 result: data.url5075 }5076 res.json(result)5077 })5078 .catch((error) => {5079 res.json(error)5080 });5081 } else {5082 res.json(loghandler.invalidKey)5083 }5084});50855086router.get("/photooxy/glitch", async(req, res, next) => {5087 const text1 = req.query.text1;5088 const text2 = req.query.text2;5089 const apikey = req.query.apikey;5090 if(!text1) return res.json(loghandler.nottext1)5091 if(!text2) return res.json(loghandler.nottext2)5092 if(!apikey) return res.json(loghandler.notparam)5093 if(listkey.includes(apikey)){5094 pGlitch(text1, text2)5095 .then((data) => {5096 const result = {5097 status: true,5098 code: 200,5099 creator: `${creator}`,5100 result: data.url5101 }5102 res.json(result)5103 })5104 .catch((error) => {5105 res.json(error)5106 });5107 } else {5108 res.json(loghandler.invalidKey)5109 }5110});51115112router.get("/photooxy/double-heart", async(req, res, next) => {5113 const text1 = req.query.text;5114 const apikey = req.query.apikey;5115 if(!text1) return res.json(loghandler.nottext1)5116 if(!apikey) return res.json(loghandler.notparam)5117 if(listkey.includes(apikey)){5118 pDoubleHeart(text1)5119 .then((data) => {5120 const result = {5121 status: true,5122 code: 200,5123 creator: `${creator}`,5124 result: data.url5125 }5126 res.json(result)5127 })5128 .catch((error) => {5129 res.json(error)5130 });5131 } else {5132 res.json(loghandler.invalidKey)5133 }5134});51355136router.get("/photooxy/coffe-cup", async(req, res, next) => {5137 const text1 = req.query.text;5138 const apikey = req.query.apikey;5139 if(!text1) return res.json(loghandler.nottext1)5140 if(!apikey) return res.json(loghandler.notparam)5141 if(listkey.includes(apikey)){5142 pCoffeCup(text1)5143 .then((data) => {5144 const result = {5145 status: true,5146 code: 200,5147 creator: `${creator}`,5148 result: data.url5149 }5150 res.json(result)5151 })5152 .catch((error) => {5153 res.json(error)5154 });5155 } else {5156 res.json(loghandler.invalidKey)5157 }5158});51595160router.get("/photooxy/love-text", async(req, res, next) => {5161 const text1 = req.query.text;5162 const apikey = req.query.apikey;5163 if(!text1) return res.json(loghandler.nottext1)5164 if(!apikey) return res.json(loghandler.notparam)5165 if(listkey.includes(apikey)){5166 pLoveText(text1)5167 .then((data) => {5168 const result = {5169 status: true,5170 code: 200,5171 creator: `${creator}`,5172 result: data.url5173 }5174 res.json(result)5175 })5176 .catch((error) => {5177 res.json(error)5178 });5179 } else {5180 res.json(loghandler.invalidKey)5181 }5182});51835184router.get("/photooxy/butterfly", async(req, res, next) => {5185 const text1 = req.query.text;5186 const apikey = req.query.apikey;5187 if(!text1) return res.json(loghandler.nottext1)5188 if(!apikey) return res.json(loghandler.notparam)5189 if(listkey.includes(apikey)){5190 pButterfly(text1)5191 .then((data) => {5192 const result = {5193 status: true,5194 code: 200,5195 creator: `${creator}`,5196 result: data.url5197 }5198 res.json(result)5199 })5200 .catch((error) => {5201 res.json(loghandler.error)5202 })5203 } else {5204 res.json(loghandler.invalidKey)5205 }5206});52075208/*5209@ AKHIR PHOTOOXY5210*/5211/*5212@ TEXTPROME5213*/5214router.get('/photooxy/army', async(req, res, next) => {52155216 const apikey = req.query.apikey;52175218 const text = req.query.text;5219 5220 if(!apikey) return res.json(loghandler.notparam)5221 if(!text) return res.json(loghandler.nottext)5222 5223 if(listkey.includes(apikey)){5224 zrapi 5225 .textpro("https://photooxy.com/logo-and-text-effects/army-camouflage-fabric-text-effect-221.html", [5226 text,5227 ])5228 .then((data) => {5229 res.json({5230 status: true,5231 code: 200,5232 creator: `${creator}`,5233 result: data5234 })5235 })5236 .catch((err) => console.log(err));5237 } else {5238 res.json(loghandler.invalidKey)5239 }5240});52415242router.get('/textpro/logo-wolf', async(req, res, next) => {5243 const apikey = req.query.apikey;5244 const text = req.query.text;5245 const text2 = req.query.text2;5246 5247 if(!apikey) return res.json(loghandler.notparam)5248 if(!text) return res.json(loghandler.nottext)5249 if(!text2) return res.json(loghandler.nottext2)5250 5251 if(listkey.includes(apikey)){5252 zrapi 5253 .textpro("https://textpro.me/create-wolf-logo-black-white-937.html", [5254 text, text25255 ])5256 .then((data) => {5257 res.json({5258 status: true,5259 code: 200,5260 creator: `${creator}`,5261 result: data5262 })5263 })5264 .catch((err) => console.log(err));5265 } else {5266 res.json(loghandler.invalidKey)5267 }5268});52695270router.get('/textpro/natural-leaves', async(req, res, next) => {52715272 const apikey = req.query.apikey;52735274 const text = req.query.text;5275 5276 if(!apikey) return res.json(loghandler.notparam)5277 if(!text) return res.json(loghandler.nottext)5278 5279 if(listkey.includes(apikey)){5280 zrapi 5281 .textpro("https://textpro.me/natural-leaves-text-effect-931.html", [5282 text,5283 ])5284 .then((data) => {5285 res.json({5286 status: true,5287 code: 200,5288 creator: `${creator}`,5289 result: data5290 })5291 })5292 .catch((err) => console.log(err));5293 } else {5294 res.json(loghandler.invalidKey)5295 }5296});52975298router.get('/textpro/logo-wolf2', async(req, res, next) => {52995300 const apikey = req.query.apikey;53015302 const text = req.query.text;5303 const text2 = req.query.text2;5304 5305 if(!apikey) return res.json(loghandler.notparam)5306 if(!text) return res.json(loghandler.nottext)5307 if(!text2) return res.json(loghandler.nottext2)5308 5309 if(listkey.includes(apikey)){5310 zrapi 5311 .textpro("https://textpro.me/create-wolf-logo-galaxy-online-936.html", [5312 text, text25313 ])5314 .then((data) => {5315 res.json({5316 status: true,5317 code: 200,5318 creator: `${creator}`,5319 result: data5320 })5321 })5322 .catch((err) => console.log(err));5323 } else {5324 res.json(loghandler.invalidKey)5325 }5326});53275328router.get('/textpro/harry-potter', async(req, res, next) => {53295330 const apikey = req.query.apikey;53315332 const text = req.query.text;5333 5334 if(!apikey) return res.json(loghandler.notparam)5335 if(!text) return res.json(loghandler.nottext)5336 5337 if(listkey.includes(apikey)){5338 zrapi 5339 .textpro("https://textpro.me/create-harry-potter-text-effect-online-1025.html", [5340 text, 5341 ])5342 .then((data) => {5343 res.json({5344 status: true,5345 code: 200,5346 creator: `${creator}`,5347 result: data5348 })5349 })5350 .catch((err) => console.log(err));5351 } else {5352 res.json(loghandler.invalidKey)5353 }5354});53555356router.get('/textpro/magma', async(req, res, next) => {53575358 const apikey = req.query.apikey;53595360 const text = req.query.text;5361 5362 if(!apikey) return res.json(loghandler.notparam)5363 if(!text) return res.json(loghandler.nottext)5364 5365 if(listkey.includes(apikey)){5366 zrapi 5367 .textpro("https://textpro.me/create-a-magma-hot-text-effect-online-1030.html", [5368 text, 5369 ])5370 .then((data) => {5371 res.json({5372 status: true,5373 code: 200,5374 creator: `${creator}`,5375 result: data5376 })5377 })5378 .catch((err) => console.log(err));5379 } else {5380 res.json(loghandler.invalidKey)5381 }5382});53835384router.get('/textpro/hallowen-text', async(req, res, next) => {53855386 const apikey = req.query.apikey;53875388 const text = req.query.text;5389 5390 if(!apikey) return res.json(loghandler.notparam)5391 if(!text) return res.json(loghandler.nottext)5392 5393 if(listkey.includes(apikey)){5394 zrapi 5395 .textpro("https://textpro.me/halloween-fire-text-effect-940.html", [5396 text, 5397 ])5398 .then((data) => {5399 res.json({5400 status: true,5401 code: 200,5402 creator: `${creator}`,5403 result: data5404 })5405 })5406 .catch((err) => console.log(err));5407 } else {5408 res.json(loghandler.invalidKey)5409 }5410});54115412router.get('/textpro/neon-light', async(req, res, next) => {54135414 const apikey = req.query.apikey;54155416 const text = req.query.text;5417 5418 if(!apikey) return res.json(loghandler.notparam)5419 if(!text) return res.json(loghandler.nottext)5420 5421 if(listkey.includes(apikey)){5422 zrapi 5423 .textpro("https://textpro.me/create-3d-neon-light-text-effect-online-1028.html", [5424 text, 5425 ])5426 .then((data) => {5427 res.json({5428 status: true,5429 code: 200,5430 creator: `${creator}`,5431 result: data5432 })5433 })5434 .catch((err) => console.log(err));5435 } else {5436 res.json(loghandler.invalidKey)5437 }5438});54395440router.get('/textpro/broken-glass', async(req, res, next) => {54415442 const apikey = req.query.apikey;54435444 const text = req.query.text;5445 5446 if(!apikey) return res.json(loghandler.notparam)5447 if(!text) return res.json(loghandler.nottext)5448 5449 if(listkey.includes(apikey)){5450 zrapi 5451 .textpro("https://textpro.me/broken-glass-text-effect-free-online-1023.html", [5452 text, 5453 ])5454 .then((data) => {5455 res.json({5456 status: true,5457 code: 200,5458 creator: `${creator}`,5459 result: data5460 })5461 })5462 .catch((err) => console.log(err));5463 } else {5464 res.json(loghandler.invalidKey)5465 }5466});54675468router.get('/textpro/art-papper', async(req, res, next) => {54695470 const apikey = req.query.apikey;54715472 const text = req.query.text;5473 5474 if(!apikey) return res.json(loghandler.notparam)5475 if(!text) return res.json(loghandler.nottext)5476 5477 if(listkey.includes(apikey)){5478 zrapi 5479 .textpro("https://textpro.me/create-art-paper-cut-text-effect-online-1022.html", [5480 text,5481 ])5482 .then((data) => {5483 res.json({5484 status: true,5485 code: 200,5486 creator: `${creator}`,5487 result: data5488 })5489 })5490 .catch((err) => console.log(err));5491 } else {5492 res.json(loghandler.invalidKey)5493 }5494});54955496router.get('/textpro/glossy', async(req, res, next) => {54975498 const apikey = req.query.apikey;54995500 const text = req.query.text;5501 5502 if(!apikey) return res.json(loghandler.notparam)5503 if(!text) return res.json(loghandler.nottext)5504 5505 if(listkey.includes(apikey)){5506 zrapi 5507 .textpro("https://textpro.me/create-a-3d-glossy-metal-text-effect-1019.html", [5508 text,5509 ])5510 .then((data) => {5511 res.json({5512 status: true,5513 code: 200,5514 creator: `${creator}`,5515 result: data5516 })5517 })5518 .catch((err) => console.log(err));5519 } else {5520 res.json(loghandler.invalidKey)5521 }5522});55235524router.get('/textpro/water-color', async(req, res, next) => {55255526 const apikey = req.query.apikey;55275528 const text = req.query.text;5529 5530 if(!apikey) return res.json(loghandler.notparam)5531 if(!text) return res.json(loghandler.nottext)5532 5533 if(listkey.includes(apikey)){5534 zrapi 5535 .textpro("https://textpro.me/create-a-free-online-watercolor-text-effect-1017.html", [5536 text, 5537 ])5538 .then((data) => {5539 res.json({5540 status: true,5541 code: 200,5542 creator: `${creator}`,5543 result: data5544 })5545 })5546 .catch((err) => console.log(err));5547 } else {5548 res.json(loghandler.invalidKey)5549 }5550});55515552router.get('/textpro/multi-color', async(req, res, next) => {55535554 const apikey = req.query.apikey;55555556 const text = req.query.text;5557 5558 if(!apikey) return res.json(loghandler.notparam)5559 if(!text) return res.json(loghandler.nottext)5560 5561 if(listkey.includes(apikey)){5562 zrapi 5563 .textpro("https://textpro.me/online-multicolor-3d-paper-cut-text-effect-1016.html", [5564 text,5565 ])5566 .then((data) => {5567 res.json({5568 status: true,5569 code: 200,5570 creator: `${creator}`,5571 result: data5572 })5573 })5574 .catch((err) => console.log(err));5575 } else {5576 res.json(loghandler.invalidKey)5577 }5578});55795580router.get('/textpro/neon-devil', async(req, res, next) => {55815582 const apikey = req.query.apikey;55835584 const text = req.query.text;5585 5586 if(!apikey) return res.json(loghandler.notparam)5587 if(!text) return res.json(loghandler.nottext)5588 5589 if(listkey.includes(apikey)){5590 zrapi 5591 .textpro("https://textpro.me/create-neon-devil-wings-text-effect-online-free-1014.html", [5592 text,5593 ])5594 .then((data) => {5595 res.json({5596 status: true,5597 code: 200,5598 creator: `${creator}`,5599 result: data5600 })5601 })5602 .catch((err) => console.log(err));5603 } else {5604 res.json(loghandler.invalidKey)5605 }5606});56075608router.get('/textpro/sky-text', async(req, res, next) => {56095610 const apikey = req.query.apikey;56115612 const text = req.query.text;5613 5614 if(!apikey) return res.json(loghandler.notparam)5615 if(!text) return res.json(loghandler.nottext)5616 5617 if(listkey.includes(apikey)){5618 zrapi 5619 .textpro("https://textpro.me/create-a-cloud-text-effect-on-the-sky-online-1004.html", [5620 text,5621 ])5622 .then((data) => {5623 res.json({5624 status: true,5625 code: 200,5626 creator: `${creator}`,5627 result: data5628 })5629 })5630 .catch((err) => console.log(err));5631 } else {5632 res.json(loghandler.invalidKey)5633 }5634});56355636router.get('/textpro/luxury', async(req, res, next) => {56375638 const apikey = req.query.apikey;56395640 const text = req.query.text;5641 5642 if(!apikey) return res.json(loghandler.notparam)5643 if(!text) return res.json(loghandler.nottext)5644 5645 if(listkey.includes(apikey)){5646 zrapi 5647 .textpro("https://textpro.me/3d-luxury-gold-text-effect-online-1003.html", [5648 text,5649 ])5650 .then((data) => {5651 res.json({5652 status: true,5653 code: 200,5654 creator: `${creator}`,5655 result: data5656 })5657 })5658 .catch((err) => console.log(err));5659 } else {5660 res.json(loghandler.invalidKey)5661 }5662});56635664router.get('/textpro/vintage', async(req, res, next) => {56655666 const apikey = req.query.apikey;56675668 const text = req.query.text;5669 const text2 = req.query.text2;5670 5671 if(!apikey) return res.json(loghandler.notparam)5672 if(!text) return res.json(loghandler.nottext)5673 if(!text2) return res.json(loghandler.nottext2)5674 5675 if(listkey.includes(apikey)){5676 zrapi 5677 .textpro("https://textpro.me/create-realistic-vintage-style-light-bulb-1000.html", [5678 text, text25679 ])5680 .then((data) => {5681 res.json({5682 status: true,5683 code: 200,5684 creator: `${creator}`,5685 result: data5686 })5687 })5688 .catch((err) => console.log(err));5689 } else {5690 res.json(loghandler.invalidKey)5691 }5692});56935694router.get('/textpro/writing', async(req, res, next) => {56955696 const apikey = req.query.apikey;56975698 const text = req.query.text;5699 5700 if(!apikey) return res.json(loghandler.notparam)5701 if(!text) return res.json(loghandler.nottext)5702 5703 if(listkey.includes(apikey)){5704 zrapi 5705 .textpro("https://textpro.me/sand-writing-text-effect-online-990.html", [5706 text,5707 ])5708 .then((data) => {5709 res.json({5710 status: true,5711 code: 200,5712 creator: `${creator}`,5713 result: data5714 })5715 })5716 .catch((err) => console.log(err));5717 } else {5718 res.json(loghandler.invalidKey)5719 }5720});57215722router.get('/textpro/engraved', async(req, res, next) => {57235724 const apikey = req.query.apikey;57255726 const text = req.query.text;5727 5728 if(!apikey) return res.json(loghandler.notparam)5729 if(!text) return res.json(loghandler.nottext)5730 5731 if(listkey.includes(apikey)){5732 zrapi 5733 .textpro("https://textpro.me/sand-engraved-3d-text-effect-989.html", [5734 text,5735 ])5736 .then((data) => {5737 res.json({5738 status: true,5739 code: 200,5740 creator: `${creator}`,5741 result: data5742 })5743 })5744 .catch((err) => console.log(err));5745 } else {5746 res.json(loghandler.invalidKey)5747 }5748});57495750router.get('/textpro/glue-text', async(req, res, next) => {57515752 const apikey = req.query.apikey;57535754 const text = req.query.text;5755 5756 if(!apikey) return res.json(loghandler.notparam)5757 if(!text) return res.json(loghandler.nottext)5758 5759 if(listkey.includes(apikey)){5760 zrapi 5761 .textpro("https://textpro.me/create-3d-glue-text-effect-with-realistic-style-986.html", [5762 text,5763 ])5764 .then((data) => {5765 res.json({5766 status: true,5767 code: 200,5768 creator: `${creator}`,5769 result: data5770 })5771 })5772 .catch((err) => console.log(err));5773 } else {5774 res.json(loghandler.invalidKey)5775 }5776});57775778router.get('/textpro/minios', async(req, res, next) => {57795780 const apikey = req.query.apikey;57815782 const text = req.query.text;5783 5784 if(!apikey) return res.json(loghandler.notparam)5785 if(!text) return res.json(loghandler.nottext)5786 5787 if(listkey.includes(apikey)){5788 zrapi 5789 .textpro("https://textpro.me/minion-text-effect-3d-online-978.html", [5790 text,5791 ])5792 .then((data) => {5793 res.json({5794 status: true,5795 code: 200,5796 creator: `${creator}`,5797 result: data5798 })5799 })5800 .catch((err) => console.log(err));5801 } else {5802 res.json(loghandler.invalidKey)5803 }5804});58055806router.get('/textpro/pornhub', async(req, res, next) => {58075808 const apikey = req.query.apikey;58095810 const text = req.query.text;5811 const text2 = req.query.text2;5812 5813 if(!apikey) return res.json(loghandler.notparam)5814 if(!text) return res.json(loghandler.nottext)5815 if(!text2) return res.json(loghandler.nottext2)5816 5817 if(listkey.includes(apikey)){5818 zrapi 5819 .textpro("https://textpro.me/pornhub-style-logo-online-generator-free-977.html", [5820 text, text25821 ])5822 .then((data) => {5823 res.json({5824 status: true,5825 code: 200,5826 creator: `${creator}`,5827 result: data5828 })5829 })5830 .catch((err) => console.log(err));5831 } else {5832 res.json(loghandler.invalidKey)5833 }5834});58355836router.get('/textpro/holograpic', async(req, res, next) => {58375838 const apikey = req.query.apikey;58395840 const text = req.query.text;5841 5842 if(!apikey) return res.json(loghandler.notparam)5843 if(!text) return res.json(loghandler.nottext)5844 5845 if(listkey.includes(apikey)){5846 zrapi 5847 .textpro("https://textpro.me/holographic-3d-text-effect-975.html", [5848 text,5849 ])5850 .then((data) => {5851 res.json({5852 status: true,5853 code: 200,5854 creator: `${creator}`,5855 result: data5856 })5857 })5858 .catch((err) => console.log(err));5859 } else {5860 res.json(loghandler.invalidKey)5861 }5862});58635864router.get('/textpro/deluxe-silver', async(req, res, next) => {58655866 const apikey = req.query.apikey;58675868 const text = req.query.text;5869 5870 if(!apikey) return res.json(loghandler.notparam)5871 if(!text) return res.json(loghandler.nottext)5872 5873 if(listkey.includes(apikey)){5874 zrapi 5875 .textpro("https://textpro.me/deluxe-silver-text-effect-970.html", [5876 text,5877 ])5878 .then((data) => {5879 res.json({5880 status: true,5881 code: 200,5882 creator: `${creator}`,5883 result: data5884 })5885 })5886 .catch((err) => console.log(err));5887 } else {5888 res.json(loghandler.invalidKey)5889 }5890});58915892router.get('/textpro/fabric', async(req, res, next) => {58935894 const apikey = req.query.apikey;58955896 const text = req.query.text;5897 5898 if(!apikey) return res.json(loghandler.notparam)5899 if(!text) return res.json(loghandler.nottext)5900 5901 if(listkey.includes(apikey)){5902 zrapi 5903 .textpro("https://textpro.me/fabric-text-effect-online-964.html", [5904 text,5905 ])5906 .then((data) => {5907 res.json({5908 status: true,5909 code: 200,5910 creator: `${creator}`,5911 result: data5912 })5913 })5914 .catch((err) => console.log(err));5915 } else {5916 res.json(loghandler.invalidKey)5917 }5918});59195920router.get('/textpro/wicker', async(req, res, next) => {59215922 const apikey = req.query.apikey;59235924 const text = req.query.text;5925 5926 if(!apikey) return res.json(loghandler.notparam)5927 if(!text) return res.json(loghandler.nottext)5928 5929 if(listkey.includes(apikey)){5930 zrapi 5931 .textpro("https://textpro.me/wicker-text-effect-online-932.html", [5932 text,5933 ])5934 .then((data) => {5935 res.json({5936 status: true,5937 code: 200,5938 creator: `${creator}`,5939 result: data5940 })5941 })5942 .catch((err) => console.log(err));5943 } else {5944 res.json(loghandler.invalidKey)5945 }5946});59475948router.get('/textpro/larva', async(req, res, next) => {59495950 const apikey = req.query.apikey;59515952 const text = req.query.text;5953 5954 if(!apikey) return res.json(loghandler.notparam)5955 if(!text) return res.json(loghandler.nottext)5956 5957 if(listkey.includes(apikey)){5958 zrapi 5959 .textpro("https://textpro.me/lava-text-effect-online-914.html", [5960 text,5961 ])5962 .then((data) => {5963 res.json({5964 status: true,5965 code: 200,5966 creator: `${creator}`,5967 result: data5968 })5969 })5970 .catch((err) => console.log(err));5971 } else {5972 res.json(loghandler.invalidKey)5973 }5974});59755976router.get('/textpro/toxic-bokeh', async(req, res, next) => {59775978 const apikey = req.query.apikey;59795980 const text = req.query.text;5981 5982 if(!apikey) return res.json(loghandler.notparam)5983 if(!text) return res.json(loghandler.nottext)5984 5985 if(listkey.includes(apikey)){5986 zrapi 5987 .textpro("https://textpro.me/toxic-text-effect-online-901.html", [5988 text,5989 ])5990 .then((data) => {5991 res.json({5992 status: true,5993 code: 200,5994 creator: `${creator}`,5995 result: data5996 })5997 })5998 .catch((err) => console.log(err));5999 } else {6000 res.json(loghandler.invalidKey)6001 }6002});60036004router.get('/textpro/stroberi', async(req, res, next) => {60056006 const apikey = req.query.apikey;60076008 const text = req.query.text;6009 6010 if(!apikey) return res.json(loghandler.notparam)6011 if(!text) return res.json(loghandler.nottext)6012 6013 if(listkey.includes(apikey)){6014 zrapi 6015 .textpro("https://textpro.me/strawberry-text-effect-online-889.html", [6016 text,6017 ])6018 .then((data) => {6019 res.json({6020 status: true,6021 code: 200,6022 creator: `${creator}`,6023 result: data6024 })6025 })6026 .catch((err) => console.log(err));6027 } else {6028 res.json(loghandler.invalidKey)6029 }6030});60316032router.get('/textpro/koi', async(req, res, next) => {60336034 const apikey = req.query.apikey;60356036 const text = req.query.text;6037 6038 if(!apikey) return res.json(loghandler.notparam)6039 if(!text) return res.json(loghandler.nottext)6040 6041 if(listkey.includes(apikey)){6042 zrapi 6043 .textpro("https://textpro.me/koi-fish-text-effect-online-888.html", [6044 text,6045 ])6046 .then((data) => {6047 res.json({6048 status: true,6049 code: 200,6050 creator: `${creator}`,6051 result: data6052 })6053 })6054 .catch((err) => console.log(err));6055 } else {6056 res.json(loghandler.invalidKey)6057 }6058});60596060router.get('/textpro/bread', async(req, res, next) => {60616062 const apikey = req.query.apikey;60636064 const text = req.query.text;6065 6066 if(!apikey) return res.json(loghandler.notparam)6067 if(!text) return res.json(loghandler.nottext)6068 6069 if(listkey.includes(apikey)){6070 zrapi 6071 .textpro("https://textpro.me/bread-text-effect-online-887.html", [6072 text,6073 ])6074 .then((data) => {6075 res.json({6076 status: true,6077 code: 200,6078 creator: `${creator}`,6079 result: data6080 })6081 })6082 .catch((err) => console.log(err));6083 } else {6084 res.json(loghandler.invalidKey)6085 }6086});60876088router.get('/textpro/horor-blood', async(req, res, next) => {60896090 const apikey = req.query.apikey;60916092 const text = req.query.text;6093 6094 if(!apikey) return res.json(loghandler.notparam)6095 if(!text) return res.json(loghandler.nottext)6096 6097 if(listkey.includes(apikey)){6098 zrapi 6099 .textpro("https://textpro.me/horror-blood-text-effect-online-883.html", [6100 text,6101 ])6102 .then((data) => {6103 res.json({6104 status: true,6105 code: 200,6106 creator: `${creator}`,6107 result: data6108 })6109 })6110 .catch((err) => console.log(err));6111 } else {6112 res.json(loghandler.invalidKey)6113 }6114});61156116router.get('/textpro/honey', async(req, res, next) => {61176118 const apikey = req.query.apikey;61196120 const text = req.query.text;6121 6122 if(!apikey) return res.json(loghandler.notparam)6123 if(!text) return res.json(loghandler.nottext)6124 6125 if(listkey.includes(apikey)){6126 zrapi 6127 .textpro("https://textpro.me/honey-text-effect-868.html", [6128 text,6129 ])6130 .then((data) => {6131 res.json({6132 status: true,6133 code: 200,6134 creator: `${creator}`,6135 result: data6136 })6137 })6138 .catch((err) => console.log(err));6139 } else {6140 res.json(loghandler.invalidKey)6141 }6142});61436144router.get('/textpro/ice', async(req, res, next) => {61456146 const apikey = req.query.apikey;61476148 const text = req.query.text;6149 6150 if(!apikey) return res.json(loghandler.notparam)6151 if(!text) return res.json(loghandler.nottext)6152 6153 if(listkey.includes(apikey)){6154 zrapi 6155 .textpro("https://textpro.me/ice-cold-text-effect-862.html", [6156 text,6157 ])6158 .then((data) => {6159 res.json({6160 status: true,6161 code: 200,6162 creator: `${creator}`,6163 result: data6164 })6165 })6166 .catch((err) => console.log(err));6167 } else {6168 res.json(loghandler.invalidKey)6169 }6170});61716172router.get('/textpro/rusty', async(req, res, next) => {61736174 const apikey = req.query.apikey;61756176 const text = req.query.text;6177 6178 if(!apikey) return res.json(loghandler.notparam)6179 if(!text) return res.json(loghandler.nottext)6180 6181 if(listkey.includes(apikey)){6182 zrapi 6183 .textpro("https://textpro.me/rusty-metal-text-effect-860.html", [6184 text,6185 ])6186 .then((data) => {6187 res.json({6188 status: true,6189 code: 200,6190 creator: `${creator}`,6191 result: data6192 })6193 })6194 .catch((err) => console.log(err));6195 } else {6196 res.json(loghandler.invalidKey)6197 }6198});61996200router.get('/textpro/3dstone', async(req, res, next) => {62016202 const apikey = req.query.apikey;62036204 const text = req.query.text;6205 6206 if(!apikey) return res.json(loghandler.notparam)6207 if(!text) return res.json(loghandler.nottext)6208 6209 if(listkey.includes(apikey)){6210 zrapi 6211 .textpro("https://textpro.me/3d-stone-cracked-cool-text-effect-1029.html", [6212 text, 6213 ])6214 .then((data) => {6215 res.json({6216 status: true,6217 code: 200,6218 creator: `${creator}`,6219 result: data6220 })6221 })6222 .catch((err) => console.log(err));6223 } else {6224 res.json(loghandler.invalidKey)6225 }6226});62276228router.get('/textpro/1917', async(req, res, next) => {62296230 const apikey = req.query.apikey;62316232 const text = req.query.text;6233 6234 if(!apikey) return res.json(loghandler.notparam)6235 if(!text) return res.json(loghandler.nottext)6236 6237 if(listkey.includes(apikey)){6238 zrapi 6239 .textpro("https://textpro.me/1917-style-text-effect-online-980.html", [6240 text, 6241 ])6242 .then((data) => {6243 res.json({6244 status: true,6245 code: 200,6246 creator: `${creator}`,6247 result: data6248 })6249 })6250 .catch((err) => console.log(err));6251 } else {6252 res.json(loghandler.invalidKey)6253 }6254});62556256router.get('/textpro/thunder2', async(req, res, next) => {62576258 const apikey = req.query.apikey;62596260 const text = req.query.text;6261 6262 if(!apikey) return res.json(loghandler.notparam)6263 if(!text) return res.json(loghandler.nottext)6264 6265 if(listkey.includes(apikey)){6266 zrapi 6267 .textpro("https://textpro.me/online-thunder-text-effect-generator-1031.html", [6268 text, 6269 ])6270 .then((data) => {6271 res.json({6272 status: true,6273 code: 200,6274 creator: `${creator}`,6275 result: data6276 })6277 })6278 .catch((err) => console.log(err));6279 } else {6280 res.json(loghandler.invalidKey)6281 }6282});62836284router.get('/textpro/space', async(req, res, next) => {62856286 const apikey = req.query.apikey;62876288 const text = req.query.text;6289 const text2 = req.query.text2;6290 6291 if(!apikey) return res.json(loghandler.notparam)6292 if(!text) return res.json(loghandler.nottext)6293 if(!text2) return res.json(loghandler.nottext2)6294 6295 if(listkey.includes(apikey)){6296 zrapi 6297 .textpro("https://textpro.me/create-space-3d-text-effect-online-985.html", [6298 text, text26299 ])6300 .then((data) => {6301 res.json({6302 status: true,6303 code: 200,6304 creator: `${creator}`,6305 result: data6306 })6307 })6308 .catch((err) => console.log(err));6309 } else {6310 res.json(loghandler.invalidKey)6311 }6312});63136314router.get('/textpro/joker-logo', async(req, res, next) => {63156316 const apikey = req.query.apikey;63176318 const text = req.query.text;6319 6320 if(!apikey) return res.json(loghandler.notparam)6321 if(!text) return res.json(loghandler.nottext)6322 6323 if(listkey.includes(apikey)){6324 zrapi 6325 .textpro("https://textpro.me/create-logo-joker-online-934.html", [6326 text, 6327 ])6328 .then((data) => {6329 res.json({6330 status: true,6331 code: 200,6332 creator: `${creator}`,6333 result: data6334 })6335 })6336 .catch((err) => console.log(err));6337 } else {6338 res.json(loghandler.invalidKey)6339 }6340});63416342router.get('/textpro/hallowen', async(req, res, next) => {63436344 const apikey = req.query.apikey;63456346 const text = req.query.text;6347 6348 if(!apikey) return res.json(loghandler.notparam)6349 if(!text) return res.json(loghandler.nottext)6350 6351 if(listkey.includes(apikey)){6352 zrapi 6353 .textpro("https://textpro.me/halloween-fire-text-effect-940.html", [6354 text, 6355 ])6356 .then((data) => {6357 res.json({6358 status: true,6359 code: 200,6360 creator: `${creator}`,6361 result: data6362 })6363 })6364 .catch((err) => console.log(err));6365 } else {6366 res.json(loghandler.invalidKey)6367 }6368});63696370router.get('/textpro/blood', async(req, res, next) => {63716372 const apikey = req.query.apikey;63736374 const text = req.query.text;6375 6376 if(!apikey) return res.json(loghandler.notparam)6377 if(!text) return res.json(loghandler.nottext)6378 6379 if(listkey.includes(apikey)){6380 zrapi 6381 .textpro("https://textpro.me/blood-text-on-the-frosted-glass-941.html", [6382 text, 6383 ])6384 .then((data) => {6385 res.json({6386 status: true,6387 code: 200,6388 creator: `${creator}`,6389 result: data6390 })6391 })6392 .catch((err) => console.log(err));6393 } else {6394 res.json(loghandler.invalidKey)6395 }6396});63976398router.get('/textpro/thunder2', async(req, res, next) => {63996400 const apikey = req.query.apikey;64016402 const text = req.query.text;6403 6404 if(!apikey) return res.json(loghandler.notparam)6405 if(!text) return res.json(loghandler.nottext)6406 6407 if(listkey.includes(apikey)){6408 zrapi 6409 .textpro("https://textpro.me/online-thunder-text-effect-generator-1031.html", [6410 text, 6411 ])6412 .then((data) => {6413 res.json({6414 status: true,6415 code: 200,6416 creator: `${creator}`,6417 result: data6418 })6419 })6420 .catch((err) => console.log(err));6421 } else {6422 res.json(loghandler.invalidKey)6423 }6424});64256426router.get('/textpro/astone', async(req, res, next) => {64276428 const apikey = req.query.apikey;64296430 const text = req.query.text;6431 const text2 = req.query.text2;6432 6433 if(!apikey) return res.json(loghandler.notparam)6434 if(!text) return res.json(loghandler.nottext)6435 if(!text2) return res.json(loghandler.nottext2)6436 6437 if(listkey.includes(apikey)){6438 zrapi 6439 .textpro("https://textpro.me/create-a-stone-text-effect-online-982.html", [6440 text, text26441 ])6442 .then((data) => {6443 res.json({6444 status: true,6445 code: 200,6446 creator: `${creator}`,6447 result: data6448 })6449 })6450 .catch((err) => console.log(err));6451 } else {6452 res.json(loghandler.invalidKey)6453 }6454});64556456router.get('/textpro/grafity-text', async(req, res, next) => {64576458 const apikey = req.query.apikey;64596460 const text = req.query.text;6461 6462 if(!apikey) return res.json(loghandler.notparam)6463 if(!text) return res.json(loghandler.nottext)6464 6465 if(listkey.includes(apikey)){6466 zrapi 6467 .textpro("https://textpro.me/create-wonderful-graffiti-art-text-effect-1011.html", [6468 text,6469 ])6470 .then((data) => {6471 res.json({6472 status: true,6473 code: 200,6474 creator: `${creator}`,6475 result: data6476 })6477 })6478 .catch((err) => console.log(err));6479 } else {6480 res.json(loghandler.invalidKey)6481 }6482});64836484router.get('/textpro/grafity-text2', async(req, res, next) => {64856486 const apikey = req.query.apikey;64876488 const text = req.query.text;6489 const text2 = req.query.text2;6490 6491 if(!apikey) return res.json(loghandler.notparam)6492 if(!text) return res.json(loghandler.nottext)6493 if(!text2) return res.json(loghandler.nottext2)6494 6495 if(listkey.includes(apikey)){6496 zrapi 6497 .textpro("https://textpro.me/create-a-cool-graffiti-text-on-the-wall-1010.html", [6498 text, text26499 ])6500 .then((data) => {6501 res.json({6502 status: true,6503 code: 200,6504 creator: `${creator}`,6505 result: data6506 })6507 })6508 .catch((err) => console.log(err));6509 } else {6510 res.json(loghandler.invalidKey)6511 }6512});65136514router.get('/textpro/ninja-logo', async(req, res, next) => {65156516 const apikey = req.query.apikey;65176518 const text = req.query.text;6519 const text2 = req.query.text2;6520 6521 if(!apikey) return res.json(loghandler.notparam)6522 if(!text) return res.json(loghandler.nottext)6523 if(!text2) return res.json(loghandler.nottext2)6524 6525 if(listkey.includes(apikey)){6526 zrapi 6527 .textpro("https://textpro.me/create-ninja-logo-online-935.html", [6528 text, text26529 ])6530 .then((data) => {6531 res.json({6532 status: true,6533 code: 200,6534 creator: `${creator}`,6535 result: data6536 })6537 })6538 .catch((err) => console.log(err));6539 } else {6540 res.json(loghandler.invalidKey)6541 }6542});65436544router.get('/textpro/lion-logo', async(req, res, next) => {65456546 const apikey = req.query.apikey;65476548 const text = req.query.text;6549 const text2 = req.query.text2;6550 6551 if(!apikey) return res.json(loghandler.notparam)6552 if(!text) return res.json(loghandler.nottext)6553 if(!text2) return res.json(loghandler.nottext2)6554 6555 if(listkey.includes(apikey)){6556 zrapi 6557 .textpro("https://textpro.me/create-lion-logo-mascot-online-938.html", [6558 text, text26559 ])6560 .then((data) => {6561 res.json({6562 status: true,6563 code: 200,6564 creator: `${creator}`,6565 result: data6566 })6567 })6568 .catch((err) => console.log(err));6569 } else {6570 res.json(loghandler.invalidKey)6571 }6572});65736574router.get('/textpro/avengers-logo', async(req, res, next) => {65756576 const apikey = req.query.apikey;65776578 const text = req.query.text;6579 const text2 = req.query.text2;6580 6581 if(!apikey) return res.json(loghandler.notparam)6582 if(!text) return res.json(loghandler.nottext)6583 if(!text2) return res.json(loghandler.nottext2)6584 6585 if(listkey.includes(apikey)){6586 zrapi 6587 .textpro("https://textpro.me/create-3d-avengers-logo-online-974.html", [6588 text, text26589 ])6590 .then((data) => {6591 res.json({6592 status: true,6593 code: 200,6594 creator: `${creator}`,6595 result: data6596 })6597 })6598 .catch((err) => console.log(err));6599 } else {6600 res.json(loghandler.invalidKey)6601 }6602});66036604router.get('/textpro/marvel-logo2', async(req, res, next) => {66056606 const apikey = req.query.apikey;66076608 const text = req.query.text;6609 const text2 = req.query.text2;6610 6611 if(!apikey) return res.json(loghandler.notparam)6612 if(!text) return res.json(loghandler.nottext)6613 if(!text2) return res.json(loghandler.nottext2)6614 6615 if(listkey.includes(apikey)){6616 zrapi 6617 .textpro("https://textpro.me/create-logo-style-marvel-studios-online-971.html", [6618 text, text26619 ])6620 .then((data) => {6621 res.json({6622 status: true,6623 code: 200,6624 creator: `${creator}`,6625 result: data6626 })6627 })6628 .catch((err) => console.log(err));6629 } else {6630 res.json(loghandler.invalidKey)6631 }6632});66336634router.get('/textpro/marvel-logo', async(req, res, next) => {66356636 const apikey = req.query.apikey;66376638 const text = req.query.text;6639 const text2 = req.query.text2;6640 6641 if(!apikey) return res.json(loghandler.notparam)6642 if(!text) return res.json(loghandler.nottext)6643 if(!text2) return res.json(loghandler.nottext2)6644 6645 if(listkey.includes(apikey)){6646 zrapi 6647 .textpro("https://textpro.me/create-logo-style-marvel-studios-ver-metal-972.html", [6648 text, text26649 ])6650 .then((data) => {6651 res.json({6652 status: true,6653 code: 200,6654 creator: `${creator}`,6655 result: data6656 })6657 })6658 .catch((err) => console.log(err));6659 } else {6660 res.json(loghandler.invalidKey)6661 }6662});66636664router.get('/textpro/glitch2', async(req, res, next) => {66656666 const apikey = req.query.apikey;66676668 const text = req.query.text;6669 const text2 = req.query.text2;6670 6671 if(!apikey) return res.json(loghandler.notparam)6672 if(!text) return res.json(loghandler.nottext)6673 if(!text2) return res.json(loghandler.nottext2)6674 6675 if(listkey.includes(apikey)){6676 zrapi 6677 .textpro("https://textpro.me/create-a-glitch-text-effect-online-free-1026.html", [6678 text, text26679 ])6680 .then((data) => {6681 res.json({6682 status: true,6683 code: 200,6684 creator: `${creator}`,6685 result: data6686 })6687 })6688 .catch((err) => console.log(err));6689 } else {6690 res.json(loghandler.invalidKey)6691 }6692});66936694router.get('/textpro/logo-wolf', async(req, res, next) => {66956696 const apikey = req.query.apikey;66976698 const text = req.query.text;6699 const text2 = req.query.text2;6700 6701 if(!apikey) return res.json(loghandler.notparam)6702 if(!text) return res.json(loghandler.nottext)6703 if(!text2) return res.json(loghandler.nottext2)6704 6705 if(listkey.includes(apikey)){6706 zrapi 6707 .textpro("https://textpro.me/matrix-style-text-effect-online-884.html", [6708 text,6709 ])6710 .then((data) => {6711 res.json({6712 status: true,6713 code: 200,6714 creator: `${creator}`,6715 result: data6716 })6717 })6718 .catch((err) => console.log(err));6719 } else {6720 res.json(loghandler.invalidKey)6721 }6722});67236724router.get('/textpro/logo-wolf', async(req, res, next) => {67256726 const apikey = req.query.apikey;67276728 const text = req.query.text;6729 const text2 = req.query.text2;6730 6731 if(!apikey) return res.json(loghandler.notparam)6732 if(!text) return res.json(loghandler.nottext)6733 if(!text2) return res.json(loghandler.nottext2)6734 6735 if(listkey.includes(apikey)){6736 zrapi 6737 .textpro("https://textpro.me/firework-sparkle-text-effect-930.html", [6738 text,6739 ])6740 .then((data) => {6741 res.json({6742 status: true,6743 code: 200,6744 creator: `${creator}`,6745 result: data6746 })6747 })6748 .catch((err) => console.log(err));6749 } else {6750 res.json(loghandler.invalidKey)6751 }6752});67536754router.get('/textpro/thunder', async(req, res, next) => {67556756 const apikey = req.query.apikey;67576758 const text = req.query.text;6759 const text2 = req.query.text2;6760 6761 if(!apikey) return res.json(loghandler.notparam)6762 if(!text) return res.json(loghandler.nottext)6763 if(!text2) return res.json(loghandler.nottext2)6764 6765 if(listkey.includes(apikey)){6766 zrapi 6767 .textpro("https://textpro.me/thunder-text-effect-online-881.html", [6768 text,6769 ])6770 .then((data) => {6771 res.json({6772 status: true,6773 code: 200,6774 creator: `${creator}`,6775 result: data6776 })6777 })6778 .catch((err) => console.log(err));6779 } else {6780 res.json(loghandler.invalidKey)6781 }6782});67836784router.get('/textpro/black-pink', async(req, res, next) => {67856786 const apikey = req.query.apikey;67876788 const text = req.query.text;6789 6790 if(!apikey) return res.json(loghandler.notparam)6791 if(!text) return res.json(loghandler.nottext)6792 6793 if(listkey.includes(apikey)){6794 zrapi 6795 .textpro("https://textpro.me/create-blackpink-logo-style-online-1001.html", [6796 text,6797 ])6798 .then((data) => {6799 res.json({6800 status: true,6801 code: 200,6802 creator: `${creator}`,6803 result: data6804 })6805 })6806 .catch((err) => console.log(err));6807 } else {6808 res.json(loghandler.invalidKey)6809 }6810});68116812router.get('/textpro/drop-water', async(req, res, next) => {6813681468156816 const apikey = req.query.apikey;68176818 const text = req.query.text;6819 6820 if(!apikey) return res.json(loghandler.notparam)6821 if(!text) return res.json(loghandler.nottext)6822 6823 if(listkey.includes(apikey)){6824 zrapi 6825 .textpro("https://textpro.me/dropwater-text-effect-872.html", [6826 text,6827 ])6828 .then((data) => {6829 res.json({6830 status: true,6831 code: 200,6832 creator: `${creator}`,6833 result: data6834 })6835 })6836 .catch((err) => console.log(err));6837 } else {6838 res.json(loghandler.invalidKey)6839 }6840});68416842router.get('/textpro/christmas', async(req, res, next) => {68436844 const apikey = req.query.apikey;68456846 const text = req.query.text;6847 6848 if(!apikey) return res.json(loghandler.notparam)6849 if(!text) return res.json(loghandler.nottext)6850 6851 if(listkey.includes(apikey)){6852 zrapi 6853 .textpro("https://textpro.me/create-a-christmas-holiday-snow-text-effect-1007.html", [6854 text,6855 ])6856 .then((data) => {6857 res.json({6858 status: true,6859 code: 200,6860 creator: `${creator}`,6861 result: data6862 })6863 })6864 .catch((err) => console.log(err));6865 } else {6866 res.json(loghandler.invalidKey)6867 }6868});68696870router.get('/textpro/3d-gradient', async(req, res, next) => {6871 const apikey = req.query.apikey;6872 const text = req.query.text;6873 6874 if(!apikey) return res.json(loghandler.notparam)6875 if(!text) return res.json(loghandler.nottext)6876 6877 if(listkey.includes(apikey)){6878 zrapi 6879 .textpro("https://textpro.me/3d-gradient-text-effect-online-free-1002.html", [6880 text,6881 ])6882 .then((data) => {6883 res.json({6884 status: true,6885 code: 200,6886 creator: `${creator}`,6887 result: data6888 })6889 })6890 .catch((err) => console.log(err));6891 } else {6892 res.json(loghandler.invalidKey)6893 }6894});68956896router.get('/textpro/porn-hub', async(req, res, next) => {68976898 const apikey = req.query.apikey;68996900 const text = req.query.text1;6901 const text2 = req.query.text2;6902 6903 if(!apikey) return res.json(loghandler.notparam)6904 if(!text) return res.json(loghandler.nottext1)6905 if(!text2) return res.json(loghandler.nottext2)6906 6907 if(listkey.includes(apikey)){6908 zrapi 6909 .textpro("https://textpro.me/pornhub-style-logo-online-generator-free-977.html", [6910 text, text26911 ])6912 .then((data) => {6913 res.json({6914 status: true,6915 code: 200,6916 creator: `${creator}`,6917 result: data6918 })6919 })6920 .catch((err) => console.log(err));6921 } else {6922 res.json(loghandler.invalidKey)6923 }6924});69256926router.get('/textpro/captain', async(req, res, next) => {69276928 const apikey = req.query.apikey;69296930 const text = req.query.text1;6931 const text2 = req.query.text2;6932 6933 if(!apikey) return res.json(loghandler.notparam)6934 if(!text) return res.json(loghandler.nottext1)6935 if(!text2) return res.json(loghandler.nottext2)6936 6937 if(listkey.includes(apikey)){6938 zrapi 6939 .textpro("https://textpro.me/create-a-captain-america-text-effect-free-online-1039.html", [6940 text, text26941 ])6942 .then((data) => {6943 res.json({6944 status: true,6945 code: 200,6946 creator: `${creator}`,6947 result: data6948 })6949 })6950 .catch((err) => console.log(err));6951 } else {6952 res.json(loghandler.invalidKey)6953 }6954});69556956/*6957@AKHIR TEXTPRO ME6958*/69596960router.get('/maker/dadu', async (req, res, next) => {6961 Apikey = req.query.apikey;69626963 if(!Apikey) return res.json(loghandler.notparam)6964 if(listkey.includes(Apikey)) {6965 random = Math.floor(Math.random() * 6) + 16966 hasil = 'https://www.random.org/dice/dice' + random + '.png'6967 data = await fetch(hasil).then(v => v.buffer())6968 await fs.writeFileSync(__path +'/tmp/dadu.png', data)6969 res.sendFile(__path+'/tmp/dadu.png')6970 } else {6971 res.json(loghandler.invalidKey)6972 }6973});69746975router.get('/blackpink', async (req, res, next) => {6976 Apikey = req.query.apikey;6977 6978 if(!Apikey) return res.json(loghandler.notparam)6979 if(listkey.includes(Apikey)) {6980 const pop = JSON.parse(fs.readFileSync(__path +'/data/kpop.json'));6981 const Pop = pop[Math.floor(Math.random() * pop.length)];6982 let hasil = Pop.pop;6983 data = await fetch(hasil).then(v => v.buffer())6984 await fs.writeFileSync(__path +'/tmp/pink.jpeg', data)6985 res.sendFile(__path +'/tmp/pink.jpeg')6986 } else {6987 res.json(loghandler.invalidKey)6988 }6989});69906991router.get('/asupan', async (req, res, next) => {6992 Apikey = req.query.apikey;6993 6994 if(!Apikey) return res.json(loghandler.notparam)6995 if(listkey.includes(Apikey)) {6996 const Asupan = JSON.parse(fs.readFileSync(__path +'/data/asupantiktok.json'));6997 const randAsupan = Asupan[Math.floor(Math.random() * Asupan.length)];6998 data = await fetch(randAsupan).then(v => v.buffer())6999 await fs.writeFileSync(__path +'/tmp/asupan.mp4', data)7000 res.sendFile(__path +'/tmp/asupan.mp4')7001 } else {7002 res.json(loghandler.invalidKey)7003 }7004});7005 7006router.get("/maker/nulis", async (req, res, next) => {7007 7008 apikey = req.query.apikey;7009 text = req.query.text;7010 7011 if(!text) return res.json(loghandler.nottext)7012 if(!apikey) return res.json(loghandler.notparam)7013 7014 if(listkey.includes(apikey)) {7015 let hasil = 'https://api.zeks.xyz/api/nulis?text='+ text +'&apikey=apivinz' 7016 data = await fetch(hasil).then(v => v.buffer())7017 await fs.writeFileSync(__path +'/tmp/nulis.jpeg', data)7018 res.sendFile(__path +'/tmp/nulis.jpeg')7019 } else {7020 res.json(loghandler.invalidKey)7021 }7022})70237024router.get('/maker/ttp', async(req, res, next) => {70257026 const text = req.query.text;7027 const apikey = req.query.apikey;7028 if(!text) return res.json(loghandler.nottext)7029 if(!apikey) return res.json(loghandler.notparam)7030 7031 if(listkey.includes(apikey)) {7032 let hasil = 'https://h4ck3rs404-api.herokuapp.com/api/ttp?text='+ text +'&apikey=404Api'7033 data = await fetch(hasil).then(v => v.buffer())7034 await fs.writeFileSync(__path +'/tmp/ttp.png', data)7035 res.sendFile(__path +'/tmp/ttp.png')7036 } else {7037 res.json(loghandler.invalidKey)7038 }7039})70407041router.get('/maker/attp', async(req, res, next) => {70427043 const text = req.query.text;7044 const apikey = req.query.apikey;7045 if(!text) return res.json(loghandler.nottext)7046 if(!apikey) return res.json(loghandler.notparam)7047 7048 if(listkey.includes(apikey)) {7049 let hasil = 'https://h4ck3rs404-api.herokuapp.com/api/attp?text='+ text +'&apikey=404Api'7050 data = await fetch(hasil).then(v => v.buffer())7051 await fs.writeFileSync(__path +'/tmp/attp.gif', data)7052 res.sendFile(__path +'/tmp/attp.gif')7053 } else {7054 res.json(loghandler.invalidKey)7055 }7056})70577058router.get('/maker/matrix', async(req, res, next) => {7059 const text = req.query.text;7060 const apikey = req.query.apikey;7061 7062 if(!text) return res.json(loghandler.nottext)7063 if(!apikey) return res.json(loghandler.notparam)7064 7065 if(listkey.includes(apikey)) {7066 let hasil = 'https://api.zeks.xyz/api/matrix?text='+ text +'&apikey=administrator' 7067 data = await fetch(hasil).then(v => v.buffer())7068 await fs.writeFileSync(__path +'/tmp/matrix.jpg', data)7069 res.sendFile(__path +'/tmp/matrix.jpg')7070 } else {7071 res.json(loghandler.invalidKey)7072 }7073});70747075router.get('/maker/breakwall', async(req, res, next) => {7076 const text = req.query.text;7077 const apikey = req.query.apikey;7078 7079 if(!text) return res.json(loghandler.nottext)7080 if(!apikey) return res.json(loghandler.notparam)7081 7082 if(listkey.includes(apikey)) {7083 let hasil = 'https://api.zeks.xyz/api/breakwall?text='+ text +'&apikey=administrator' 7084 data = await fetch(hasil).then(v => v.buffer())7085 await fs.writeFileSync(__path +'/tmp/breakwall.jpg', data)7086 res.sendFile(__path +'/tmp/breakwall.jpg')7087 } else {7088 res.json(loghandler.invalidKey)7089 }7090});70917092router.get('/maker/flowertext', async(req, res, next) => {7093 const text = req.query.text;7094 const apikey = req.query.apikey;7095 7096 if(!text) return res.json(loghandler.nottext)7097 if(!apikey) return res.json(loghandler.notparam)7098 7099 if(listkey.includes(apikey)) {7100 let hasil = 'https://api.zeks.xyz/api/flowertext?text='+ text +'&apikey=administrator' 7101 data = await fetch(hasil).then(v => v.buffer())7102 await fs.writeFileSync(__path +'/tmp/flowertext.jpg', data)7103 res.sendFile(__path +'/tmp/flowertext.jpg')7104 } else {7105 res.json(loghandler.invalidKey)7106 }7107});71087109router.get('/maker/smoketext', async(req, res, next) => {7110 const text = req.query.text;7111 const apikey = req.query.apikey;7112 7113 if(!text) return res.json(loghandler.nottext)7114 if(!apikey) return res.json(loghandler.notparam)7115 7116 if(listkey.includes(apikey)) {7117 let hasil = 'https://api.zeks.xyz/api/smoketext?text='+ text +'&apikey=administrator' 7118 data = await fetch(hasil).then(v => v.buffer())7119 await fs.writeFileSync(__path +'/tmp/smoketext.jpg', data)7120 res.sendFile(__path +'/tmp/smoketext.jpg')7121 } else {7122 res.json(loghandler.invalidKey)7123 }7124});71257126router.get('/maker/skytext', async(req, res, next) => {7127 const text = req.query.text;7128 const apikey = req.query.apikey;7129 7130 if(!text) return res.json(loghandler.nottext)7131 if(!apikey) return res.json(loghandler.notparam)7132 7133 if(listkey.includes(apikey)) {7134 let hasil = 'https://api.zeks.xyz/api/skytext?text='+ text +'&apikey=administrator' 7135 data = await fetch(hasil).then(v => v.buffer())7136 await fs.writeFileSync(__path +'/tmp/skytext.jpg', data)7137 res.sendFile(__path +'/tmp/skytext.jpg')7138 } else {7139 res.json(loghandler.invalidKey)7140 }7141});71427143router.get('/maker/pubglogo', async(req, res, next) => {7144 const text1 = req.query.text1;7145 const text2 = req.query.text2;7146 const apikey = req.query.apikey;7147 7148 if(!text1) return res.json(loghandler.nottext)7149 if(!text2) return res.json(loghandler.nottext)7150 if(!apikey) return res.json(loghandler.notparam)7151 7152 if(listkey.includes(apikey)) {7153 let hasil = 'https://api.zeks.xyz/api/pubglogo?text1='+ text1 + '&text2' +'&apikey=administrator'7154 data = await fetch(hasil).then(v => v.buffer())7155 await fs.writeFileSync(__path +'/tmp/pubglogo.jpg', data)7156 res.sendFile(__path +'/tmp/pubglogo.jpg')7157 } else {7158 res.json(loghandler.invalidKey)7159 }7160});71617162router.get('/maker/bneon', async(req, res, next) => {7163 const text = req.query.text;7164 const apikey = req.query.apikey;7165 7166 if(!text) return res.json(loghandler.nottext)7167 if(!apikey) return res.json(loghandler.notparam)7168 7169 if(listkey.includes(apikey)) {7170 let hasil = 'https://api.zeks.xyz/api/bneon?text='+ text +'&apikey=administrator' 7171 data = await fetch(hasil).then(v => v.buffer())7172 await fs.writeFileSync(__path +'/tmp/bneon.jpg', data)7173 res.sendFile(__path +'/tmp/bneon.jpg')7174 } else {7175 res.json(loghandler.invalidKey)7176 }7177});71787179router.get('/maker/naruto', async(req, res, next) => {7180 const text = req.query.text;7181 const apikey = req.query.apikey;7182 7183 if(!text) return res.json(loghandler.nottext)7184 if(!apikey) return res.json(loghandler.notparam)7185 7186 if(listkey.includes(apikey)) {7187 let hasil = 'https://api.zeks.xyz/api/naruto?text='+ text +'&apikey=administrator' 7188 data = await fetch(hasil).then(v => v.buffer())7189 await fs.writeFileSync(__path +'/tmp/naruto.jpg', data)7190 res.sendFile(__path +'/tmp/naruto.jpg')7191 } else {7192 res.json(loghandler.invalidKey)7193 }7194});71957196router.get('/maker/teks3d', async(req, res, next) => {7197 const text = req.query.text;7198 const apikey = req.query.apikey;7199 7200 if(!text) return res.json(loghandler.nottext)7201 if(!apikey) return res.json(loghandler.notparam)7202 7203 if(listkey.includes(apikey)) {7204 let hasil = 'https://api.zeks.xyz/api/text3dbox?text='+ text +'&apikey=administrator' 7205 data = await fetch(hasil).then(v => v.buffer())7206 await fs.writeFileSync(__path +'/tmp/text3dbox.jpg', data)7207 res.sendFile(__path +'/tmp/text3dbox.jpg')7208 } else {7209 res.json(loghandler.invalidKey)7210 }7211});72127213router.get('/maker/nulis', async(req, res, next) => {7214 const text = req.query.text;7215 const apikey = req.query.apikey;7216 7217 if(!text) return res.json(loghandler.nottext)7218 if(!apikey) return res.json(loghandler.notparam)7219 7220 if(listkey.includes(apikey)) {7221 let hasil = 'https://api.zeks.xyz/api/nulis?text='+ text +'&apikey=administrator' 7222 data = await fetch(hasil).then(v => v.buffer())7223 await fs.writeFileSync(__path +'/tmp/nulis.jpg', data)7224 res.sendFile(__path +'/tmp/nulis.jpg')7225 } else {7226 res.json(loghandler.invalidKey)7227 }7228});72297230router.get('/maker/epep', async(req, res, next) => {7231 const text = req.query.text;7232 const apikey = req.query.apikey;7233 7234 if(!text) return res.json(loghandler.nottext)7235 if(!apikey) return res.json(loghandler.notparam)7236 7237 if(listkey.includes(apikey)) {7238 let hasil = 'https://api.zeks.xyz/api/epep?text='+ text +'&apikey=administrator' 7239 data = await fetch(hasil).then(v => v.buffer())7240 await fs.writeFileSync(__path +'/tmp/epep.jpg', data)7241 res.sendFile(__path +'/tmp/epep.jpg')7242 } else {7243 res.json(loghandler.invalidKey)7244 }7245});72467247router.get('/maker/silverbutton', async(req, res, next) => {7248 const text = req.query.text;7249 const apikey = req.query.apikey;7250 7251 if(!text) return res.json(loghandler.nottext)7252 if(!apikey) return res.json(loghandler.notparam)7253 7254 if(listkey.includes(apikey)) {7255 let hasil = 'https://api.zeks.xyz/api/splaybutton?text='+ text +'&apikey=administrator' 7256 data = await fetch(hasil).then(v => v.buffer())7257 await fs.writeFileSync(__path +'/tmp/splaybutton.jpg', data)7258 res.sendFile(__path +'/tmp/splaybutton.jpg')7259 } else {7260 res.json(loghandler.invalidKey)7261 }7262});72637264router.get('/maker/goldbutton', async(req, res, next) => {7265 const text = req.query.text;7266 const apikey = req.query.apikey;7267 7268 if(!text) return res.json(loghandler.nottext)7269 if(!apikey) return res.json(loghandler.notparam)7270 7271 if(listkey.includes(apikey)) {7272 let hasil = 'https://api.zeks.xyz/api/gplaybutton?text='+ text +'&apikey=administrator' 7273 data = await fetch(hasil).then(v => v.buffer())7274 await fs.writeFileSync(__path +'/tmp/ppp.jpg', data)7275 res.sendFile(__path +'/tmp/ppp.jpg')7276 } else {7277 res.json(loghandler.invalidKey)7278 }7279});72807281router.get('/maker/harta-tahta', async(req, res, next) => {7282 const text = req.query.text;7283 const apikey = req.query.apikey;7284 7285 if(!text) return res.json(loghandler.nottext)7286 if(!apikey) return res.json(loghandler.notparam)7287 7288 if(listkey.includes(apikey)) {7289 let hasil = 'https://api.zeks.me/api/hartatahta?text='+ text +'&apikey=administrator' 7290 data = await fetch(hasil).then(v => v.buffer())7291 await fs.writeFileSync(__path +'/tmp/ok.jpg', data)7292 res.sendFile(__path +'/tmp/ok.jpg')7293 } else {7294 res.json(loghandler.invalidKey)7295 }7296});72977298router.get('/maker/skatch', async(req, res, next) => {7299 const apikey = req.query.apikey;7300 const url = req.query.url;7301 if(!url) return res.json(loghandler.noturl)7302 if(!apikey) return res.json(loghandler.notparam)7303 if(listkey.includes(apikey)){7304 let hasil = `https://lindow-api.herokuapp.com/api/sketcheffect?img=${url}&apikey=LindowApi`7305 data = await fetch(hasil).then(v => v.buffer())7306 await fs.writeFileSync(__path +'/tmp/skatch.jpeg', data)7307 res.sendFile(__path+'/tmp/skatch.jpeg')7308 } else {7309 res.json(loghandler.invalidKey)7310 }7311});7312router.get('/canvas/welcome', async(req, res, next) => {7313 const apikey = req.query.apikey;7314 const username = req.query.username;7315 const memberCount = req.query.memberCount;7316 const gcname = req.query.gcname;7317 const bg = req.query.bg;7318 const pp = req.query.pp;7319 const gcicon = req.query.gcicon;7320 if(!username) return res.json(loghandler.notusername)7321 if(!memberCount) return res.json(loghandler.memberCount)7322 if(!gcname) return res.json(loghandler.gcname)7323 if(!bg) return res.json(loghandler.bg)7324 if(!pp) return res.json(loghandler.pp)7325 if(!gcicon) return res.json(loghandler.gcicon)7326 if(!apikey) return res.json(loghandler.notparam)7327 if(listkey.includes(apikey)){7328 let hasil = `https://hadi-api.herokuapp.com/api/card/welcome3?username=${username}&memberCount=${memberCount}&bg=${bg}&pp=${pp}&gcicon=${gcicon}`7329 data = await fetch(hasil).then(v => v.buffer())7330 await fs.writeFileSync(__path +'/tmp/welcome.png', data)7331 res.sendFile(__path+'/tmp/welcome.png')7332 } else {7333 res.json(loghandler.invalidKey)7334 }7335});7336router.get('/maker/tololserti', async(req, res, next) => {7337 const apikey = req.query.apikey;7338 const url = req.query.url;7339 if(!text) return res.json(loghandler.noturl)7340 if(!apikey) return res.json(loghandler.notparam)7341 if(listkey.includes(apikey)){7342 let hasil = `https://lolhuman.herokuapp.com/api/toloserti?apikey=muzharzain&name=${text}`7343 data = await fetch(hasil).then(v => v.buffer())7344 await fs.writeFileSync(__path +'/tmp/tololserti.jpeg', data)7345 res.sendFile(__path+'/tmp/tololserti.jpeg')7346 } else {7347 res.json(loghandler.invalidKey)7348 }7349});7350router.get('/maker/emoji2png', async(req, res, next) => {7351 const apikey = req.query.apikey;7352 const Emoji = req.query.text;7353 7354 if(!apikey) return jes.json(loghandler.notparam)7355 if(!Emoji) return res.json(loghandler.nottext)7356 7357 if(listkey.includes(apikey)) {73587359 emoji.get(Emoji)7360 .then(img_emoji => {7361 const result = {7362 status: true,7363 code: 200,7364 creator: `${creator}`,7365 result: img_emoji.images[0].url7366 }7367 res.json(result)7368 })7369 7370 .catch((err) => {7371 res.json(loghandler.error)7372 })7373 } else {7374 res.json(loghandler.invalidKey)7375 }7376});73777378router.get('/downloader/facebook2', async(req, res, next) => {7379 const apikey = req.query.apikey;7380 const url = req.query.url;7381 7382 if(!url) return res.json(loghandler.noturl)7383 if(!apikey) return res.json(loghandler.notparam)7384 7385 if(listkey.includes(apikey)){7386 fetch(encodeURI(`https://fb-scrape.herokuapp.com/api/fb?url=${url}`))7387 .then(response => response.json())7388 .then(data => {7389 var result = data;7390 res.json({7391 status: true,7392 code: 200,7393 creator: `${creator}`,7394 result7395 })7396 })7397 .catch(e => {7398 res.json(loghandler.error)7399})7400 } else {7401 res.json(loghandler.invalidKey)7402 }7403});74047405router.get('/web2plain-text', async(req, res, next) => {7406 const apikey = req.query.apikey;7407 const url = req.query.url;7408 7409 if(!url) return res.json(loghandler.noturl)7410 if(!apikey) return res.json(loghandler.notparam)7411 7412 if(listkey.includes(apikey)){7413 fetch(encodeURI(`https://websitetextextraction.apifex.com/api/v1/extract?url=${url}`))7414 .then(response => response.json())7415 .then(data => {7416 var result = data;7417 res.json({7418 status: true,7419 code: 200,7420 creator: `${creator}`,7421 result7422 })7423 })7424 .catch(e => {7425 res.json(loghandler.error)7426})7427 } else {7428 res.json(loghandler.invalidKey)7429 }7430});743174327433router.get('/cekapikey', async(req, res, next) => {7434 const apikey = req.query.apikey;7435 if(!apikey) return res.json(loghandler.notparam)7436 if(listkey.includes(apikey)) {7437 res.json({7438 status: 'active',7439 creator: `${creator}`,7440 apikey: `${apikey}`,7441 message: 'APIKEY ACTIVE LIMIT 999' 7442 })7443 } else {7444 res.json(loghandler.invalidKey)7445 }7446})74477448router.use(function (req, res) {74497450 res.status(404)7451 .set("Content-Type", "text/html")7452 .sendFile(__path + '/views/404.html');7453});7454
...
anime.js
Source:anime.js
1const axios = require('axios');2const webApi = 'https://api.darkcoder.xyz';34exports.otakudesu = (apikey, anime) => {5 return new Promise((resolve, reject) => {6 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));7 if (!anime) return reject(new Error(`Parameter "anime" kosong!!`));8 let option = {9 method: 'GET',10 url: webApi + '/dc/anime/otakudesu',11 params: { apikey: apikey, anime: anime }12 };13 axios.request(option)14 .then(data => {15 resolve(data.data);16 })17 .catch(error => {18 reject(error);19 });20 });21};22exports.anoboy = (apikey, anime) => {23 return new Promise((resolve, reject) => {24 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));25 if (!anime) return reject(new Error(`Parameter "anime" kosong!!`));26 let option = {27 method: 'GET',28 url: webApi + '/dc/anime/anoboy',29 params: { apikey: apikey, anime: anime }30 };31 axios.request(option)32 .then(data => {33 resolve(data.data);34 })35 .catch(error => {36 reject(error);37 });38 });39};40exports.malTopAiring = (apikey) => {41 return new Promise((resolve, reject) => {42 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));43 //if (!anime) return reject(new Error(`Parameter "anime" kosong!!`));44 let option = {45 method: 'GET',46 url: webApi + '/dc/anime/mal-topairing',47 params: { apikey: apikey }48 };49 axios.request(option)50 .then(data => {51 resolve(data.data);52 })53 .catch(error => {54 reject(error);55 });56 });57};58exports.malTopAnime = (apikey) => {59 return new Promise((resolve, reject) => {60 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));61 //if (!anime) return reject(new Error(`Parameter "anime" kosong!!`));62 let option = {63 method: 'GET',64 url: webApi + '/dc/anime/mal-topanime',65 params: { apikey: apikey }66 };67 axios.request(option)68 .then(data => {69 resolve(data.data);70 })71 .catch(error => {72 reject(error);73 });74 });75};76exports.malSearchAnime = (apikey, anime) => {77 return new Promise((resolve, reject) => {78 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));79 if (!anime) return reject(new Error(`Parameter "anime" kosong!!`));80 let option = {81 method: 'GET',82 url: webApi + '/dc/anime/mal-searchanime',83 params: { apikey: apikey, anime: anime }84 };85 axios.request(option)86 .then(data => {87 resolve(data.data);88 })89 .catch(error => {90 reject(error);91 });92 });93};94exports.malSearchManga = (apikey, manga) => {95 return new Promise((resolve, reject) => {96 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));97 if (!manga) return reject(new Error(`Parameter "manga" kosong!!`));98 let option = {99 method: 'GET',100 url: webApi + '/dc/anime/mal-searchmanga',101 params: { apikey: apikey, manga: manga }102 };103 axios.request(option)104 .then(data => {105 resolve(data.data);106 })107 .catch(error => {108 reject(error);109 });110 });111};112exports.malSearchCharacter = (apikey, character) => {113 return new Promise((resolve, reject) => {114 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));115 if (!character) return reject(new Error(`Parameter "character" kosong!!`));116 let option = {117 method: 'GET',118 url: webApi + '/dc/anime/mal-searchcharacter',119 params: { apikey: apikey, character: character }120 };121 axios.request(option)122 .then(data => {123 resolve(data.data);124 })125 .catch(error => {126 reject(error);127 });128 });129};130exports.quotesnime = (apikey) => {131 return new Promise((resolve, reject) => {132 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));133 //if (!character) return reject(new Error(`Parameter "character" kosong!!`));134 let option = {135 method: 'GET',136 url: webApi + '/dc/anime/random-quotesnime',137 params: { apikey: apikey }138 };139 axios.request(option)140 .then(data => {141 resolve(data.data);142 })143 .catch(error => {144 reject(error);145 });146 });147};148exports.mangatoon = (apikey, search) => {149 return new Promise((resolve, reject) => {150 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));151 if (!search) return reject(new Error(`Parameter "search" kosong!!`));152 let option = {153 method: 'GET',154 url: webApi + '/dc/anime/mangatoon',155 params: { apikey: apikey, search: search }156 };157 axios.request(option)158 .then(data => {159 resolve(data.data);160 })161 .catch(error => {162 reject(error);163 });164 });165};166exports.apAnime = (apikey, anime) => {167 return new Promise((resolve, reject) => {168 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));169 if (!anime) return reject(new Error(`Parameter "anime" kosong!!`));170 let option = {171 method: 'GET',172 url: webApi + '/dc/anime/ap-anime',173 params: { apikey: apikey, anime: anime }174 };175 axios.request(option)176 .then(data => {177 resolve(data.data);178 })179 .catch(error => {180 reject(error);181 });182 });183};184exports.apManga = (apikey, manga) => {185 return new Promise((resolve, reject) => {186 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));187 if (!manga) return reject(new Error(`Parameter "manga" kosong!!`));188 let option = {189 method: 'GET',190 url: webApi + '/dc/anime/ap-manga',191 params: { apikey: apikey, manga: manga }192 };193 axios.request(option)194 .then(data => {195 resolve(data.data);196 })197 .catch(error => {198 reject(error);199 });200 });201};202exports.otakuOngoing = (apikey) => {203 return new Promise((resolve, reject) => {204 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));205 //if (!manga) return reject(new Error(`Parameter "manga" kosong!!`));206 let option = {207 method: 'GET',208 url: webApi + '/dc/anime/otaku-ongoing',209 params: { apikey: apikey }210 };211 axios.request(option)212 .then(data => {213 resolve(data.data);214 })215 .catch(error => {216 reject(error);217 });218 });219};220exports.otakuOngoing = (apikey) => {221 return new Promise((resolve, reject) => {222 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));223 //if (!manga) return reject(new Error(`Parameter "manga" kosong!!`));224 let option = {225 method: 'GET',226 url: webApi + '/dc/anime/otaku-ongoing',227 params: { apikey: apikey }228 };229 axios.request(option)230 .then(data => {231 resolve(data.data);232 })233 .catch(error => {234 reject(error);235 });236 });237};238exports.kiryuu = (apikey, anime) => {239 return new Promise((resolve, reject) => {240 if (!apikey) return reject(new Error(`Apikey kosong!!, silahkan registrasi di https://api.darkcoder.xyz untuk mendapatkan apikey!!`));241 if (!anime) return reject(new Error(`Parameter "anime" kosong!!`));242 let option = {243 method: 'GET',244 url: webApi + '/dc/anime/kiryuu',245 params: { apikey: apikey, anime: anime }246 };247 axios.request(option)248 .then(data => {249 resolve(data.data);250 })251 .catch(error => {252 reject(error);253 });254 });
...
sensor.js
Source:sensor.js
1const express = require("express");2const router = express.Router();3const User = require("../../models/User");4let socketObject = {};5router.post("/update", (req, res) => {6 const apiKey = req.body.apiKey;7 const value = req.body.value;8 console.log(apiKey, value);9 if (socketObject[apiKey]) {10 socketObject[apiKey].send(value);11 } else {12 console.log("no socket")13 }14 User.updateOne(15 { apiKey: apiKey },16 { $push: { sensorData: { value: value, timestamp: Date.now() } } },17 function (err, docs) {18 if (err) {19 console.log(err);20 }21 }22 );23});24const socketSetter = function (apiKey, websocket) {25 socketObject[apiKey] = websocket;26};27const socketCleaner = function (apiKey) {28 if (socketObject[apiKey]) {29 socketObject[apiKey].close();30 delete socketObject[apiKey];31 }32};33const socketGetter = function (apiKey) {34 return socketObject[apiKey];35};36const sendHistoricalData = function (apiKey, params) {37 if (socketObject[apiKey]) {38 User.aggregate(39 [40 { $match: { apiKey: apiKey } },41 {42 $project: {43 sensorData: {44 $filter: {45 input: "$sensorData",46 as: "data",47 cond: {48 $and: [49 { $gte: ["$$data.timestamp", params.start] },50 { $lte: ["$$data.timestamp", params.stop] },51 ],52 },53 },54 },55 },56 },57 { $project: { "sensorData._id": 0 } },58 ],59 function (err, docs) {60 if (err) {61 console.log(err);62 } else {63 console.log(docs);64 if (docs[0]) {65 //console.log(docs[0].sensorData)66 socketObject[apiKey].send(67 JSON.stringify({ historicalData: docs[0].sensorData })68 );69 } else {70 socketObject[apiKey].send(JSON.stringify({ historicalData: {} }));71 }72 }73 }74 );75 }76};77module.exports = router;78module.exports.socketSetter = socketSetter;79module.exports.socketCleaner = socketCleaner;80module.exports.socketGetter = socketGetter;...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!