[30388f42] Infrastructure Hardening: Repaired CE/Connector DB schema, fixed frontend styling build, implemented robust echo shield in worker v2.1.1, and integrated Lead Engine into gateway.
This commit is contained in:
66
connector-superoffice/tools/so_one_shot_fix.py
Normal file
66
connector-superoffice/tools/so_one_shot_fix.py
Normal file
@@ -0,0 +1,66 @@
|
||||
import os
|
||||
import requests
|
||||
import json
|
||||
from dotenv import load_dotenv
|
||||
|
||||
load_dotenv(dotenv_path="/home/node/clawd/.env", override=True)
|
||||
|
||||
def fix_all_now_v2():
|
||||
# 1. Refresh Token
|
||||
token_url = "https://sod.superoffice.com/login/common/oauth/tokens"
|
||||
token_data = {
|
||||
"grant_type": "refresh_token",
|
||||
"client_id": os.getenv("SO_CLIENT_ID"),
|
||||
"client_secret": os.getenv("SO_CLIENT_SECRET"),
|
||||
"refresh_token": os.getenv("SO_REFRESH_TOKEN"),
|
||||
"redirect_uri": "http://localhost"
|
||||
}
|
||||
t_resp = requests.post(token_url, data=token_data)
|
||||
access_token = t_resp.json().get("access_token")
|
||||
|
||||
if not access_token:
|
||||
print("❌ Token Refresh failed.")
|
||||
return
|
||||
|
||||
# 2. Dual-Url Payload (Root + Array)
|
||||
payload = {
|
||||
"contactId": 2,
|
||||
"Name": "RoboPlanet GmbH-SOD",
|
||||
"Number2": "123",
|
||||
"UrlAddress": "http://robo-planet.de",
|
||||
"Urls": [
|
||||
{
|
||||
"Value": "http://robo-planet.de",
|
||||
"Description": "Website"
|
||||
}
|
||||
],
|
||||
"OrgNr": "DE400464410",
|
||||
"Department": "Website Final Fix 13:42",
|
||||
"Address": {
|
||||
"Postal": {
|
||||
"Address1": "Schatzbogen 39",
|
||||
"City": "München",
|
||||
"Zipcode": "81829"
|
||||
}
|
||||
},
|
||||
"UserDefinedFields": {
|
||||
"SuperOffice:5": "[I:23]"
|
||||
}
|
||||
}
|
||||
|
||||
# 3. Update Call
|
||||
url = "https://app-sod.superoffice.com/Cust55774/api/v1/Contact/2"
|
||||
headers = {
|
||||
"Authorization": f"Bearer {access_token}",
|
||||
"Content-Type": "application/json"
|
||||
}
|
||||
|
||||
resp = requests.put(url, headers=headers, json=payload)
|
||||
|
||||
if resp.status_code == 200:
|
||||
print("🚀 SUCCESS! Website should now be visible via the Urls list.")
|
||||
else:
|
||||
print(f"❌ Error: {resp.text}")
|
||||
|
||||
if __name__ == "__main__":
|
||||
fix_all_now_v2()
|
||||
Reference in New Issue
Block a user