knowledgecenter-breadcrum

Knowledge Center

23 Mar, 2023

Batch Request to Create, Update and Delete records in Dynamics 365 CE

Posted on 23 Mar, 2023 by Admin, Posted in Dataverse Dynamics 365 Dynamics 365 Web Api

Batch Request to Create, Update and Delete records in Dynamics 365 CE Blogs

Batch Request allows us to make multiple API calls within a single API call.  We’re limited to 1000 API calls in a single batch request. The HTTP method only supports POST, PATCH & DELETE in Batch Request.

In this Blog, We’re calling 3 API calls in a single Batch Request.

POST – Create a new Account Record
PATCH – Update a Contact Record
DELETE – Delete a Contact Record

Request Body Data:

--batch_CR
Content-Type: multipart/mixed;boundary=changeset_EHEE

--changeset_EHEE
Content-Type: application/http
Content-Transfer-Encoding:binary
Content-ID: 1

POST https://dynamicstrial.api.crm.dynamics.com/api/data/v9.1/accounts HTTP/1.1
Content-Type: application/json;type=entry

{
    "name":"ABC Company",
    "accountnumber":"ABC001",    
}

--changeset_EHEE
Content-Type: application/http
Content-Transfer-Encoding:binary
Content-ID: 2

PATCH https://dynamicstrial.api.crm.dynamics.com/api/data/v9.1/contacts(d5638eb7-6e87-ed11-81ac-6045bd0061f1) HTTP/1.1
Content-Type: application/json;type=entry

{
    "firstname":"Young",
    "lastname":"God",
    "emailaddress1":younggod@hotmail.com
}

--changeset_EHEE
Content-Type: application/http
Content-Transfer-Encoding:binary
Content-ID: 3

DELETE https://dynamicstrial.api.crm.dynamics.com/api/data/v9.1/contacts(a5638eb7-6e87-ed11-81ac-6045bd0061f1) HTTP/1.1
Content-Type: application/json;type=entry

--changeset_EHEE--

--batch_CR--
Here are few key things to know :

Changeset is a transactional operation which means if any operations fail then all completed operations will be rolled back.
Each individual request in the batch request body must start with–batch_
Each individual changeset request operation must start with–changeset_
End of the changeset is set with –changeset_–
End of the batch is set with –batch_–
Header:


OData-MaxVersion:4.0
OData-Version:4.0
Accept:application/json
Content-Type:multipart/mixed;boundary=batch_CR
Prefer:odata.include-annotations=”*”,return=representation

NOTE: You must include ” boundary= batch_>” in Content-Type of your header.

Now click on Send Request.


This Batch request will Create, Update and Delete record in desired Entity with status “200 OK” in the response body.

Happy D365ing.

Comment

This is a Required Field

Loading

Recent Updates

Blogs
01 Oct, 2026

Catch Blocks That Actually Catch: Logging Failed Steps in Power Automate

Introduction Most teams building Power Automate flows eventually land on the same pattern: wrap your business logic in a Scope,…

READ MORE
Blogs
01 Oct, 2026

Automatically Refresh a PCF Dataset Grid After Closing a Custom Page in Dynamics 365

Introduction Custom Pages provide a modern way to edit records in Dynamics 365. A common approach is to open a…

READ MORE
Blogs
23 Sep, 2026

How to Dynamically Switch Business Process Flow When Changing Forms in Dynamics 365

How to Dynamically Switch Business Process Flow When Changing Forms in Dynamics 365 Introduction Microsoft Dynamics 365 provides powerful customization…

READ MORE