---
title: "Changes to Bulk operations"
method: POST
path: "/v3/{ledgerName}/bulk"
---

# Changes to Bulk operations

`POST /v3/{ledgerName}/bulk`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 14 of 119 revisions.

- **2026-11-03** `f5e817eca038`: 1 info
- **2026-10-14** `5e39ed0a6af9`: 9 warning, 18 info
- **2026-10-09** `0ed18e459f51`: 27 breaking, 20 info
- **2026-10-08** `6dc20ae1430c`: 16 breaking, 3 warning, 9 info
- **2026-10-07** `8de1b9405d3e`: 6 info
- **2026-09-30** `465a208afdae`: 1 info
- **2026-09-30** `b747efd5cd77`: 1 info
- **2026-09-29** `6ff73ac9a6bd`: 1 breaking
- **2026-09-11** `4d2bf2f4e2e5`: 3 breaking, 8 warning, 4 info
- **2026-09-01** `4d28c76b4328`: 1 info
- **2026-08-28** `fe945da1b75d`: 1 breaking
- **2026-08-28** `ccc19a3ae2df`: 1 breaking
- **2026-08-13** `812efd1474d2`: 9 info
- **2026-07-20** `cf34a2749985`: 1 info

## Changes

- **2026-11-03** `f5e817eca038`: 1 info
  - api operation id `bulkOperations` removed and replaced with `v3BulkOperations`
