Skuid Scripts
This commit is contained in:
@ -1,8 +1,10 @@
|
|||||||
# AIIM
|
# AIIM
|
||||||
|
|
||||||
Workflows Demo
|
Workflows Demo
|
||||||
|
|
||||||
## 10/11/2022
|
## 10/11/2022
|
||||||
* The user recieving the communications is an ex-employee and that should say it all
|
|
||||||
|
* The user receiving the communications is an ex-employee and that should say it all
|
||||||
* They are okay with losing the subscription of that person
|
* They are okay with losing the subscription of that person
|
||||||
* Wants to explore workflows
|
* Wants to explore workflows
|
||||||
* Launched their course with the password protected proctored test
|
* Launched their course with the password protected proctored test
|
||||||
@ -18,22 +20,44 @@ Workflows Demo
|
|||||||
* Large customers are invoiced separately, bold can't do $0.
|
* Large customers are invoiced separately, bold can't do $0.
|
||||||
* She is just thinking about this, no engineering hours needed yet.
|
* She is just thinking about this, no engineering hours needed yet.
|
||||||
* The other item she wanted to talk about:
|
* The other item she wanted to talk about:
|
||||||
* They just started using Services Hub
|
* They just started using Services Hub
|
||||||
* Wants to know other client use cases
|
* Wants to know other client use cases
|
||||||
* Using typeform for reviews, but will start using services hub
|
* Using typeform for reviews, but will start using services hub
|
||||||
* Mostly to gather feedback
|
* Mostly to gather feedback
|
||||||
* What feature are they using Services Hub for mostly?
|
* What feature are they using Services Hub for mostly?
|
||||||
* Service Hub is a HUBSPOT product
|
* Service Hub is a HUBSPOT product
|
||||||
* She got stuck on a workflow
|
* She got stuck on a workflow
|
||||||
* CIP Exam, it should trigger for all learners not just a specific one
|
* CIP Exam, it should trigger for all learners not just a specific one
|
||||||
* But she is getting a trigger for "enter UID" which she doesn't want to do
|
* But she is getting a trigger for "enter UID" which she doesn't want to do
|
||||||
* This should be for everyone.
|
* This should be for everyone.
|
||||||
|
|
||||||
## 11/08/2022
|
## 11/08/2022
|
||||||
|
|
||||||
### Monthly Sync with Georgina
|
### Monthly Sync with Georgina
|
||||||
|
|
||||||
* Setup an incredible workflow in Hubspot
|
* Setup an incredible workflow in Hubspot
|
||||||
* NP activation link
|
* NP activation link
|
||||||
* Dropped into Hubspot > goes in contact field
|
* Dropped into Hubspot > goes in contact field
|
||||||
* Wants to explore gamification and badging
|
* Wants to explore gamification and badging
|
||||||
* Self gratification
|
* Self gratification
|
||||||
* Wants to mimic duolingo
|
* Wants to mimic duolingo
|
||||||
|
|
||||||
|
## 12/20/2022
|
||||||
|
|
||||||
|
### Year End Review & 2023 Planning
|
||||||
|
|
||||||
|
Engagement is the big push.
|
||||||
|
FEAT: Amazon & AI type recommendations, Peer selling, FOMO course enrollment
|
||||||
|
More customers would be ideal, growth
|
||||||
|
Adding courses, bundling of Learning Paths
|
||||||
|
CIP is a big portion of their revenue, they want to add people and sell more CIP exams.
|
||||||
|
Better Leveraging the Hubspot integration
|
||||||
|
|
||||||
|
New President is only 2 weeks old but may have ideas
|
||||||
|
|
||||||
|
_Analytics:_
|
||||||
|
|
||||||
|
* Wishes she could jump into the person a bit more. Look at their "Journey". Self-serving with learner analytics for when they get tickets.
|
||||||
|
* More for Admins
|
||||||
|
* Pulling certain roles & attributes
|
||||||
|
* Being able to impersonate that person, or move them to complete when they are stuck. View what they see.
|
||||||
|
|||||||
@ -166,13 +166,13 @@ This is ONLY for the US
|
|||||||
|
|
||||||
Melinda half day on the 23rd, then off until the 3rd.
|
Melinda half day on the 23rd, then off until the 3rd.
|
||||||
Audio files in the platform did not look how she wanted it to look. The S3 embed is too plain
|
Audio files in the platform did not look how she wanted it to look. The S3 embed is too plain
|
||||||
TODO: If there are no events, remove zero state error message.
|
DONE: If there are no events, remove zero state error message.
|
||||||
TODO: Add Description of the podcast.
|
DONE: Add Description of the podcast.
|
||||||
She doesn't want the S3 Bucket Audio embed anymore, but will add audio files to SCORM files and those will all be individual courses with skip overview page.
|
She doesn't want the S3 Bucket Audio embed anymore, but will add audio files to SCORM files and those will all be individual courses with skip overview page.
|
||||||
TODO: Get rid of fine tuned and change Podcasts to Professional Podcasts - categories.
|
DONE: Get rid of fine tuned and change Podcasts to Professional Podcasts - categories.
|
||||||
|
|
||||||
## 12/14/2022
|
## 12/19/2022
|
||||||
|
|
||||||
### Wednesday Sync
|
### Pre-Holiday Sync
|
||||||
|
|
||||||
adwad
|
TODO: Send Melinda a list of all the information Northpass stores
|
||||||
|
|||||||
@ -247,3 +247,5 @@ Her Ideas:
|
|||||||
|
|
||||||
Course to test: Psychiatry Tickets Training
|
Course to test: Psychiatry Tickets Training
|
||||||
c147d36c-3416-49e2-b665-37342d215d9a
|
c147d36c-3416-49e2-b665-37342d215d9a
|
||||||
|
|
||||||
|
TODO: Add total completion percentage column to Group Reports.
|
||||||
|
|||||||
@ -150,4 +150,4 @@ Best method:
|
|||||||
|
|
||||||
TODO: Zoom Webinars/ILTs and Custom Comms..
|
TODO: Zoom Webinars/ILTs and Custom Comms..
|
||||||
TODO: Send Event Flow to Abby
|
TODO: Send Event Flow to Abby
|
||||||
TODO: Deliver Trei Analytics.
|
DONE: Deliver Trei Analytics.
|
||||||
|
|||||||
74
Scripts/API_Tests/addtogroup_fromcsv.py
Normal file
74
Scripts/API_Tests/addtogroup_fromcsv.py
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
import requests
|
||||||
|
import pandas as pd
|
||||||
|
|
||||||
|
baseCsv = "/Users/normrasmussen/Downloads/Incomplete list for NP monthly communcation 12.19.22 - Users.csv"
|
||||||
|
baseUrl = "https://api.northpass.com/v2/people/"
|
||||||
|
baseUrlname = "https://api.northpass.com/v2/people?filter[name][eq]="
|
||||||
|
baseUrlemail = "https://api.northpass.com/v2/people?filter[email][eq]="
|
||||||
|
# apiKey = "JRDpCGQ7vSRiva6t5OkWDr5eJ" # G2
|
||||||
|
# apiKey = "6hUfJdAartHTHhHc0WIRZYPWe" #Walmart
|
||||||
|
apiKey = "84GO7zb7a990UJrnFJqiYcd0m" # Skuid's API
|
||||||
|
|
||||||
|
|
||||||
|
def getfromEmail(baseUrlemail, baseCsv, apiKey):
|
||||||
|
uuids = []
|
||||||
|
errors = []
|
||||||
|
emails = pd.read_csv(baseCsv, usecols=["EMAIL"])
|
||||||
|
emails = emails["EMAIL"].to_list()
|
||||||
|
for email in emails:
|
||||||
|
email = email.rstrip()
|
||||||
|
url = baseUrlemail + f"{email}"
|
||||||
|
headers = {
|
||||||
|
"accept": "*/*",
|
||||||
|
"x-api-key": apiKey,
|
||||||
|
"content-type": "application/json",
|
||||||
|
}
|
||||||
|
response = requests.get(url, headers=headers)
|
||||||
|
json = response.json()
|
||||||
|
try:
|
||||||
|
uuid = json["data"][0]["id"]
|
||||||
|
uuids.append(uuid)
|
||||||
|
except Exception as e:
|
||||||
|
# print(email)
|
||||||
|
errors.append(email)
|
||||||
|
# print(str(e))
|
||||||
|
# print(response.text)
|
||||||
|
pass
|
||||||
|
# print(uuids)
|
||||||
|
print(errors)
|
||||||
|
addtoGroup(apiKey, uuids)
|
||||||
|
|
||||||
|
|
||||||
|
def addtoGroup(apiKey, uuids):
|
||||||
|
number = 0
|
||||||
|
for x in uuids:
|
||||||
|
url = f"https://api.northpass.com/v2/people/{x}/relationships/groups"
|
||||||
|
payload = {
|
||||||
|
"data": [
|
||||||
|
{
|
||||||
|
"type": "membership-groups",
|
||||||
|
"id": "7b5e5417-bc9f-454a-89a1-347c04225e03",
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
headers = {
|
||||||
|
"accept": "application/json",
|
||||||
|
"content-type": "application/json",
|
||||||
|
"X-Api-Key": apiKey,
|
||||||
|
}
|
||||||
|
response = requests.post(url, json=payload, headers=headers)
|
||||||
|
# print(response)
|
||||||
|
try:
|
||||||
|
number += 1
|
||||||
|
pass
|
||||||
|
except Exception as e:
|
||||||
|
print(str(e))
|
||||||
|
print(response.text)
|
||||||
|
print(x)
|
||||||
|
pass
|
||||||
|
finally:
|
||||||
|
print(f"{number} people added to the group!")
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
getfromEmail(baseUrlemail, baseCsv, apiKey)
|
||||||
Binary file not shown.
Reference in New Issue
Block a user