diff --git a/Scripts/Walmart/Supplier/WALMART_API_KEYS.py b/Scripts/Walmart/Supplier/WALMART_API_KEYS.py new file mode 100644 index 00000000..2387911a --- /dev/null +++ b/Scripts/Walmart/Supplier/WALMART_API_KEYS.py @@ -0,0 +1,5 @@ +NORMSANDBOX = "SlpQlju219WnWogn94dQUT6Yt" +SPARKPROD = "6hUfJdAartHTHhHc0WIRZYPWe" +LUMINATE_US = "p5fidpuedHaOlPnd8EcpxzQMG" +SUPPLIERUSPROD = "DtRH9m4r0zMbJEx1yWBGKlObi" +SUPPLIERMXPROD = "zHIVw9dMzsNJLtFdqRXsJHGv3" diff --git a/Scripts/Walmart/Supplier/__pycache__/WALMART_API_KEYS.cpython-310.pyc b/Scripts/Walmart/Supplier/__pycache__/WALMART_API_KEYS.cpython-310.pyc new file mode 100644 index 00000000..3f0b7c03 Binary files /dev/null and b/Scripts/Walmart/Supplier/__pycache__/WALMART_API_KEYS.cpython-310.pyc differ diff --git a/Scripts/Walmart/Supplier/import_us_crece_to_mx.py b/Scripts/Walmart/Supplier/import_us_crece_to_mx.py index 36877bd6..1ab76fcd 100644 --- a/Scripts/Walmart/Supplier/import_us_crece_to_mx.py +++ b/Scripts/Walmart/Supplier/import_us_crece_to_mx.py @@ -1,57 +1,34 @@ import requests import pprint import pandas as pd -import Apikeys +import WALMART_API_KEYS pp = pprint.PrettyPrinter(indent=4) -APIKEY = Apikeys.SUPPLIER +APIKEY = WALMART_API_KEYS.SUPPLIERMXPROD HEADERS = { "accept": "application/json", "X-Api-Key": APIKEY, } -BASEURL = "https://api.northpass.com/v2/" +BASEURL = "https://api2.northpass.com/v2/" IMPORTFILE = "/Users/normrasmussen/Downloads/supplierus-crece-for-mx-import.csv" def main(): + print(APIKEY) data = pd.read_csv(IMPORTFILE) - groups = data["Email"].unique() - groups = list(groups) - print("Here are all groups within the CSV:") - print(groups) - print(" ") - for group in groups: - payload = "" - print(group) - tmp_group = data[data.Group == group] - people = list(tmp_group["Email"]) - group = str(tmp_group["Group"].unique())[2:-2] - print(f"Group --> {group} ... Amount of People --> {len(people)}") - url = f"{BASEURL}bulk/people" - if len(people) > 1500: - for chunk in range(0, len(people), 1500): - i = chunk - payload_1 = [] - i_to_add = people[i : i + 1500] - for person in i_to_add: - miniload = {"email": person, "groups": group} - payload_1.append(miniload) - print(f"The long length {group} payload has {len(payload_1)}") - payload = {"data": {"attributes": {"people": payload_1}}} - response = requests.post(url, headers=HEADERS, json=payload) - print(f"Completed. Status code is {response.status_code}") - else: - payload_1 = [] - for person in people: - miniload = {"email": person, "groups": group} - payload_1.append(miniload) - print(f"The {group} payload has {len(payload_1)}") - payload = {"data": {"attributes": {"people": payload_1}}} - response = requests.post(url, headers=HEADERS, json=payload) - print(f"Completed. Status code is {response.status_code}") - print(response.text) - print("Running add props from func...") - time.sleep(3) - add_props_from_func(people, data, group) + emails = data["email"].unique() + emails = list(emails) + url = f"{BASEURL}bulk/people" + payload_1 = [] + for person in emails: + miniload = {"email": person, "groups": "All Users"} + miniload2 = {"email": person, "groups": "Crece Con Walmart"} + payload_1.append(miniload2) + payload_1.append(miniload) + payload = {"data": {"attributes": {"people": payload_1}}} + print(payload) + response = requests.post(url, headers=HEADERS, json=payload) + print(f"Completed. Status code is {response.status_code}") + print(response.text) if __name__ == "__main__":