SCIM 2.0 Bulk Operations (RFC 7644 Section 3.7).
Summary
Types
A parsed bulk operation with its method, bulk ID, resource path, data, and optional version.
A bulk response operation containing the result status, optional location, version, and response body for each processed operation.
Functions
Process a bulk request with multiple operations.
Types
@type bulk_operation() :: %{ method: binary(), bulkId: binary(), path: binary(), data: map() | nil, version: binary() | nil }
A parsed bulk operation with its method, bulk ID, resource path, data, and optional version.
@type bulk_response_operation() :: %{ method: binary(), bulkId: binary(), version: binary() | nil, location: binary() | nil, response: map() | nil, status: binary() }
A bulk response operation containing the result status, optional location, version, and response body for each processed operation.
Functions
Process a bulk request with multiple operations.
Parameters
bulk_request- Map containing SCIM bulk requestcaller- The authenticated principal making the requestopts- Options including::fail_on_errors- Number of errors before stopping (default: 0 = continue):max_operations- Maximum operations allowed (default: 1000):max_payload_size- Maximum payload size in bytes (default: 1MB):base_url- Base URL for location headers
Returns
{:ok, bulk_response}- Bulk response with operation results{:error, reason}- Error if bulk request is invalid