After retrieving a transaction resource using the REST API, clients can send additional REST API calls within the scope of that transaction. After committing the transaction, the pending changes will be persisted in a single atomic operation. Validation, event-driven workflows, and other asynchronous operations are not triggered until the transaction is committed, which may provide a performance increase for some types of iterative tasks. Transactions can also be rolled back, as if they never occurred.
Similar in concept, the Batch Operations API allows multiple operations to occur in a SINGLE REST API call, and will also be persisted in a single atomic operation. If the client can build the full set of changes in a single request, the batch operation API may provide additional performance benefits over those provided by transactions. If the client must build changes iteratively, this API must be used. Note: batch operations can also occur within the scope of a transaction.
curl -v -X POST "http://localhost:8080/rest/fcr:tx"