Batch

Submit batch transactions

This allows you to submit multiple transactions. The response has three outcomes:

  1. All transactions succeed, and it will return a 202
  2. Some transactions succeed, and it will return the failed transactions and a 206
  3. No transactions succeed, and it will also return the failed transactions and a 206

To submit a transaction as JSON, you must submit a SubmitTransactionRequest. To build this request, do the following:

  1. Encode the transaction as BCS. If you are using a language that has native BCS support, make sure to use that library. If not, you may take advantage of /transactions/encode_submission. When using this endpoint, make sure you trust the node you're talking to, as it is possible they could manipulate your request.
  2. Sign the encoded transaction and use it to create a TransactionSignature.
  3. Submit the request. Make sure to use the "application/json" Content-Type.

To submit a transaction as BCS, you must submit a SignedTransaction encoded as BCS. See SignedTransaction in types/src/transaction/mod.rs. Make sure to use the application/x.aptos.signed_transaction+bcs Content-Type.

POSThttps://apt.nownodes.io/v1/transactions/batch
Body
sender*Address (string (hex))

A hex encoded 32 byte Aptos account address.

This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.

For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.

Example: "0x88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1 "
sequence_number*U64 (string (uint64))

A string containing a 64-bit unsigned integer.

We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.

Example: "32425224034"
max_gas_amount*U64 (string (uint64))

A string containing a 64-bit unsigned integer.

We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.

Example: "32425224034"
gas_unit_price*U64 (string (uint64))

A string containing a 64-bit unsigned integer.

We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.

Example: "32425224034"
expiration_timestamp_secs*U64 (string (uint64))

A string containing a 64-bit unsigned integer.

We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.

Example: "32425224034"
payload*TransactionPayload (object)

An enum of the possible transaction payloads

signature*TransactionSignature (object)

An enum representing the different transaction signatures available

Response
Headers
Body
transaction_failures*array of TransactionsBatchSingleSubmissionFailure (object)

Summary of the failed transactions

Request
const response = await fetch('https://apt.nownodes.io/v1/transactions/batch', {
    method: 'POST',
    headers: {
      "Content-Type": "application/json"
    },
    body: JSON.stringify([
      {
        "sender": "0x88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1 ",
        "sequence_number": "32425224034",
        "max_gas_amount": "32425224034",
        "gas_unit_price": "32425224034",
        "expiration_timestamp_secs": "32425224034",
        "payload": {
          "type": "entry_function_payload",
          "function": "0x1::aptos_coin::transfer",
          "type_arguments": [
            "text"
          ],
          "arguments": []
        },
        "signature": {
          "type": "ed25519_signature",
          "public_key": "0x88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1 ",
          "signature": "0x88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1 "
        }
      }
    ]),
});
const data = await response.json();
Response
{
  "transaction_failures": [
    {
      "error": {
        "message": "text",
        "error_code": "account_not_found",
        "vm_error_code": 0
      },
      "transaction_index": 0
    }
  ]
}

Last updated