簡體   English   中英

無法使用 REST API 更新 InfusionSoft 中的地址字段

[英]Unable to update address field in InfusionSoft using REST API

我有一個腳本,通過 REST API 更新 InfusionSoft 中的聯系人信息。 除了地址之外,一切都完美無缺。

我將介紹我如何更新 email 和地址,因為 email 可以工作,但地址不會,即使它們應該以相同的方式工作。

elif value == 'email':
        fields_to_update['email_addresses'] = contact['email_addresses']
        for email in fields_to_update['email_addresses']:
            if email['field'] == "EMAIL1":
                email['email'] = updated_values['email']

elif value == 'billing_address_line_1':
        fields_to_update['addresses'] = contact['addresses']
        for address in fields_to_update['addresses']:
            if address['field'] == "BILLING":
                address['line1'] = updated_values['billing_address_line_1']

通過這兩個函數,我創建了一個“updated_fields” object 並像這樣發送它。

new_contact = update_infusionsoft_primary_sandbox_contact_data(current_contact, updated_fields)
patch_parameters = {"access_token": current_company_access_token}
request_url = "https://api.infusionsoft.com/crm/rest/v1/contacts/" + str(current_contact['id'])
headers = {'content-type': 'application/json'}
contact_update = requests.patch(request_url, json=new_contact, params=patch_parameters, headers=headers)

由於某種原因 email 有效。 它會按原樣抓取所有電子郵件,並僅更改已更改的字段。 地址應該以相同的方式工作,但由於某種原因,當包含地址時,我收到 400 響應並且它不會更新任何字段。

這是我目前正在傳遞的失敗。

{'email_addresses': [{'email': 'apu9@kwikimart.com', 'field': 'EMAIL1'}], 'addresses': [{'line1': '106 Street Lane', 'line2': 'Apt 1', 'locality': 'Denver', 'region': 'Co', 'field': 'BILLING', 'postal_code': '12345', 'zip_code': '12345', 'zip_four': '', 'country_code': 'USA'}, {'line1': '400 Clearbrooke Terrace', 'line2': '', 'locality': 'Cottage Grove', 'region': 'Wi', 'field': 'SHIPPING', 'postal_code': '53527', 'zip_code': '53527', 'zip_four': '', 'country_code': 'USA'}]}

您需要為州/地區使用 ISO 區域代碼https://en.wikipedia.org/wiki/ISO_3166-2:US

我去了 infusionsoft api 文檔( https://developer.infusionsoft.com/docs/rest/#!/Contact/createContactUsingPOST )並嘗試了您所擁有的,但使用了州的 ISO 區域代碼並且它有效。 我確實需要將所有單引號轉換為雙引號,以便使用文檔“試用”功能正確添加聯系人,所以這可能是另一個問題?

這是我使用的確切 json 字符串:

{"email_addresses": [{"email": "apu9@kwikimart.com", "field": "EMAIL1"}], "addresses": [{"line1": "106 Street Lane", "line2": "Apt 1", "locality": "Denver", "region": "US-CO", "field": "BILLING", "postal_code": "12345", "zip_code": "12345", "zip_four": "", "country_code": "USA"}, {"line1": "400 Clearbrooke Terrace", "line2": "", "locality": "Cottage Grove", "region": "US-WI", "field": "SHIPPING", "postal_code": "53527", "zip_code": "53527", "zip_four": "", "country_code": "USA"}]}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM