Files
Gainsight/Scripts/API_Tests/multi_group_reduce_to_one.py

36 lines
1.0 KiB
Python

import pprint
import Apikeys
import requests
APIKEY = Apikeys.DATASNIPPER
BASEURL = "https://api.northpass.com/v2"
HEADERS = { "content-type": "appliation/json", "X-Api-Key": APIKEY }
PP = pprint.PrettyPrinter(indent=4)
ALL_LEARNERS_GROUP = "2e274dc7-3abe-4575-8b3d-0c8e73a09f44"
def grab_people():
count = 0
while True:
count += 1
url = f"{BASEURL}/people?page={count}"
get_response = requests.get(url, headers=HEADERS)
resp = get_response.json()
nextlink = resp["links"]
for peeps in resp["data"]:
id = peeps["id"]
email = peeps["attributes"]["email"]
groups = peeps["relationships"]["groups"]
if len(groups['data']) >= 2:
for y in groups['data']:
if ALL_LEARNERS_GROUP in y['id']:
print(email, id)
# if 'ecb95453-7196-4392-8a24-392bf14b0480' in y:
if "next" not in nextlink:
break
if __name__ == "__main__":
grab_people()