Sending Bulk Request


Bulk request will allow client to send up to 500 (or 5000 for 'id type') CRUD operations in a single request. All operations in a request would be of same type and version meaning a client cannot send a mixed resources request. The order of execution is not guarantee as it is multithreaded execution. The server will parse the request and validate its structure and size, if request is valid, and no other bulk already in progress, execution will start, and the server will return to client status code 202 (ACCEPTED) and a bulk unique Identifier in the 'Location' response header. This ID will allow the client to track the bulk status later on. The status report will be available at least 2 hours from its start time. If a failure occurs while executing on a resource, the failure will be logged in status report and the execution will proceed to next resource meaning that each resource has its own transaction. Only one bulk is allowed to run at a time. If a bulk request was posted while another bulk is still running, the server will return with a response status 503 (Service Unavailable) with a corresponding descriptive message asking the client to try again later.
Two types of bulk request available: 1) operation that requires the resource XML itself like creating or updating a resource. 2) Operation that requires the only resource id like delete, register endpoint, email guestuser etc... The bulk request supports 500 resources of the first type or 5000 of the second per a single request. Bulk Operation in ISE 1.3 release is supported for Endpoint and GuestUser. Please Check The API Documentation section for more details about each specific request.
Bulk Request Charasteristics:
Description Bulk Request
Synopsis PUT /ers/config/{resource type}/bulk
Request Headers CONTENT-TYPE, AUTHORIZATION
Request Message Body XML representation of the bulk request
Response Headers Content-Length, Content-Type
Response : 202 with Bulkid in the Location Header
Response Status 200, 400, 401, 403, 415, 500


The example below shows the request and response for endpoint create bulk request:

Monitoring bulk execution status


After a successful Bulk Request, The server responding with 202 + bulkid in the Location header. This bulkid can be used to fetch a Bulk Execution Status. The BulkStatus object holds for each item in the bulk request, a status entry which describe the execution status. The status is kept in the server for two hours and after that its deleted.
Bulk Status Request Charasteristics:
Description Bulk Status Request
Synopsis GET /ers/config/{resource type}/bulk/{bulkid}
Request Headers CONTENT-TYPE, AUTHORIZATION
Request Message Body No Content
Response Headers Content-Length, Content-Type
Response : Content: BulkStatus
Response Status 200, 400, 401, 403, 415, 500


The example below shows the request and response for endpoint create bulk request status: