const axios = require('axios'); const apiVersion = "v2"; const app = require('../../app.json'); function sleep(ms) { return new Promise((res) => { setTimeout(res, ms); }); } (async () => { let user = process.argv[2]; try { let data = (await axios.get(`https://lookups.twilio.com/${apiVersion}/PhoneNumbers/${user}`, { auth: { username: app.twilio.sid, password: app.twilio.secret } })).data; if (!data['valid']) throw new Error(JSON.stringify(data['validation_errors'])); let obj = { error: null, avatar: `https://flagcdn.com/w160/${data['country_code'].toLowerCase()}.png`, name: data['national_format'], description: data['phone_number'], link: `tel:${data['phone_number']}`, copy: [ { title: "Copy national phone number", text: data['national_format'] }, { title: "Copy international phone number", text: data['phone_number'] }, { title: "Copy tel: link", text: `tel:${data['phone_number']}` } ] } console.log(JSON.stringify(obj, null, 2)); } catch (e) { console.log(JSON.stringify({ error: e, avatar: "https://img.icons8.com/fluency-systems-regular/64/ffffff/phone.png", name: user, description: "Phone", link: null, copy: [] }, null, 2)); } })();