UNPKG

@jkt48/core

Version:

API client for JKT48 data from v2.jkt48connect.com

70 lines (62 loc) 3.24 kB
/** * Constants used throughout the JKT48 API client */ const BASE_URL = 'https://v2.jkt48connect.com/api'; const ENDPOINTS = { MEMBERS: '/jkt48/members', BIRTHDAY: '/jkt48/birthday', EVENTS: '/jkt48/events', RECENT: '/jkt48/recent', REPLAY: '/jkt48/replay', RECENT_DETAIL: (liveId) => `/jkt48/recent/${liveId}`, LIVE: '/jkt48/live', LIVE_YOUTUBE: '/jkt48/live/youtube', YOUTUBE: '/jkt48/youtube', LIVE_IDN: '/jkt48/live/idn', LIVE_SHOWROOM: '/jkt48/live/showroom', MEMBER_DETAIL: (name) => `/jkt48/member/${encodeURIComponent(name)}`, NEWS: '/jkt48/news', NEWS_DETAIL: (id) => `/jkt48/news/${id}`, THEATER: '/jkt48/theater', THEATER_DETAIL: (id) => `/jkt48/theater/${id}`, CHAT_STREAM: (username, slug) => `/jkt48/chat-stream?username=${encodeURIComponent(username)}&slug=${encodeURIComponent(slug)}`, CHAT_STREAM_SR: (roomId) => `/jkt48/chat-stream-sr?room_id=${encodeURIComponent(roomId)}`, CHECK: '/zenova/check', VIDEO_CALL: (sesi = '', date = '', member = '') => { let endpoint = `/jkt48/videocall`; if (sesi) endpoint += `&sesi=${encodeURIComponent(sesi)}`; if (date) endpoint += `&sesi=${encodeURIComponent(sesi)}`; if (member) endpoint += `&member=${encodeURIComponent(member)}`; return endpoint; }, VIDEO_CALL_TODAY: '/jkt48/videocall/today', // Admin endpoints ADMIN_KEYS: '/admin/keys?username=vzy&password=vzy', ADMIN_KEY_DETAIL: (key) => `/admin/key/${encodeURIComponent(key)}?username=vzy&password=vzy`, ADMIN_UPDATE_KEY: (key, active, type) => `/admin/update-key?username=vzy&password=vzy&key=${encodeURIComponent(key)}&active=${active}&type=${encodeURIComponent(type)}`, ADMIN_DELETE_KEY: (key) => `/admin/key/${encodeURIComponent(key)}?username=vzy&password=vzy`, ADMIN_STATS: '/admin/stats?username=vzy&password=vzy', ADMIN_CREATE_KEY: (owner, email, type = '', apikey = '') => { let endpoint = `/admin/create-key?username=vzy&password=vzy&owner=${encodeURIComponent(owner)}&email=${encodeURIComponent(email)}`; if (type) endpoint += `&type=${encodeURIComponent(type)}`; if (apikey) endpoint += `&apikey=${encodeURIComponent(apikey)}`; return endpoint; }, ADMIN_ADD_LIMIT: (key, additionalLimit) => `/admin/add-limit?username=vzy&password=vzy&key=${encodeURIComponent(key)}&additionalLimit=${encodeURIComponent(additionalLimit)}`, ADMIN_ADD_EXPIRY: (key, additionalDays) => `/admin/add-expiry?username=vzy&password=vzy&key=${encodeURIComponent(key)}&additionalDays=${encodeURIComponent(additionalDays)}`, // Changelog endpoints CREATE_CHANGELOG: '/database/create-changelog?username=vzy&password=vzy&apikey=JKTCONNECT', CHANGELOGS: '/database/changelogs?username=vzy&password=vzy&apikey=JKTCONNECT', CHANGELOG_DETAIL: (id) => `/database/changelog/${id}?username=vzy&password=vzy&apikey=JKTCONNECT`, UPDATE_CHANGELOG: (id) => `/database/changelog/${id}?username=vzy&password=vzy&apikey=JKTCONNECT`, DELETE_CHANGELOG: (id) => `/database/changelog/${id}?username=vzy&password=vzy&apikey=JKTCONNECT`, //Grow A Garden STOCK: '/growagarden/stock', WEATHER: '/growagarden/weather', RESTOCK: '/growagarden/restock-timer', ALL: '/growagarden/all' }; module.exports = { BASE_URL, ENDPOINTS };