Nft_mint_bulk help needed

The 1.6.1 branch has a spicy new nft_mint_bulk RPC endpoint. The only problem is I can’t get it to work, nor can I get it to tell me why. It returns a spend_bundle just no nft’s get created. I’ve tried passing that to push_tx which returns SUCCESS but still no nft. Nothing of interest in the logs either

The payloads I’m using look like the below. Anyone have insight into how to make this one go?

{
  wallet_id: 7,
  royalty_address: "txch1f7r8hk7hwvqwr977ftxkdllvjgagm76cdf0yydht7s6za6nfzk0q8rcy53",
  royalty_percentage: 250,
  fee: 1000,
  metadata_list: [
    {
      uris: [
        "https://nftstorage.link/ipfs/bafybeif4wg3qb36pvc4vnnoeyownfdaddnmc2drpcqnp6sy4glmlrnkcjq/test-nft-bulk-dkackman",
        "ipfs://bafybeif4wg3qb36pvc4vnnoeyownfdaddnmc2drpcqnp6sy4glmlrnkcjq/test-nft-bulk-dkackman",
      ],
      hash: "8cfc885ad68385dfbe0c2c9f88408d4574319e7b580a4ee545e0d60520878f50",
      meta_uris: [
        "https://nftstorage.link/ipfs/bafybeif4wg3qb36pvc4vnnoeyownfdaddnmc2drpcqnp6sy4glmlrnkcjq/metadata.json",
        "ipfs://bafybeif4wg3qb36pvc4vnnoeyownfdaddnmc2drpcqnp6sy4glmlrnkcjq/metadata.json",
      ],
      meta_hash: "8001608adc8a042292f95c2771f5dd4c94891160c3f54e3bbfd99d7e9a1410f0",
      license_uris: [
        "https://nftstorage.link/ipfs/bafybeif4wg3qb36pvc4vnnoeyownfdaddnmc2drpcqnp6sy4glmlrnkcjq/license",
        "ipfs://bafybeif4wg3qb36pvc4vnnoeyownfdaddnmc2drpcqnp6sy4glmlrnkcjq/license",
      ],
      license_hash: "738742c6e00fada211d0a16dd472c1b4eb4191e9ca3de85a60e2d53a0252e8c7",
      edition_number: 1,
      edition_total: 1,
    },
  ],
  mint_number_start: 1,
  mint_total: 1,
  xch_coin_list: [
    {
      amount: 250000000000,
      parent_coin_info: "0xfc0af20d20c4b3e92ef2a48bd291ccb200000000000000000000000000195513",
      puzzle_hash: "0x582015998793e4b120618033585b62b731a0c90cdb21ac6392b9e49c6c66940e",
    },
  ],
}

I’ve started to figure this out so, in case anyone else can benefit from that here’s a running list of what I’m finding:

  • nft_mint_bulk does not submit the spend_bundle. Nor does it account for the fee. It is up to the caller to construct the fee transaction and combine it with the mint spend_bundle
  • it requires a coin to fund the mint operation. This is different than the fee. The fee amount will be used to select a coin but if fee is zero xch_coin_list must be set. I think it can be even of 1 mojo.
  • there isn’t a limit on the number of mints that can be in a single spend_bundle but the bulk minting tool uses chunks of 25, submitting each chunk as a separate transaction with fee.

from keybase:

it’s unclear to me if 25 mints per bulk mint is a hard or soft limit

it’s not, you can have more per block, but keep in mind that the larger the spend bundle the easier you can get kicked out of the mempool or at least top of the mempool.

1 Like