Python - Dynamics CRM Web API - SuppressDuplicateDetection 不工作

Python - Dynamics CRM Web API - SuppressDuplicateDetection Not working

我 运行 遇到了在 Dynamics CRM API 中 Suppress Duplicate Detection 的问题。我正在对线索进行排位赛,并且在某些线索上触发了重复检测。我有一些逻辑来决定我们是否要抑制某些线索上的 so 我想绕过该检测。

发生的事情是它在请求时不起作用 headers 我设置了 MSCRM.SuppressDuplicateDetection: true 但它仍然不符合领先条件。

这是我的完整代码:

    api_surpress_dup_detection_headers = {
    "Authorization": BEARER,
    "If-None-Match": None,
    "OData-Version": "4.0",
    "OData-MaxVersion": "4.0",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "MSCRM.SuppressDuplicateDetection": "true",
    "If-Match": "*"
}

lead_qualify_url = f"{data_url}leads({lead_guid})/Microsoft.Dynamics.CRM.QualifyLead"
data = {
    'CreateAccount': False,
    'CreateContact': True,
    'CreateOpportunity':False,
    'Status':3
}
qualify_lead_response = requests.post(lead_qualify_url, headers=api_surpress_dup_detection_headers, data=json.dumps(data))

我得到的结果是:

<Response [412]> '{"error":{"code":"0x80040333","message":"A record was not created or updated because a duplicate of the current record already exists."}}'

如果有人在此之前解决了这个问题,我将不胜感激!

documentation,我看到在请求 header 中添加 MSCRM.SuppressDuplicateDetection 适用于 CREATE 和 UPDATE 请求。

对于 QualifyLead 操作 - 这可能略有不同。而不是添加请求 header - 您可能需要包含在有效载荷中,如 this blog.

中所述
this.SuppressDuplicateDetection = true  // or false

"SuppressDuplicateDetection": {
     "typeName": "Edm.Boolean", "structuralProperty": 1
 }

谢谢@Arun Vinoth 这是我在其他人遇到此问题时使用的最终代码

api_surpress_dup_detection_headers = {
    'Authorization': BEARER,
    'OData-Version': '4.0',
    'OData-MaxVersion': '4.0',
    'Content-Type': 'application/json',
    'Accept': 'application/json',
    'MSCRM.SuppressDuplicateDetection': 'true'
}

lead_qualify_url = f"{data_url}leads({lead_guid})/Microsoft.Dynamics.CRM.QualifyLead"
data = {
    'CreateAccount': False,
    'CreateContact': True,
    'CreateOpportunity':False,
    'Status':3,
    'SuppressDuplicateDetection': True
}
qualify_lead_response = requests.post(lead_qualify_url, headers=api_surpress_dup_detection_headers, data=json.dumps(data))

您应该会收到 200 条回复,一切顺利!