Update Luminate's completion banner, but still need to make it downloadable with a click. G2 and Luminate notes. Todos.
This commit is contained in:
66
Scripts/bulkPersonCreateAndGroupsWithCSV.js
Normal file
66
Scripts/bulkPersonCreateAndGroupsWithCSV.js
Normal file
@ -0,0 +1,66 @@
|
||||
const axios = require("axios")
|
||||
const fs = require("fs")
|
||||
var { parse } = require("csv-parse")
|
||||
var usersArray = []
|
||||
|
||||
var api_key = "" // INSERT API KEY
|
||||
|
||||
function wait(ms) {
|
||||
return new Promise((r) => setTimeout(r, ms))
|
||||
}
|
||||
|
||||
function bulkAddPeople(xApiKey, users, num) {
|
||||
let page = num
|
||||
|
||||
axios({
|
||||
method: "post",
|
||||
url: "https://api.northpass.com/v2/bulk/people",
|
||||
data: {
|
||||
data: {
|
||||
attributes: {
|
||||
people: [{ email: users[num].email, groups: users[num].group }],
|
||||
},
|
||||
},
|
||||
},
|
||||
headers: {
|
||||
accept: "application/json",
|
||||
"x-api-key": xApiKey,
|
||||
"content-type": "application/json",
|
||||
},
|
||||
})
|
||||
.then((res) => {
|
||||
if (page < users.length - 1) {
|
||||
console.log(`User ${users[num].email} added to group ${users[num].group} on index ${page}`)
|
||||
page++
|
||||
wait(200)
|
||||
bulkAddPeople(xApiKey, users, page)
|
||||
} else {
|
||||
console.log("complete")
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err)
|
||||
})
|
||||
}
|
||||
|
||||
const csvReader = async () => {
|
||||
fs.createReadStream("./csv-files/drofus-users.csv") // UPDATE URL OF CSV FILE
|
||||
.pipe(parse({ delimiter: "," }))
|
||||
.on("data", function (row) {
|
||||
const userObj = {
|
||||
email: row[3], // UPDATE COLUMN INDEX
|
||||
group: row[7] // UPDATE COLUMN INDEX
|
||||
}
|
||||
usersArray.push(userObj)
|
||||
})
|
||||
.on("error", function (error) {
|
||||
console.log(error.message)
|
||||
})
|
||||
.on("end", async function () {
|
||||
console.log(`Number of emails in array: ${usersArray.length}`)
|
||||
|
||||
bulkAddPeople(api_key, usersArray, 1) // Start with index 1 if there is a header row, otherwise start with 0
|
||||
})
|
||||
}
|
||||
|
||||
csvReader()
|
||||
Reference in New Issue
Block a user