- **2026-10-14** `5e39ed0a6af9`: 9 warning, 18 info
  - removed the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/context` from the response with the `400` status
  - removed the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/context` from the response with the `401` status
  - removed the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/context` from the response with the `403` status
  - removed the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/context` from the response with the `404` status
  - removed the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/context` from the response with the `409` status
  - removed the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/context` from the response with the `500` status
  - removed the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/context` from the response with the `503` status
  - removed the optional property `data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/context` from the response with the `200` status
  - removed the optional property `data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/context` from the response with the `429` status
  - added the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/facts` to the response with the `400` status
  - added the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/facts` to the response with the `401` status
  - added the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/facts` to the response with the `403` status
  - added the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/facts` to the response with the `404` status
  - added the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/facts` to the response with the `409` status
  - added the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/facts` to the response with the `500` status
  - added the optional property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/facts` to the response with the `503` status
  - added the optional property `data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/facts` to the response with the `200` status
  - added the optional property `data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/facts` to the response with the `429` status
  - added the required property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/code` to the response with the `400` status
  - added the required property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/code` to the response with the `401` status
  - added the required property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/code` to the response with the `403` status
  - added the required property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/code` to the response with the `404` status
  - added the required property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/code` to the response with the `409` status
  - added the required property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/code` to the response with the `500` status
  - added the required property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/code` to the response with the `503` status
  - added the required property `data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/code` to the response with the `200` status
  - added the required property `data/items/data/oneOf[#/components/schemas/OrderSkippedResponse]/code` to the response with the `429` status
- **2026-10-09** `0ed18e459f51`: 27 breaking, 20 info
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` list-of-types was widened by adding types `integer` to media type `application/json` of response `400`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` list-of-types was widened by adding types `integer` to media type `application/json` of response `401`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` list-of-types was widened by adding types `integer` to media type `application/json` of response `403`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` list-of-types was widened by adding types `integer` to media type `application/json` of response `404`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` list-of-types was widened by adding types `integer` to media type `application/json` of response `409`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` list-of-types was widened by adding types `integer` to media type `application/json` of response `500`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` list-of-types was widened by adding types `integer` to media type `application/json` of response `503`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` list-of-types was widened by adding types `integer` to media type `application/json` of response `400`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` list-of-types was widened by adding types `integer` to media type `application/json` of response `401`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` list-of-types was widened by adding types `integer` to media type `application/json` of response `403`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` list-of-types was widened by adding types `integer` to media type `application/json` of response `404`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` list-of-types was widened by adding types `integer` to media type `application/json` of response `409`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` list-of-types was widened by adding types `integer` to media type `application/json` of response `500`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` list-of-types was widened by adding types `integer` to media type `application/json` of response `503`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings/items/amount` list-of-types was widened by adding types `string` to media type `application/json` of response `400`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings/items/amount` list-of-types was widened by adding types `string` to media type `application/json` of response `401`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings/items/amount` list-of-types was widened by adding types `string` to media type `application/json` of response `403`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings/items/amount` list-of-types was widened by adding types `string` to media type `application/json` of response `404`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings/items/amount` list-of-types was widened by adding types `string` to media type `application/json` of response `409`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings/items/amount` list-of-types was widened by adding types `string` to media type `application/json` of response `500`
  - response property `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings/items/amount` list-of-types was widened by adding types `string` to media type `application/json` of response `503`
  - response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` list-of-types was widened by adding types `integer` to media type `application/json` of response `200`
  - response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` list-of-types was widened by adding types `integer` to media type `application/json` of response `429`
  - response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` list-of-types was widened by adding types `integer` to media type `application/json` of response `200`
  - response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` list-of-types was widened by adding types `integer` to media type `application/json` of response `429`
  - response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings/items/amount` list-of-types was widened by adding types `string` to media type `application/json` of response `200`
  - response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings/items/amount` list-of-types was widened by adding types `string` to media type `application/json` of response `429`
  - added the new optional `header` request parameter `Formance-Bigint-As-String`
  - request property `items/data/oneOf[#/components/schemas/CreateTransactionRequest]/postings/items/amount` list-of-types was widened by adding types `string` to media type `application/json`
  - the `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` response's property pattern `^(0|[1-9][0-9]*)$` was removed for the status `400`
  - the `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` response's property pattern `^(0|[1-9][0-9]*)$` was removed for the status `401`
  - the `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` response's property pattern `^(0|[1-9][0-9]*)$` was removed for the status `403`
  - the `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` response's property pattern `^(0|[1-9][0-9]*)$` was removed for the status `404`
  - the `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` response's property pattern `^(0|[1-9][0-9]*)$` was removed for the status `409`
  - the `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` response's property pattern `^(0|[1-9][0-9]*)$` was removed for the status `500`
  - the `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` response's property pattern `^(0|[1-9][0-9]*)$` was removed for the status `503`
  - the `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` response's property pattern `^(0|[1-9][0-9]*)$` was removed for the status `400`
  - the `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` response's property pattern `^(0|[1-9][0-9]*)$` was removed for the status `401`
  - the `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` response's property pattern `^(0|[1-9][0-9]*)$` was removed for the status `403`
  - the `anyOf[#/components/schemas/BulkResponse]/data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` response's property pattern `^(0|[1-9][0-9]*)$` was removed for the status `404`
  - …7 more
- **2026-10-08** `6dc20ae1430c`: 16 breaking, 3 warning, 9 info
  - the response's body type changed from `object` to no type for status `400`
  - the response's body type changed from `object` to no type for status `401`
  - the response's body type changed from `object` to no type for status `403`
  - the response's body type changed from `object` to no type for status `404`
  - the response's body type changed from `object` to no type for status `500`
  - the response's body type changed from `object` to no type for status `503`
  - removed the required property `errorCode` from the response with the `401` status
  - removed the required property `errorCode` from the response with the `403` status
  - removed the required property `errorCode` from the response with the `404` status
  - removed the required property `errorCode` from the response with the `500` status
  - removed the required property `errorCode` from the response with the `503` status
  - removed the required property `errorMessage` from the response with the `401` status
  - removed the required property `errorMessage` from the response with the `403` status
  - removed the required property `errorMessage` from the response with the `404` status
  - removed the required property `errorMessage` from the response with the `500` status
  - removed the required property `errorMessage` from the response with the `503` status
  - removed the optional property `data` from the response with the `400` status
  - removed the optional property `errorCode` from the response with the `400` status
  - removed the optional property `errorMessage` from the response with the `400` status
  - added the new optional `header` request parameter `Idempotency-Key`
  - added `#/components/schemas/BulkResponse, #/components/schemas/ErrorResponse` to the response body `anyOf` list for the response status `400`
  - added `#/components/schemas/BulkResponse, #/components/schemas/ErrorResponse` to the response body `anyOf` list for the response status `401`
  - added `#/components/schemas/BulkResponse, #/components/schemas/ErrorResponse` to the response body `anyOf` list for the response status `403`
  - added `#/components/schemas/BulkResponse, #/components/schemas/ErrorResponse` to the response body `anyOf` list for the response status `404`
  - added `#/components/schemas/BulkResponse, #/components/schemas/ErrorResponse` to the response body `anyOf` list for the response status `500`
  - added `#/components/schemas/BulkResponse, #/components/schemas/ErrorResponse` to the response body `anyOf` list for the response status `503`
  - added the media type `text/plain` for the response with the status `401`
  - added the non-success response with the status `409`
- **2026-10-07** `8de1b9405d3e`: 6 info
  - the `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` response's property pattern `^(0|[1-9][0-9]*)$` was added for the status `200`
  - the `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` response's property pattern `^(0|[1-9][0-9]*)$` was added for the status `400`
  - the `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/input` response's property pattern `^(0|[1-9][0-9]*)$` was added for the status `429`
  - the `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` response's property pattern `^(0|[1-9][0-9]*)$` was added for the status `200`
  - the `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` response's property pattern `^(0|[1-9][0-9]*)$` was added for the status `400`
  - the `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postCommitVolumes/additionalProperties/items/output` response's property pattern `^(0|[1-9][0-9]*)$` was added for the status `429`
- **2026-09-30** `465a208afdae`: 1 info
  - added the new optional request property `items/data/oneOf[#/components/schemas/CreateTransactionRequest]/force`
- **2026-09-30** `b747efd5cd77`: 1 info
  - endpoint added
- **2026-09-29** `6ff73ac9a6bd`: 1 breaking
  - api path removed without deprecation
- **2026-09-11** `4d2bf2f4e2e5`: 3 breaking, 8 warning, 4 info
  - the `data/items/data/oneOf[#/components/schemas/TransactionResponse]/metadata/additionalProperties/oneOf[subschema #2]/` response's property format changed from `int64` to no format for status `200`
  - the `data/items/data/oneOf[#/components/schemas/TransactionResponse]/metadata/additionalProperties/oneOf[subschema #2]/` response's property format changed from `int64` to no format for status `400`
  - the `data/items/data/oneOf[#/components/schemas/TransactionResponse]/metadata/additionalProperties/oneOf[subschema #2]/` response's property format changed from `int64` to no format for status `429`
  - the `items/data/oneOf[#/components/schemas/AddMetadataRequest]/metadata/additionalProperties/oneOf[subschema #2]/` request property's max was set to `18446744073709551616.00`
  - the `items/data/oneOf[#/components/schemas/CreateTransactionRequest]/accountMetadata/additionalProperties/additionalProperties/oneOf[subschema #2]/` request property's max was set to `18446744073709551616.00`
  - the `items/data/oneOf[#/components/schemas/CreateTransactionRequest]/metadata/additionalProperties/oneOf[subschema #2]/` request property's max was set to `18446744073709551616.00`
  - the `items/data/oneOf[#/components/schemas/RevertTransactionRequest]/metadata/additionalProperties/oneOf[subschema #2]/` request property's max was set to `18446744073709551616.00`
  - the `items/data/oneOf[#/components/schemas/AddMetadataRequest]/metadata/additionalProperties/oneOf[subschema #2]/` request property's min was set to `-9223372036854775808.00`
  - the `items/data/oneOf[#/components/schemas/CreateTransactionRequest]/accountMetadata/additionalProperties/additionalProperties/oneOf[subschema #2]/` request property's min was set to `-9223372036854775808.00`
  - the `items/data/oneOf[#/components/schemas/CreateTransactionRequest]/metadata/additionalProperties/oneOf[subschema #2]/` request property's min was set to `-9223372036854775808.00`
  - the `items/data/oneOf[#/components/schemas/RevertTransactionRequest]/metadata/additionalProperties/oneOf[subschema #2]/` request property's min was set to `-9223372036854775808.00`
  - the `items/data/oneOf[#/components/schemas/AddMetadataRequest]/metadata/additionalProperties/oneOf[subschema #2]/` request property format was generalized from `int64` to no format
  - the `items/data/oneOf[#/components/schemas/CreateTransactionRequest]/accountMetadata/additionalProperties/additionalProperties/oneOf[subschema #2]/` request property format was generalized from `int64` to no format
  - the `items/data/oneOf[#/components/schemas/CreateTransactionRequest]/metadata/additionalProperties/oneOf[subschema #2]/` request property format was generalized from `int64` to no format
  - the `items/data/oneOf[#/components/schemas/RevertTransactionRequest]/metadata/additionalProperties/oneOf[subschema #2]/` request property format was generalized from `int64` to no format
- **2026-09-01** `4d28c76b4328`: 1 info
  - endpoint added
- **2026-08-28** `fe945da1b75d`: 1 breaking
  - api path removed without deprecation
- **2026-08-28** `ccc19a3ae2df`: 1 breaking
  - the request property `items/data/oneOf[#/components/schemas/CreateTransactionRequest]/scriptReference/version` became required
- **2026-08-13** `812efd1474d2`: 9 info
  - the response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/metadata` became required for the status `200`
  - the response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/metadata` became required for the status `400`
  - the response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/metadata` became required for the status `429`
  - the response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings` became required for the status `200`
  - the response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings` became required for the status `400`
  - the response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/postings` became required for the status `429`
  - the response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/reverted` became required for the status `200`
  - the response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/reverted` became required for the status `400`
  - the response property `data/items/data/oneOf[#/components/schemas/TransactionResponse]/reverted` became required for the status `429`
- **2026-07-20** `cf34a2749985`: 1 info
  - endpoint added

---

[Operation](https://skmtc.dev/formancehq/apis/ledger-api/docs/v3/:ledgerName/bulk/post.md) - [API](https://skmtc.dev/formancehq/apis/ledger-api.md) - [Page](https://skmtc.dev/formancehq/apis/ledger-api/changes/v3/:ledgerName/bulk/post)
