---
title: "Best Practice | Batch Requests"
slug: "making-batch-requests"
updated: 2025-09-15T20:59:32Z
published: 2025-09-15T20:59:32Z
canonical: "developers.cmicglobal.com/making-batch-requests"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://developers.cmicglobal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Best Practice | Batch Requests

## Introduction

CMIC’ s REST platform supports execution of multiple operations in a single batch request. The platform commits data at the end of the request, so that if one batch request fails all changes are rolled back and an error response is returned.

## Request

- URL
  - [BASE URL]/[Application]/rest
- HTTP Method
  - POST
- Content-Type
  - application/vnd.oracle.adf.batch+json

### Payload

The payload structure is broken into parts, where each part represents a record created within the batch. The structure is as follows:

#### Parts

This is a list of part objects, and each part includes the following attributes: id, path, operation, and payload.

          Notice

          

All of the attributes listed in this section are **REQUIRED**.

Following tables describes each of the required **parts** attribute.

| Attribute | Description |
| --- | --- |
| path | This is the path to the endpoint resource. As an example /1/pyemployee is used for HCM employee resource. |
| operation | This is the specific operation that is executed for this resource. Available values are create, update, delete, upsert, and get |
| id | Unique id of object, this is to identify a specific request. |
| payload | This section lists endpoint specific attributes. |

#### Example

```
{
    "parts": [
        {
            "path": "/1/[resource]",
            "operation": "create",
            "id": "part1",            
            "payload": {
                "attribute 1" : "value",
                "attribute 2" : "value",
                "attribute 3" : "value"
            }
        }
    ]
}
```

#### Scenario: Updating multiple Employees

This request is for updating multiple employee records in CMiC HCM application.

- URL
  - [BASE URL]/hcm-rest-api/rest
- HTTP Method
  - POST
- Content-Type
  - application/vnd.oracle.adf.batch+json
- Payload

```
{
    "parts": [
        {
            "id": "part1",
            "path": "/1/pyemployee",
            "operation": "create",
            "payload": {
                "attribute 1" : "value",
                "attribute 2" : "value",
                "attribute 3" : "value"
            }
        }
    ]
}
```

Batch Requests are currently supported for: [AR Invoices](/ar-rest-api/rest/1/arinvoice) [CI Inventory Issues with Requisition](/ci-rest-api/rest/1/ciinventoryissue) [PY Timesheets](https://developers.cmicglobal.com/apidocs/create-a-py-employee-timesheet) [PY Employees](/hcm-rest-api/rest/1/pyemployee) [PY Employee Securities](https://developers.cmicglobal.com/apidocs/create-multiple-py-employee-securities)
