Merge table rows using the Web API
When you find duplicate records you can combine them into one using the Merge Action.
Note
Only the following entity types can be merged:
lead
: Available with Dynamics 365 for Salesincident
: Available with Dynamics 365 for Service
Merge action
Merge is an unbound action that accepts four parameters:
Name | Type | Description | Optional |
---|---|---|---|
Target |
crmbaseentity | The target of the merge operation. | No |
Subordinate |
crmbaseentity | The entity record from which to merge data. | No |
UpdateContent |
crmbaseentity | Additional entity attributes to be set during the merge operation. | Yes |
PerformParentingChecks |
Boolean | Indicates whether to check if the parent information is different for the two entity records. | No |
Merging will move any useful data from the Subordinate
record to the Target
record. Any existing data in the Target
record will not be overwritten. Then the Subordinate
record is deactivated.
To perform this operation the caller must have privileges and access rights to both the records identified as the Target
and Subordinate
.
Use a POST request to send data to merge records.
This example merges two account entity records while updating accountnumber
property of the record that will remain after the merge.
Request:
POST [Organization URI]/api/data/v9.0/Merge HTTP/1.1
Content-Type: application/json; charset=utf-8
OData-MaxVersion: 4.0
OData-Version: 4.0
Accept: application/json
{
"Target": {
"name": "Account 1",
"accountid": "bb8055c0-aea6-ea11-a812-000d3a55d474",
"@odata.type": "Microsoft.Dynamics.CRM.account"
},
"Subordinate": {
"name": "Account 2",
"accountid": "c38055c0-aea6-ea11-a812-000d3a55d474",
"@odata.type": "Microsoft.Dynamics.CRM.account"
},
"UpdateContent": {
"accountnumber": "1234",
"@odata.type": "Microsoft.Dynamics.CRM.account"
},
"PerformParentingChecks": false
}
Important
Because the Target
, Subordinate
, and UpdateContent
property types are not explicitly defined by the parameter, you must include the @odata.type
annotation to specify the type.
Response:
HTTP/1.1 204 No Content
OData-Version: 4.0
Merge behavior for incident
The merge behavior for incident
(case) table is different from account
, contact
, or lead
tables.
The
UpdateContent
parameter data is not used.Merge is performed in the security context of the user
Merge operations for other tables are performed with a system user security context. Because incident merge operations are performed in the security context of the user, the user must have the security privileges to perform any of the actions, such as re-parenting related records, that are performed by the merge operation.
If the user merging records doesn't have privileges for all the actions contained within the merge operation, the merge operation will fail and roll back to the original state.
See also
Use Web API actions
Merge duplicate records
MergeRequest Class
Administration Guide: Merge data
Dynamics 365 for Service: Merge cases
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: