The Mantle Gateway uses the [Blockchain Data Transfer Protocol] (https://github.com/nic758/bdtp-golang) as a way of interacting with blockchains. The BDTP uses network address as pointers.

Mantle Gateway wraps the pointers in Receipts.

What is the Blockchain Data Transfer Protocol

The BDTP is a way to use blockchain to store data. The network addresses are used a memory pointers and the transactions of a specific address contain the data that is "saved" at this pointer.

The format of these pointers is [chain-prefix][address], example:
WAV3N6MFoFQCTpdquU75j2JKFEkA1KiG4e9LbP

  • WAV is the chain prefix for the Waves network
  • 3N6MFoFQCTpdquU75j2JKFEkA1KiG4e9LbP is the address

WAV3N6MFoFQCTpdquU75j2JKFEkA1KiG4e9LbP is pointer containing data. To see data referenced by this pointer just click on a transaction and look at the "attachement" field.

Mantle Gateway Receipts

Every time the Mantle Gateway is used to post data on a network, a Receipt is made.

Receipt example:

{
  "id":"000000000000000000000000",
  "billId":"000000000000000000000000",
  "pointer":"string",
  "email":"string",
  "clientId":"000000000000000000000000",
  "fileName":"string",
  "creationDate":"2022-12-12T14:09:22.406Z",
  "isDeleted":boolean,
  "queryParams":{JSON}
}

** queryParams are used to give context to the Receipts.