Skip to content

Batch Requests

Batch requests allow grouping multiple individual requests into a single HTTP request payload.

An individual request in the context of a batch request is a * Metadata Request, * Data Request, * Data Modification Request, * Action invocation request, or * Function invocation request.

Format of a Batch Request

  • Request URL: https://{host}:{port}/{main,b2b,int}/ifsapplications/projection/v1/ {projection}.svc/$batch
  • Request Method: POST
  • Content-Type: multipart/mixed;boundary=abc123

Important parts in a Batch Payload

Important parts in a Batch Payload Individual requests and Change Sets are the main contents of a batch request. Change Set is a concept which allow you to bundle couple of requests that needs to be processed in a transactional way. Either all of the request parts in a change set are processed successfully or nothing is committed at all.

Additional Note: You can't specify GET requests inside a Change Set.

Referencing Created Entity & ETag

Referencing Created Entity & ETag You can use Dollar sign ($) with Content-Id header value to refer previously created resource or ETag of the resource as depicted in the above image. In this example when you use $1 as the resource, it refer to the resource created by the request part which has 1 as Content-Id header value. Also ETag value of that resource is referred when you specify $1 in If-Match header.

Execution of a Batch Request

Request parts inside a batch request are processed sequentially as depicted in the following image. Execution of a Batch Request

Continuing on Errors

What if you want to continue execution even if a request part fails? You can specify this need in Prefer header of the batch request as follows. Continuing on Errors

For more details about batch requests please follow this link.