import csv
import requests
API_ENDPOINT = 'https://gapi.admin.domænenavn.dk/backend/member/import-by-api-key'
API_KEY = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
ORIGIN = 'https://domænenavn.dk'
CSV_FILE = "Kontakter.csv"
members = []
with open(CSV_FILE, newline='', encoding='utf-8-sig') as f:
reader = csv.DictReader(f, delimiter=';')
for row in reader:
member = {
"uuids": [u.strip() for u in row.get("UUID", "").strip('"').split("|") if u.strip()],
"name": row.get("Name", ""),
"email": row.get("EmailAddress", ""),
"firstName": row.get("FirstName", ""),
"surname": row.get("Surname", ""),
"fullName": row.get("FullName", ""),
"title": row.get("Title", ""),
"headOfDepartment": str(row.get("HeadOfDepartment", "False")).lower() == "true",
"mobileNumber": row.get("MobilePhone", ""),
"location": row.get("Location", ""),
"lockForDeletion": str(row.get("lockForDeletion", "False")).lower() == "true",
"roles": [r.strip() for r in row.get("Roles", "").strip('"').split("|") if r.strip()],
"categories": [c.strip() for c in row.get("Categories", "").strip('"').split("|") if c.strip()],
"organizations": [o.strip() for o in row.get("Organizations", "").strip('"').split("|") if o.strip()]
}
members.append(member)
headers = {"x-api-key": API_KEY, "Origin": ORIGIN, "Content-Type": "application/json"}
response = requests.post(API_ENDPOINT, json={"members": members}, headers=headers)
if response.status_code == 200:
print("Success")
else:
print(f"Error: {response.status_code} - {response.text}")