Event class interface

1. Transfer event

1.1 Create transfer event

  • Introduction
    • The most basic on-chain equity transfer, which Enables an asset to be transferred directly from address A to address B.
    • The asset type is assetType, the quantity is amount, and the minimum unit is 1. 1BFM = 100000000
  • The full name of the interface: trTransferAsset
  • Interface abbreviation: tta
  • Callable methods: Http, Websocket, command line
  • Calling method: post
  • Interface url address: /api/transaction/trTransferAsset
  • Request parameters:
    interface TrTransferAsset extends TransactionCommonParams{
    /**The chain name of the transferred equity, composed of lowercase letters, 3-8 digits */
    sourceChainName: string;
    /**The network identifier of the chain to which the transferred equity belongs, composed of uppercase letters or numbers, 5 characters, and the last digit is the check digit */
    sourceChainMagic: string;
    /**Name of the transferred equity, composed of uppercase letters, 3-5 characters */
    assetType: string;
    /**The amount of transferred equity, composed of 0-9 and excluding the decimal point, must be greater than 0 */
    amount: string;
    /**The receiving account address of the event, base58-encoded hexadecimal string */
    recipientId: string;
    }
  • Return parameters:
    type TrTransferAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete transfer event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.TransferAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    1.2 Create transfer event (with security key)

  • The full name of the interface: trTransferAssetWithSign
  • Interface abbreviation: none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/trTransferAssetWithSign
  • Request parameters:
    interface PackageTrTransferAssetParam {
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Event signature */
    signature: string;
    }
  • Return parameters:
    interface PackageTrTransferAssetRespParam = {
    /**Success */
    success: true;
    result: {
        /** The buffer generated by the event body, base64 string */
        buffer: string
       };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    1.3 Send transfer event

  • The full name of the interface: transferAsset
  • Interface abbreviation: none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/transferAsset
  • Request parameters:
    interface SendTrTransferAssetParam {
    /**The buffer that needs to be signed is converted to a base64 string */
    buffer: string;
    /**Signature of the transaction */
    signature: string;
    /**Security signature of the transaction */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrTransferAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete transfer event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.TransferAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    2. Set a security password event

    2.1 Create and set a security password event

  • Introduction
    • This event sets security password for address. The address that has been configured with security password needs the signature of the security password to pass the authentication in all subsequent events.
    • Sending this event repeatedly can change the security password, the latest security password is subject to the event that connects to the chain on the last time.
  • The full name of the interface: trSignature
  • Interface abbreviation: tsi
  • Callable methods: Http, Websocket, command line
  • Calling method: post
  • Interface url address: /api/transaction/trSignature
  • Request parameters:
    interface TrSignature extends TransactionCommonParams{
    newSecondSecret: string;
    }
  • Return parameters:
    type TrSignatureRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete Setup Security Password Events */
    result: BFMetaCore.TransactionJSON<BFMetaCore.SignatureAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    2.2 Create and set a security password event (with security key)

  • The full name of the interface: trSignatureWithSign
  • Interface abbreviation: none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/trSignatureWithSign
  • Request parameters:
    interface PackageTrSignatureParam {
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Event signature */
    signature: string;
    }
  • Return parameters:
    interface PackageTrSignatureRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    2.3 Send setting security password event

  • The full name of the interface: signature
  • Interface abbreviation: none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/trSignature
  • Request parameters:
    interface SendTrSignatureParam {
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the transaction */
    signature: string;
     /**Security signature of the transaction */
    signSignature: string;
    }
  • Return parameters:
    type SendTrSignatureRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete Setup Security Password Events */
    result: BFMetaCore.TransactionJSON<BFMetaCore.SignatureAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    3. Set username event

    3.1 Create a set username event

  • Introduction
    • This event will set the username for address. The username will be displayed on the chain.
    • Each address has only one chance to set the username, and the username cannot be changed.
  • The full name of the interface: trUsername
  • Interface abbreviation:tusr
  • Callable methods: Http, Websocket, command line
  • Calling method: post
  • Interface url address: /api/transaction/trUsername
  • Request parameters:
    interface TrUsernam extends TransactionCommonParams{
    /**User name string, composed of uppercase and lowercase letters, numbers, and underscores, 1-20 characters, cannot contain this chain name */
    alias: string;
    }
  • Return parameters:
    type TrUsernameRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete set username event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.UsernameAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    3.2 Create and set user name event (with security key)

  • The full name of the interface: trUsernameWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/trUsernameWithSign
  • Request parameters:
    interface PackageTrUsernameParam {
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Event signature */
    signature: string;
    }
  • Return parameters:
    type PackageTrUsernameRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    3.3 Send setting user name event

  • The full name of the interface: username
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/username
  • Request parameters:
    interface SendTrUsernameParam {
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the transaction */
    signature: string;
     /**Security signature of the transaction */
    signSignature: string;
    }
  • Return parameters:
    type SendTrUsernameRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete set username event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.UsernameAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    4. Registered Trustee Events

    4.1 Create registered trustee event

  • Introduction
    • This event will register the address as trustee. When there are enough votes, the address that becomes trustee can get the quota for forging blocks
    • Each address has only one opportunity to register trustee and cannot be cancelled after registration.
  • The full name of the interface: trDelegate
  • Interface abbreviation:tdeg
  • Callable methods: Http, Websocket, command line
  • Calling method: post
  • Interface url address: /api/transaction/trDelegate
  • Request parameters:
    interface TrDelegate extends TransactionCommonParams {
    }
  • Return parameters:
    type TrDelegateRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete Registration for Trustee Events */
    result: BFMetaCore.TransactionJSON<BFMetaCore.DelegateAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    4.2 Create registered trustee event (with security key)

  • The full name of the interface: trDelegateWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/trDelegateWithSign
  • Request parameters:
    interface PackageTrDelegateParam {
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Event signature */
    signature: string;
    }
  • Return parameters:
    type PackageTrDelegateRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    4.3 Sending registered trustee events

  • The full name of the interface: delegate
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/delegate
  • Request parameters:
    interface SendTrDelegateParam {
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the transaction */
    signature: string;
     /**Security signature of the transaction */
    signSignature: string;
    }
  • Return parameters:
    type SendTrDelegateRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete Registration for Trustee Events */
    result: BFMetaCore.TransactionJSON<BFMetaCore.DelegateAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    5. Receive voting events

    5.1 Create a receiving voting event

  • Introduction
    • This event will enable the trustee address to receive votes, only enable this feature can the address be voted.
  • The full name of the interface: trAcceptVote
  • Interface abbreviation:tav
  • Callable methods: Http, Websocket, command line
  • Calling method: post
  • Interface url address: /api/transaction/trAcceptVote
  • Request parameters:
    interface TrAcceptVote extends TransactionCommonParams {
    }
  • Return parameters:
    type TrAcceptVoteRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete Receive voting Event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.AcceptVoteAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    5.2 Create a receiving voting event (with security key)

  • The full name of the interface: trAcceptVoteWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/trAcceptVoteWithSign
  • Request parameters:
    interface PackageTrAcceptVoteParam {
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Event signature */
    signature: string;
    }
  • Return parameters:
    type PackageTrAcceptVoteRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    5.3 Send and receive voting events

  • The full name of the interface: acceptVote
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/acceptVote
  • Request parameters:
    interface SendTrAcceptVoteParam {
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the transaction */
    signature: string;
     /**Security signature of the transaction */
    signSignature: string;
    }
  • Return parameters:
    type SendTrAcceptVoteRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete Receive Poll Event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.AcceptVoteAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    6. Refusal to vote event

    6.1 Create a rejection vote event

  • Introduction
    • This event will disable the feature of trustee address receiving votes, only enable this feature can the address be voted.
  • The full name of the interface: trRejectVote
  • Interface abbreviation:trv
  • Callable methods: Http, Websocket, command line
  • Calling method: post
  • Interface url address: /api/transaction/trRejectVote
  • Request parameters:
    interface TrRejectVote extends TransactionCommonParams {
    }
  • Return parameters:
    type TrRejectVoteRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete downvote event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.RejectVoteAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    6.2 Create a rejection vote event (with security key)

  • The full name of the interface: trRejectVoteWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/trRejectVoteWithSign
  • Request parameters:
    interface PackageTrRejectVoteParam {
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Event signature */
    signature: string;
    }
  • Return parameters:
    type PackageTrRejectVoteRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    6.3 Send rejection vote event

  • The full name of the interface: rejectVote
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/rejectVote
  • Request parameters:
    interface SendTrRejectVoteParam {
    /**The buffer that needs to be signed is converted to a base64 string */
    buffer: string;
    /**Signature of the transaction */
    signature: string;
     /**Security signature of the transaction */
    signSignature: string;
    }
  • Return parameters:
    type SendTrRejectVoteRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete downvote event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.RejectVoteAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    7. Voting event

    7.1 Create a voting event

  • Introduction
    • This event can vote to the trustee address.
    • At the end of the round, 57 addresses with the highest number of votes counted in this round are selected as forgers.
    • Whether one can continuously become a forger is determined by the consensus of the Genesis Block.
  • The full name of the interface: trVote
  • Interface abbreviation:tv
  • Callable methods: Http, Websocket, command line
  • Calling method: post
  • Interface url address: /api/transaction/trVote
  • Request parameters:
    interface TrVote extends TransactionCommonParams {
    /**The number of equity voted, composed of 0-9 and excluding the decimal point, allowed to be 0 */
    equity: string;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
    }
  • Return parameters:
    type TrVoteRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**complete voting event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.VoteAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    7.2 Create voting event (with security key)

  • The full name of the interface: trVoteWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/trVoteWithSign
  • Request parameters:
    interface PackageTrVoteParam {
    /**The buffer generated by the event body without signature is generated by trVote */
    buffer: string;
    /**Event signature */
    signature: string;
    }
  • Return parameters:
    type PackageTrVoteRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    7.3 Send voting events

  • The full name of the interface: vote
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/vote
  • Request parameters:
    interface SendTrCommonParam {
    /**The buffer that needs to be signed is converted to a base64 string */
    buffer: string;
    /**Signature of the transaction */
    signature: string;
     /**Security signature of the transaction */
    signSignature: string;
    }
  • Return parameters:
    type SendTrVoteRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete voting event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.VoteAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    8. Issue dapp event

8.1 Create and release dapp event

  • Introduction

    • Experimental interface
    • Create a unique dappid on the chain
    • The free Dappid is open for everyone to use, and for the paid dappid, others need to buy the right to use before using, a purchase, lifetime use
    • If the owner of the dappid is a trustee and the feature of receiving votes is enabled, then others must vote for the owner within two rounds before using dappid again
  • The full name of the interface: trDapp

  • Interface abbreviation:tda

  • Callable methods: Http, Websocket, command line

  • Calling method: post

  • Interface url address: /api/transaction/trDapp

  • Request parameters:

interface TrDapp extends TransactionCommonParams {
    /**dappid, composed of uppercase letters or numbers, 8 characters, the last digit is the check digit */
    newDappid: string;
    /**The type of dappid can only be 0 or 1; 0 means this dappid is paid for use, 1 means this dappid is free to use */
    type: BFChainCore.DAPP_TYPE;
    /**The number of rights and interests required to purchase the right to use dappid (if dappid is a paid application, it must be carried, if it is a free application, it does not need to be carried), composed of 0-9 and excluding decimal points, must be greater than 0 */
    amount?: string;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
}
  • Return parameters:
type TrDappRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete release dapp event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.DAppAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

8.2 Create and release dapp event (with security key)

  • The full name of the interface: trDappWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/trDappWithSign
  • Request parameters:
interface PackageTrDappParam {
    /**The buffer generated by the event body without signature, generated by trDapp */
    buffer: string;
    /**Event signature */
    signature: string;
}
  • Return parameters:
type PackageTrDappRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
}

8.3 Send dapp release event

  • The full name of the interface: dapp
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/dapp
  • Request parameters:
interface SendTrDappParam {
  /**The buffer that needs to be signed is converted to a base64 string */
  buffer: string;
  /**Signature of the event */
  signature: string;
  /**Security signature of the event */
  signSignature?: string;
}
  • Return parameters:
type SendTrDappRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete and complete release dapp event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.DAppAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

9. dapp purchase event

9.1 Create dapp purchase event

  • Introduction

    • Experimental interface
    • Purchase the right to use a dappid
  • The full name of the interface: trDappPurchasing

  • Interface abbreviation:tdap

  • Callable methods: Http, Websocket, command line

  • Calling method: post

  • Interface url address: /api/transaction/trDappPurchasing

  • Request parameters:

interface TrDappPurchasing extends TransactionCommonParams{
    /**The release event signature of the purchased dappid, a 128-byte hexadecimal string */
    transactionSignature: string;
}
  • Return parameters:
type TrDappPurchasingRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete dapp purchase event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.DAppPurchasingAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

9.2 Create dapp purchase event (with security key)

  • The full name of the interface: trDappPurchasingWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/trDappPurchasingWithSign
  • Request parameters:
interface PackageTrDappPurchasingParam {
  /**The buffer generated by the event body without signature is generated by trDappPurchasing */
  buffer: string;
  /**Event signature */
  signature: string;
}
  • Return parameters:
type PackageTrDappPurchasingRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
}

9.3 Send dapp purchase event

  • The full name of the interface: dappPurchasing
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/dappPurchasing
  • Request parameters:
interface SendTrDappPurchasingParam {
  /**The buffer that needs to be signed is converted to a base64 string */
  buffer: string;
  /**Signature of the event */
  signature: string;
  /**Security signature of the event */
  signSignature?: string;
}
  • Return parameters:
type SendTrDappPurchasingRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete dapp purchase event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.DAppPurchasingAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

10. Evidence Event

10.1 Create Attestation Event

  • Introduction

    • Experimental interface
    • To store certain data permanently on the blockchain
    • Need to use dappid
  • The full name of the interface: trMark

  • Interface abbreviation:tmr

  • Callable methods: Http, Websocket, command line

  • Calling method: post

  • Interface url address: /api/transaction/trMark

  • Request parameters:

interface TrMark extends TransactionCommonParams{
    /**The release event signature of the purchased dappid, a 128-byte hexadecimal string */
    transactionSignature: string;
    /**The content of the certificate is any string */
    content: string;
    /**Deposit type, any string, used to distinguish deposit certificates */
    action: string;
}
  • Return parameters:
type TrMarkRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**complete proof of events */
    result: BFMetaCore.TransactionJSON<BFMetaCore.MarkAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

10.2 Create Attestation Event (With Security Key)

  • The full name of the interface: trMarkWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/trMarkWithSign
  • Request parameters:
interface PackageTrMarkParam {
  /** Buffer generated by event body without signature, generated by trMark */
  buffer: string;
  /**Event signature */
  signature: string;
}
  • Return parameters:
type PackageTrMarkRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
}

10.3 Send evidence event

  • The full name of the interface: mark
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/mark
  • Request parameters:
interface SendTrMarkParam {
   /**The buffer that needs to be signed is converted to a base64 string */
   buffer: string;
   /**Signature of the event */
   signature: string;
   /**Security signature of the event */
   signSignature?: string;
}
  • Return parameters:
type SendTrMarkRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**The complete attestation event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.MarkAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

11. Token Issuance Event

11.1 Create token issuance event

  • Introduction

    • Freeze the account, and create a specified amount of new equity on the chain
    • It takes a certain amount of main equity to initiate the event.
    • Initiating this event will directly freeze this address, the frozen address cannot initiate any event, but it can receive events, and transfer main equity to address through asset transfer, so as to increase the number of frozen main equity.
    • The greater the number of main equity that are frozen, the greater the main equity that the issued equity can use as security.
    • The main equity frozen at the time of asset destruction will be redeemed to the designated account in proportion to the amount destroyed.
  • The full name of the interface: trIssueAsset

  • Interface abbreviation:tia

  • Callable methods: Http, Websocket, command line

  • Calling method: post

  • Interface url address: /api/transaction/trIssueAsset

  • Request parameters:

interface TrIssueAsset extends TransactionCommonParams{
    /**Name of equity, composed of uppercase letters, 3-5 characters */
    assetType: string;
    /**Total number of new equity issued. The number of equity consists of ten numbers from 0-9. The number of equity does not include a decimal point and must be greater than 0 */
    expectedIssuedAssets: string;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
}
  • Return parameters:
type TrIssueAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete token Release Event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.IssueAssetAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

11.2 Create token issuance event (with security key)

  • The full name of the interface: trIssueAssetWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/trIssueAssetWithSign
  • Request parameters:
interface PackageTrIssueAssetParam {
  /** Buffer generated by event body without signature, generated by trMark */
  buffer: string;
  /**Event signature */
  signature: string;
}
  • Return parameters:
type PackageTrIssueAssetRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
}

11.3 Sending token issuance events

  • The full name of the interface: issueAsset
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/issueAsset
  • Request parameters:
interface SendTrIssueAssetParam {
  /**The buffer that needs to be signed is converted to a base64 string */
  buffer: string;
  /**Signature of the event */
  signature: string;
  /**Security signature of the event */
  signSignature?: string;
}
  • Return parameters:
type SendTrIssueAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete token Release Event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.IssueAssetAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

12. token destruction event

12.1 Create token destruction event

  • Introduction

    • Destroy the specified amount of equity under the account and redeem the main equity of the chain
    • Main and external equity cannot be destroyed
    • The redeemed main equity will return to the recipientId address
  • The full name of the interface: trDestroyAsset

  • Interface abbreviation:tdya

  • Callable methods: Http, Websocket, command line

  • Calling method: post

  • Interface url address: /api/transaction/trDestroyAsset

  • Request parameters:

interface TrDestoryAsset extends TransactionCommonParams{
    /**Destroyed equity name, composed of uppercase letters, 3-5 characters */
    assetType: string;
    /**The amount of equity to be destroyed, composed of 0-9 and excluding the decimal point, must be greater than 0 */
    amount: string;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
}
  • Return parameters: none

12.2 Create token destruction event (with security key)

  • The full name of the interface: trDestroyAssetWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket, command line
  • Calling method: post
  • Interface url address: /api/transaction/trDestroyAssetWithSign
  • Request parameters:
interface PackageTrDestoryAssetParam {
  /** Buffer generated by event body without signature, generated by trMark */
  buffer: string;
  /**Event signature */
  signature: string;
}
  • Return parameters:none

12.3 Send token destruction event

  • The full name of the interface: destroyAsset
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/destroyAsset
  • Request parameters:
interface SendTrDestoryAssetParam {
  /**The buffer that needs to be signed is converted to a base64 string */
  buffer: string;
  /**Signature of the event */
  signature: string;
  /**Security signature of the event */
  signSignature?: string;
}

-Return parameters:none

13. token Exchange Event

13.1 Create token exchange event

  • Introduction

    • Freeze certain equity in your own account to the chain at a specified rate, waiting for other accounts holding a specified equity to exchange
  • The full name of the interface: trToExchangeAsset

  • Interface abbreviation:ttea

  • Callable methods: Http, Websocket, command line

  • Calling method: post

  • Interface url address: /api/transaction/trToExchangeAsset

  • Request parameters:

interface TrToExchangeAsset extends TransactionCommonParams{
    /**Encryption key group, if the key is filled in, the event that accepts the exchange of rights and interests must carry a signature pair generated by a certain key */
    ciphertexts?: string[];
    interface TrToExchangeAsset extends TransactionCommonParams{
     /**The public key array generated by the encryption key */
    cipherPublicKeys: string[];
    /**The source chain network identifier of the equity used for exchange, consisting of uppercase letters or digits, 5 characters, the last digit is the check digit */
    toExchangeSource: string;
    /**The source chain network identifier of the equity being exchanged, consisting of uppercase letter or number, 5 characters, the last digit is check the digit */
    beExchangeSource: string;
    /**The source name of the equity used for exchange, consisting of lowercase letters, 3-8 digits */
    toExchangeChainName: string;
    /**The source chain name of the equity being exchanged, consisting of lowercase letters, 3-8 digits */
    beExchangeChainName: string;
    /**The name of the equity used for exchange, consisting of uppercase letter, 3-5 digits */
    toExchangeAsset: string;
    /**The name of the equity being exchanged,consisting of uppercase letter, 3-5 digits */
    beExchangeAsset: string;
    /**The number of equity used for exchange, consisting of 0-9 and excluding the decimal point, must be greater than 0 */
    toExchangeNumber: string;
    /**The exchange ratio of equity */
    exchangeRate: BFMeta.RateJSON<string>;
}
  • Return parameters:
type TrToExchangeAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete token Exchange Event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.ToExchangeAssetAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

13.2 Create token exchange event (with security key)

  • The full name of the interface: trToExchangeAssetWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket, command line
  • Calling method: post
  • Interface url address: /api/transaction/trToExchangeAssetWithSign
  • Request parameters:
interface PackageTrToExchangeAssetParam {
  /** Buffer generated by event body without signature, generated by trMark */
  buffer: string;
  /**Event signature */
  signature: string;
}
  • Return parameters:
type PackageTrToExchangeAssetRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
}

13.3 Sending rights exchange events

  • The full name of the interface: toExchangeAsset
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/toExchangeAsset
  • Request parameters:
interface SendTrToExchangeAssetParam {
  /**The buffer that needs to be signed is converted to a base64 string */
  buffer: string;
  /**Signature of the event */
  signature: string;
  /**Security signature of the event */
  signSignature?: string;
}
  • Return parameters:
type SendTrToExchangeAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete equity exchange event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.ToExchangeAssetAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

14. Accept the rights exchange event

14.1 Create and accept token exchange event

  • Introduction

    • Exchange a certain equity on one's own account for a certain frozen equity of others on the chain
    • The signature of the corresponding exchange event for transactionSignature
  • The full name of the interface: trBeExchangeAsset

  • Interface abbreviation:tbea

  • Callable methods: Http, Websocket, command line

  • Calling method: post

  • Interface url address: /api/transaction/trBeExchangeAsset

  • Request parameters:

interface TrBeExchangeAsset extends TransactionCommonParams{
    /**to event signature, a 128-byte hexadecimal string */
    transactionSignature: string;
    /**The amount of token used for exchange. The amount of token consists of ten numbers from 0-9. The amount of token does not include a decimal point and must be greater than 0 */
    beExchangeNumber: string;
    /**The amount of token obtained by the exchange, the amount of token is composed of a total of ten numbers from 0-9, the amount of token does not include the decimal point and must be greater than 0 */
    toExchangeNumber: string;
    /**Encryption key, if the encryption key is filled in the token exchange event, you must carry the specified key of a token exchange event to generate a key signature pair */
    ciphertext?: string;
    /**to event originating account address, base58-encoded hexadecimal string */
    recipientId: string;
}
  • Return parameters:
type TrBeExchangeAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete Accept Stake Exchange Event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.BeExchangeAssetAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

14.2 Create and accept token exchange event (with security key)

  • The full name of the interface: trBeExchangeAssetWithSign
  • Interface abbreviation:none
  • Callable methods: Http, Websocket, command line
  • Calling method: post
  • Interface url address: /api/transaction/trBeExchangeAssetWithSign
  • Request parameters:
interface PackageTrBeExchangeAssetParam {
  /** The buffer generated by the event body, base64 string */
  buffer: string;
  /**Event signature */
  signature: string;
}
  • Return parameters:
type PackageTrBeExchangeAssetRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
}

14.3 Send and receive rights exchange events

  • The full name of the interface: beExchangeAsset
  • Interface abbreviation:none
  • Callable methods: Http, Websocket
  • Calling method: post
  • Interface url address: /api/transaction/send/destroyAsset
  • Request parameters:
interface SendTrBeExchangeAssetParam {
  /**The buffer that needs to be signed is converted to a base64 string */
  buffer: string;
  /**Signature of the event */
  signature: string;
  /**Security signature of the event */
  signSignature?: string;
}
  • Return parameters:
type SendTrBeExchangeAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete Accept Stake Exchange Event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.BeExchangeAssetAssetJSON>;
} | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
}

15 Asset exchange event

15.1 Create an asset exchange event

  • Introduction
    • It has been replaced by other events and is not recommended for use at this time.
    • Freeze certain assets in your own account into the chain, waiting for another account holding a certain specified asset to exchange
  • The full name of the interface:trToExchangeSpecAsset
  • Interface abbreviation:ttesa
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trToExchangeSpecAsset
  • Request parameters:
    interface TrToExchangeSpecAsset extends TransactionCommonParams{
    /**Encryption key group, if the key is filled in, the event of accepting asset exchange must carry a signature pair generated by a certain key */
    ciphertexts?: string[];
    }
  • Return parameters:
    type TrToExchangeSpecAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete asset exchange event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.ToExchangeSpecialAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    15.2 Create asset exchange event (with security key)

  • The full name of the interface:trToExchangeSpecAssetWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trToExchangeSpecAssetWithSign
  • Request parameters:
    interface PackageTrToExchangeSpecAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrToExchangeSpecAssetRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    15.3 Send asset exchange event

  • The full name of the interface:toExchangeSpecAsset
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/toExchangeSpecAsset
  • Request parameters:
    interface SendTrToExchangeSpecAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrToExchangeSpecAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete asset exchange event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.ToExchangeSpecialAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    16 Accept asset exchange events

    16.1 Create accept asset exchange event

  • Introduction
    • It has been replaced by other events and is currently not recommended for use.
    • Exchange a certain asset in your own account for a certain frozen asset of others on the chain
  • The full name of the interface:trBeExchangeSpecAsset
  • Interface abbreviation:tbesa
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trBeExchangeSpecAsset
  • Request parameters:
    interface TrBeExchangeSpecAsset extends TransactionCommonParams{
    /**The signature of the to event, a 128-byte hexadecimal string */
    transactionSignature: string;
    /**Encryption key, if the asset exchange event fills in the encryption key, it must carry the specified key of an asset exchange event to generate a key signature pair */
    ciphertext?: string;
    }
  • Return parameters:
    type TrBeExchangeSpecAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete accept asset exchange event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.BeExchangeSpecialAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    16.2 Create accept asset exchange event (with security key)

  • The full name of the interface:trBeExchangeSpecAssetWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trBeExchangeSpecAssetWithSign
  • Request parameters:
    interface PackageTrBeExchangeSpecAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrBeExchangeSpecAssetRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    16.3 Send accept asset exchange event

  • The full name of the interface:beExchangeSpecAsset
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/beExchangeSpecAsset
  • Request parameters:
    interface SendTrBeExchangeSpecAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrBeExchangeSpecAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete accept asset exchange event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.BeExchangeSpecialAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    17 Token donation event (red envelope event)

    17.1 Create an token gift event (red envelope event)

  • Introduction
    • To freeze a portion of a certain equity in the account into the chain and give it to a people or some people for free
  • The full name of the interface:trGiftAsset
  • Interface abbreviation:tga
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trGiftAsset
  • Request parameters:
    interface TrGiftAsset extends TransactionCommonParams{
    /**Encryption key group, if the key is filled in, the event of receiving token exchange must carry a signature pair generated by a certain key */
    ciphertexts?: string[];
    }
  • Return parameters:
    type TrGiftAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete token gift event (red envelope event) */
    result: BFMetaCore.TransactionJSON<BFMetaCore.GiftAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    17.2 Create token donation event (red envelope event) (with security key)

  • The full name of the interface:trGiftAssetWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trGiftAssetWithSign
  • Request parameters:
    interface PackageTrGiftAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrGiftAssetRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    17.3 Send token gift event (red envelope event)

  • The full name of the interface:giftAsset
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/giftAsset
  • Request parameters:
    interface SendTrGiftAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrGiftAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete rights and interests gift event (red envelope event) */
    result: BFMetaCore.TransactionJSON<BFMetaCore.GiftAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    18 Accepting token donation event (grabbing red envelope event)

    18.1 Create an event for accepting token (grab a red envelope event)

  • Introduction
    • Accept a certain equity given by others on the chain, through this event you can get some equity given by others for free
  • The full name of the interface:trGrabAsset
  • Interface abbreviation:tgra
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trGrabAsset
  • Request parameters:
    interface TrGrabAsset extends TransactionCommonParams{
    /**The number of gift benefits received, consisting of 0-9 and excluding decimal points */
    amount?: string;
    /**The signature of the block where the gift event is located, a 128-byte hexadecimal string */
    blockSignature: string;
    /**The signature of the gift event, a 128-byte hexadecimal string */
    transactionSignature: string;
    /**Encryption key, if the encryption key is filled in the token donation event, it must carry a specified key of an token exchange event to generate a key signature pair */
    ciphertext?: string;
    }
  • Return parameters:
    type TrGrabAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**A complete event of receiving rights and interests (the event of grabbing red envelopes) */
    result: BFMetaCore.TransactionJSON<BFMetaCore.GrabAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    18.2 Create an event for accepting rights and interests (grab a red envelope event) (with a security key)

  • The full name of the interface:trGrabAssetWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trGrabAssetWithSign
  • Request parameters:
    interface PackageTrGrabAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrGrabAssetRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    18.3 Send an event of accepting token (grab a red envelope event)

  • The full name of the interface:grabAsset
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/grabAsset
  • Request parameters:
    interface SendTrGrabAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrGrabAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete event of receiving token (grabbing red envelope event) */
    result: BFMetaCore.TransactionJSON<BFMetaCore.GrabAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    19 token delegation event

    19.1 Create an token delegation event

  • Introduction
    • Experimental interface, currently not recommended for use
    • Freeze a certain asset on the chain, and specify which accounts' confirmations are required and the number of confirmations
    • When the number of confirmations reaches the specified number, the witnessed assets will be transferred to the specified account
  • The full name of the interface:trTrustAsset
  • Interface abbreviation:ttra
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trTrustAsset
  • Request parameters:
    interface TrTrustAsset extends TransactionCommonParams {
    /** Witness account address array, base58-encoded hexadecimal string array */
    trustees: string[];
    /**The number of witness signatures required when signing for receipt, consisting of 0-9, must be greater than 0, and the maximum value is the number of designated trustees + 2 */
    numberOfSignFor: number;
    /**The chain name of the witnessed equity, composed of lowercase letters, 3-8 digits */
    sourceChainName: string;
    /**The network identifier of the chain to which the witnessed equity belongs, composed of uppercase letters or numbers, 5 characters, and the last digit is the check digit */
    sourceChainMagic: string;
    /**The witness's equity name, composed of uppercase letters, 3-5 characters */
    assetType: string;
    /**The number of witnessed equity, composed of 0-9 and excluding the decimal point, must be greater than 0 */
    amount: string;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
    }
  • Return parameters:
    type TrTrustAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete token delegation event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.TrustAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    19.2 Create token delegation event (with security key)

  • The full name of the interface:trTrustAssetWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trTrustAssetWithSign
  • Request parameters:
    interface PackageTrGrabAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrGrabAssetRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    19.3 Send token delegation event

  • The full name of the interface:trustAsset
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/trustAsset
  • Request parameters:
    interface SendTrTrustAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrTrustAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete token delegation event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.TrustAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    20 Signing for entrusted token

    20.1 Create a delegated event for signing token

  • Introduction
    • Experimental interface, currently not recommended for use
    • Accept the witness, the witness object will be automatically unfrozen to the designated account when the conditions are satisfied
  • The full name of the interface:trSignForAsset
  • Interface abbreviation:tsfa
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trSignForAsset
  • Request parameters:
    interface TrSignForAsset extends TransactionCommonParams{
    /**The signature of the delegated event, a 128-byte hexadecimal string */
    transactionSignature: string;
    }
  • Return parameters:
    type TrSignForAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete sign-in token entrustment event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.SignForAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    20.2 Create a delegated event for signing token (with a security key)

  • The full name of the interface:trSignForAssetWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trSignForAssetWithSign
  • Request parameters:
    interface PackageTrSignForAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrSignForAssetRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    20.3 Send and sign for entrusted token

  • The full name of the interface:signForAsset
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/signForAsset
  • Request parameters:
    interface SendTrSignForAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrSignForAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete sign-in token entrustment event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.SignForAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    21 Token move out

    21.1 Create transaction for asset move out

  • Introduction
    • Experimental interface, currently not recommended for use
    • Move main equity of a certain chain under the framwork of bioforest chain out of this chain, the account initiating this event will be frozen, and the frozen account cannot initiate any events
    • The account can only hold main equity, and can only move out all main equity in the account
  • The full name of the interface:trEmigrateAsset
  • Interface abbreviation:tema
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trEmigrateAsset
  • Request parameters:
    interface TrEmigrateAsset extends TransactionCommonParams{
    /**Credential version */
    version: string;
    /**Creation time of moving out certificate Date.now().getTimes() */
    timestamp: number;
    /**The unique identifier version+custom format of the migration chain, currently it is version/magic/chainName/genesisBlockSignature */
    fromChainId: string;
    /**The unique identifier version+custom format of the imported chain, currently it is version/magic/chainName/genesisBlockSignature */
    toChainId: string;
    /**Unique ID of the originating account,version/address */
    fromId: string;
    /**Unique ID of the receiving account, version/address */
    toId: string;
    /**Tokens to move out:version/assetType */
    assetId: string;
    /**Number of tokens transferred out,0-9 Consists of and does not contain a decimal point, which must be greater than 0 */
    assetPrealnum: string;
    /**Signature of Originating account ,version/publicKey-signature/secondPublicKey-signSignature */
    signature: string;
    /**Signature of the outbound chain, version/publicKey-signature/secondPublicKey-signSignature */
    fromAuthSignature: string;
    }
  • Return parameters:
    type TrEmigrateAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Entire token relocation event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.EmigrateAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    22 Token immigration transaction

    22.1 Create token migration transaction

  • Introduction
    • Experimental interface, currently not recommended for use
    • Transfer the main equity of a certain chain under the framework of bioforest chain this chain
  • The full name of the interface:trImmigrateAsset
  • Interface abbreviation:tima
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trImmigrateAsset
  • Request parameters:
    interface TrImmigrateAsset extends TransactionCommonParams{
    /**Credential version */
    version: string;
    /**Creation time of moving out certificate Date.now().getTimes() */
    timestamp: number;
    /**The unique identifier version+custom format of the migration chain, currently it is version/magic/chainName/genesisBlockSignature */
    fromChainId: string;
    /**The unique identifier version+custom format of the imported chain, currently it is version/magic/chainName/genesisBlockSignature */
    toChainId: string;
    /**Unique ID of the originating account,version/address */
    fromId: string;
    /**Unique ID of the receiving account, version/address */
    toId: string;
    /**Tokens to move out:version/assetType */
    assetId: string;
    /**Number of tokens transferred out,0-9 Consists of and does not contain a decimal point, which must be greater than 0 */
    assetPrealnum: string;
    /**Signature of Originating account , version/publicKey-signature/secondPublicKey-signSignature */
    signature: string;
    /**Signature of the outbound chain,  version/publicKey-signature/secondPublicKey-signSignature */
    fromAuthSignature: string;
    /**Authorized signature header of the migration chain version */
    toAuthSignature: string;
    }
  • Return parameters:
    type TrImmigrateAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete tokens migration event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.ImmigrateAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    23 Registration and cancellation of LNS events

    23.1 Create registration and logout LNS events

  • Introduction
    • Registration: create a unique bit name on the chain, which can be used to locate a certain address, a certain ip address or latitude and longitude, etc (resolution value), and cannot create a bit name beyond the level
    • Logout: delete a non-chain bit name, deleting this bit name will delete the resolution value of this bit name synchronously
  • The full name of the interface:trLocationName
  • Interface abbreviation:tln
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trLocationName
  • Request parameters:
    interface TrLocationName extends TransactionCommonParams {
    /**The name of the registration/deregistration, 2-1024 characters, the maximum length of each level domain name is 128 characters, the first level domain name can only be composed of lowercase letters, and the beginning and end of the second level and above can only be lowercase letters or numbers It can contain an underscore in the middle, and the root domain name must be the chain name of this chain*/
    name: string;
    /**Operation type, it can only be 0 or 1, 0 means registration position name, 1 means deregistration position name */
    operationType: BFMeta.LOCATION_NAME_OPERATION_TYPE;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
    }
  • Return parameters:
    type TrLocationNameRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete registration and cancellation of LNS events */
    result: BFMetaCore.TransactionJSON<BFMetaCore.LocationNameAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    23.2 Create registration and logout LNS events (with security key)

  • The full name of the interface:trLocationNameWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trLocationNameWithSign
  • Request parameters:
    interface PackageTrLocationNameParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrLocationNameRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    23.3 Send registration and cancellation LNS events

  • The full name of the interface:locationName
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/locationName
  • Request parameters:
    interface SendTrImmigrateAssetParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrImmigrateAssetRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete tokens migration event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.ImmigrateAssetAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    24 Set LNS administrator event

    24.1 Create setting LNS administrator event

  • Introduction
    • Set the administrator of a bit name on the chain, the administrator can set the resolution value of the bit name
  • The full name of the interface:trSetLnsManager
  • Interface abbreviation:tslm
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trSetLnsManager
  • Request parameters:
    interface TrSetLnsManager extends TransactionCommonParams {
    /**Bit name, 2-1024 characters, the maximum length of each level domain name is 128 characters, the first level domain name can only be composed of lowercase letters, the beginning and end of the second level and above can only be composed of lowercase letters or numbers, and the middle can be Contains an underscore, the root domain name must be the chain name of this chain*/
    name: string;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
    }
  • Return parameters:
    type TrSetLnsManagerRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**complete set LNS administrator event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.SetLnsManagerAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    24.2 Create setting LNS administrator event (with security key)

  • The full name of the interface:trSetLnsManagerWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trSetLnsManagerWithSign
  • Request parameters:
    interface PackageTrSetLnsManagerParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrSetLnsManagerRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    24.3 Send setting LNS administrator event

  • The full name of the interface:setLnsManager
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/setLnsManager
  • Request parameters:
    interface SendTrSetLnsManagerParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrSetLnsManagerRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete set LNS administrator event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.SetLnsManagerAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    25 Set LNS parsing value event

    25.1 Create and set LNS resolution value event

  • Introduction
    • Sets the resolution value of a bit name on a chain
  • The full name of the interface:trSetLnsRecordValue
  • Interface abbreviation:tslns
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trSetLnsRecordValue
  • Request parameters:
    interface TrSetLnsRecordValue extends TransactionCommonParams {
    /**Bit name, 2-1024 characters, the maximum length of each level domain name is 128 characters, the first level domain name can only be composed of lowercase letters, the beginning and end of the second level and above can only be composed of lowercase letters or numbers, and the middle can be Contains an underscore, the root domain name must be the chain name of this chain*/
    name: string;
    /**Operation type, can only be 0 or 1 or 2, 0 means add, 1 means delete, 2 means update */
    operationType: BFMeta.RECORD_OPERATION_TYPE;
    /**Added analytical value, the analytical value type can only be A or AAAA or LNG_LAT or BLOCK_CHAIN_ACCOUNT_ADDRESS, A means ipV4, AAAA means ipV6, LNG_LAT means latitude and longitude, BLOCK_CHAIN_ACCOUNT_ADDRESS means the address of the chain account, the underscore is the analytic value type, underscore The following is the analytical value, optional, required when the operation type is 0 or 2*/
    addRecord?: LocationNameRecordJSON;
    /**Deleted analytical value, the analytical value type can only be A or AAAA or LNG_LAT or BLOCK_CHAIN_ACCOUNT_ADDRESS, A means ipV4, AAAA means ipV6, LNG_LAT means latitude and longitude, BLOCK_CHAIN_ACCOUNT_ADDRESS means the address of the chain account, the underscore is the analytic value type, underscore The following is the analytical value, optional, required when the operation type is 1 or 2*/
    deleteRecord?: LocationNameRecordJSON;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
    }
  • Return parameters:
    type TrSetLnsRecordValueRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Completely set LNS parsing value event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.SetLnsRecordValueAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    25.2 Create and set LNS parsing value event (with security key)

  • The full name of the interface:trSetLnsRecordValueWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trSetLnsRecordValueWithSign
  • Request parameters:
    interface PackageTrSetLnsRecordValueParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrSetLnsRecordValueRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    25.3 Send setting LNS resolution value event

  • The full name of the interface:setLnsRecordValue
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/setLnsRecordValue
  • Request parameters:
    interface SendTrSetLnsRecordValueParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrSetLnsRecordValueRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Completely set bit name parsing value event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.SetLnsRecordValueAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    26 Issue Asset / Token Template Event

    26.1 Create Issue Asset / Token Template Event

  • Introduction
    • Create an asset equity template on the chain by freezing assets, and sending this event will freeze the account, and the frozen account cannot initiate any events
    • Corresponding to certain types of real objects in reality, such as paintings, movies, novels, and so on, and set some properties of assets and equity under this category
  • The full name of the interface:trIssueEntityFactory
  • Interface abbreviation:tief
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trIssueEntityFactory
  • Request parameters:
    interface TrIssueEntityFactory extends TransactionCommonParams {
    /**Non-homogeneous asset template */
    factoryId: string;
    /**The number of non-homogeneous assets allowed to be issued */
    entityPrealnum: string;
    /**The amount of main equity frozen when non-homogeneous assets are issued, which will be unfroze when being destroyed*/
    entityFrozenAssetPrealnum: string;
    /**The amount of main equity used to purchase the template */
    purchaseAssetPrealnum: string;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
    }
  • Return parameters:
    type TrIssueEntityFactoryRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete issue Asset / Token  template event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.IssueEntityFactoryAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    26.2 Create issue Asset / Token template event (with security key)

  • The full name of the interface:trIssueEntityFactoryWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trIssueEntityFactoryWithSign
  • Request parameters:
    interface PackageTrIssueEntityFactoryParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrIssueEntityFactoryRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    26.3 Send issue Asset / Token template event

  • The full name of the interface:issueEntityFactory
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/issueEntityFactory
  • Request parameters:
    interface SendTrIssueEntityFactoryParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrIssueEntityFactoryRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete issue Asset / Token  template event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.IssueEntityFactoryAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    27 Issue Asset / Token Template Event

    27.1 Create Issue Asset / Token Template Event

  • Introduction
    • Create an asset equity template on the chain by destroying assets, and sending this event will destroy the corresponding amount of main equity in account
    • Corresponding to certain types of real objects in reality, such as paintings, movies, novels, and so on, and set some properties of assets and equity under this category
  • The full name of the interface:trIssueEntityFactoryV1
  • Interface abbreviation:tief1
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trIssueEntityFactoryV1
  • Request parameters:
    interface TrIssueEntityFactory extends TransactionCommonParams {
    /**Non-homogeneous asset template */
    factoryId: string;
    /**The number of non-homogeneous assets allowed to be issued */
    entityPrealnum: string;
    /**The amount of main equity frozen when non-homogeneous assets are issued, which will be unfroze when being destroyed */
    entityFrozenAssetPrealnum: string;
    /**The amount of main equity used to purchase the template */
    purchaseAssetPrealnum: string;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
    }
  • Return parameters:
    type TrIssueEntityFactoryRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete issue Asset / Token  template event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.IssueEntityFactoryAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    27.2 Create issue Asset / Token template event (with security key)

  • The full name of the interface:trIssueEntityFactoryWithSignV1
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trIssueEntityFactoryWithSignV1
  • Request parameters:none
  • Return parameters:none

    27.3 Send issue Asset / Token template event

  • The full name of the interface:issueEntityFactoryV1
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/issueEntityFactoryV1
  • Request parameters:
    interface SendTrIssueEntityFactoryParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrIssueEntityFactoryRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete issue Asset / Token  template event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.IssueEntityFactoryAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    28 Issuance of Asset / Token events

    28.1 Create an issue Asset / Token event

  • Introduction
    • Create a certain asset equity on the chain, and the asset equity can be used to bind something in the real world, such as a painting or a bottle of wine
    • Asset equity needs to specify a asset equity template
  • The full name of the interface:trIssueEntity
  • Interface abbreviation:tie
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trIssueEntity
  • Request parameters:
    interface TrIssueEntityFactory extends TransactionCommonParams {
    /**非同质权益模板,3-15 个字符,小写字母或数字组成 */
    factoryId: string;
    /**不包含非同质权益模板的非同质权益,3-30 个字符,小写字母或数字组成 */
    entityId: string;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
    }
  • Return parameters:
    type TrIssueEntityFactoryRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete issue Asset / Token  template event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.IssueEntityFactoryAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    28.2 Create issue Asset / Token event (with security key)

  • The full name of the interface:trIssueEntityWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trIssueEntityWithSign
  • Request parameters:
    interface PackageTrIssueEntityParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrIssueEntityRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    28.3 Send Asset / Token event

  • The full name of the interface:issueEntity
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/issueEntity
  • Request parameters:
    interface SendTrIssueEntityFactoryParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrIssueEntityFactoryRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete issue Asset / Token  template event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.IssueEntityFactoryAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    29 Asset Destruction Event

    29.1 Create an asset destruction event

  • Introduction
    • Destroy a certain asset equity in your account, and this asset wquity can no longer circulate in the chain after destruction
  • The full name of the interface:trDestoryEntity
  • Interface abbreviation:tde
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trDestoryEntity
  • Request parameters:
    interface TrDestoryEntity extends TransactionCommonParams{
    /**DP/NFT to be destroyed */
    entityId: string;
    }
  • Return parameters:none

    29.2 Create asset destruction event (with security key)

  • The full name of the interface:trDestoryEntityWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trDestoryEntityWithSign
  • Request parameters:
    interface PackageTrDestoryEntityParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:none

    29.3 Send an asset destruction event

  • The full name of the interface:destoryEntity
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/destoryEntity
  • Request parameters:
    interface SendTrDestoryEntityParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:none

    30 Any asset exchange event

    30.1 Create any asset exchange event

  • Introduction
    • Swaps of any type of on-chain asset(one for one), such as one main equity for one chain domain name
    • Freeze a certain asset in one's own account, waiting for the consent of the holder of the specified asset to exchange
  • The full name of the interface:trToExchangeAny
  • Interface abbreviation:tteay
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trToExchangeAny
  • Request parameters:
    interface TrToExchangeAny extends TransactionCommonParams{
    /**Asset/stake source chain network identifier for exchange, composed of uppercase letters or numbers, 5 characters, the last digit is a check digit */
    toExchangeSource: string;
    /**The asset/equity source chain network identifier to be exchanged, composed of uppercase letters or numbers, 5 characters, the last bit is a check digit */
    beExchangeSource: string;
    /**Asset/equity source chain name for exchange, composed of lowercase letters, 5-10 digits */
    toExchangeChainName: string;
    /**The name of the source chain of the asset/equity to be exchanged, composed of lowercase letters, 5-10 digits */
    beExchangeChainName: string;
    /**The type of asset used for exchange, 1 dappid, 2 digits 3 entityId 4 equity 5 */
    toExchangeParentAssetType: number;
    /**The type of asset being exchanged, 1 dappid, 2 digits 3 entityId 4 equity 5 */
    beExchangeParentAssetType: number;
    /**The stake name used for exchange, which may be entityId, dappid, bit name or stake name */
    toExchangeAssetType: string;
    /**The asset/equity name to be exchanged, which may be entityId, dappid, bit name or equity name */
    beExchangeAssetType: string;
    /**The number of rights and interests used for exchange or exchange, composed of 0-9 and does not contain decimal points */
    toExchangeAssetPrealnum: string;
    /**The amount of equity to be exchanged or exchanged, consisting of 0-9 and not including decimal points */
    beExchangeAssetPrealnum?: string;
    /**asset weight for exchange */
    toExchangeAssetWeight?: string;
    /**Weight of Assets Swapped */
    beExchangeAssetWeight?: string;
    /**Issue the signature of the entityId event, a 128-byte hexadecimal string */
    transactionSignature?: string;
    /**Encryption key group, if the key is filled in, the event of accepting asset exchange must carry a signature pair generated by a certain key*/
    ciphertexts?: string[];
    }
  • Return parameters:
    type TrToExchangeAnyRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete Arbitrary Asset Swap Event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.ToExchangeAnyAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    30.2 Create arbitrary asset exchange events (with security keys)

  • The full name of the interface:trToExchangeAnyWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trToExchangeAnyWithSign
  • Request parameters:
    interface PackageTrToExchangeAnyParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrToExchangeAnyRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    30.3 Send any asset exchange event

  • The full name of the interface:toExchangeAny
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/toExchangeAny
  • Request parameters:
    interface SendTrToExchangeAnyParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrToExchangeAnyRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete Arbitrary Asset Swap Event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.ToExchangeAnyAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    31 Accept any asset swap event

    31.1 Create an event that accepts any asset exchange

  • Introduction
    • Accept any type of asset swap (one for one)
    • Exchange certai assets on your account for certain frozen assets on the chain
  • The full name of the interface:trBeExchangeAny
  • Interface abbreviation:tbeay
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trBeExchangeAny
  • Request parameters:
    interface TrBeExchangeAny extends TransactionCommonParams{
    /**Issue the signature of the entityId event, a 128-byte hexadecimal string */
    issueEntityTransactionSignature?: string;
    /**The signature of the to event, a 128-byte hexadecimal string */
    transactionSignature: string;
    /**The number of rights and interests used for exchange or exchange, composed of 0-9 and does not contain decimal points */
    toExchangeAssetPrealnum: string;
    /**The amount of equity to be exchanged or exchanged, consisting of 0-9 and not including decimal points */
    beExchangeAssetPrealnum?: string;
    /**Encryption key, if the asset exchange event fills in the encryption key, it must carry the specified key of an asset exchange event to generate a key signature pair */
    ciphertext?: string;
    /**The name of the asset being exchanged */
    assetType?: string;
    }
  • Return parameters:
    type TrBeExchangeAnyRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Completely accept any asset exchange event*/
    result: BFMetaCore.TransactionJSON<BFMetaCore.BeExchangeAnyAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    31.2 Create an event that accepts any asset exchange (with a security key)

  • The full name of the interface:trBeExchangeAnyWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trBeExchangeAnyWithSign
  • Request parameters:
    interface PackageTrBeExchangeAnyParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:
    type PackageTrBeExchangeAnyRespParam = {
    /**Success */
    success: true;
    /**Package result */
    result: {
        /**The buffer generated by the event body, base64 string */
        buffer: string;
    };
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    }

    31.3 Send and accept any asset exchange event

  • The full name of the interface:beExchangeAny
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/beExchangeAny
  • Request parameters:
    interface SendTrBeExchangeAnyParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:
    type SendTrBeExchangeAnyRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Completely accept any asset exchange event */
    result: BFMetaCore.TransactionJSON<BFMetaCore.BeExchangeAnyAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }

    32 Any asset transfer event

    32.1 Create arbitrary asset transfer events

  • Introduction
    • Transfer certain assets in the account(entity, dappid, chain domain name, or a certain equity) to a specified account
  • The full name of the interface:trTransferAny
  • Interface abbreviation:ttay
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trTransferAny
  • Request parameters:
    interface TrTransferAny extends TransactionCommonParams{
    /**Issue the signature of the entityId event, a 128-byte hexadecimal string */
    transactionSignature?: string;
    /**The amount of equity transferred, consisting of 0-9 without decimal points, must be greater than 0 */
    amount?: string;
    /**The type of equity transferred, composed of uppercase letters, 3-8 characters */
    assetType?: string;
    /**The type of asset to be transferred, 1 dappid, 2 digits 3 entityId 4 equity */
    parentAssetType?: import("./").PARENT_ASSET_TYPE;
    /**The name of the chain to which the transferred rights and interests belong, composed of lowercase letters, 5-10 digits */
    sourceChainName?: string;
    /**The network identifier of the chain to which the transferred equity belongs, composed of uppercase letters or numbers, 5 characters, and the last digit is a check digit */
    sourceChainMagic?: string;
    /**The receiving account address of the event, base58 encoded hexadecimal string */
    recipientId: string;
    }
  • Return parameters:none

    32.2 Create arbitrary asset transfer events (with security keys)

  • The full name of the interface:trTransferAnyWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trTransferAnyWithSign
  • Request parameters:
    interface PackageTrTransferAnyParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:none

    32.3 Send any asset transfer event

  • The full name of the interface:transferAny
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/transferAny
  • Request parameters:
    interface SendTrTransferAnyParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:none

    33 Any asset donation event

    33.1 Create any asset gift event

  • Introduction
    • Freeze certain assets under the account to the chain, give to a certain account or designated account for free
  • The full name of the interface:trGiftAny
  • Interface abbreviation:tgay
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trGiftAny
  • Request parameters:
    interface TrGiftAny extends TransactionCommonParams{
    /**The signature of the event that issued entityId, a 128-byte hexadecimal string */
    transactionSignature?: string;
    /**The chain network identifier of the gifted rights and interests, composed of uppercase letters or numbers, 5 characters, the last one is a check digit */
    sourceChainMagic?: string;
    /**The name of the chain to which the gifted rights and interests belong, composed of lowercase letters, 5-10 characters*/
    sourceChainName?: string;
    /**The type of asset to be transferred, 1 dappid, 2 digits 3 entityId 4 equity */
    parentAssetType?: import("./").PARENT_ASSET_TYPE;
    /**The gift type, composed of uppercase letters, 3-8 characters */
    assetType?: string;
    /**The number of rights and interests given away, consisting of 0-9 and excluding decimal points, must be greater than 0 */
    amount?: string;
    /**The number of times that can be received, consisting of 0-9 and not including the decimal point, must be greater than 0 */
    totalGrabableTimes?: number;
    /**The block interval from the initiation of the equity donation event to the beginning of being signed, consisting of 0-9 and excluding decimal points, optional, must be less than or equal to the validity period of the event */
    numberOfBeginUnfrozenBlocks?: number;
    /**Receiving rules, can only be 0, 1 or 2, 0 means average distribution, 1 means random distribution according to the address of any account, 2 means random distribution according to the account address in the recipient list */
    giftDistributionRule?: number;
    /**Encryption key group, if the key is filled in, the event of receiving equity exchange must carry a signature pair generated by a certain key */
    ciphertexts?: string[];
    /**Tax information */
    taxInformation?: {
        /**Tax collector */
        taxCollector: string;
        /**Payment amount */
        taxAssetPrealnum: string;
    };
    }
  • Return parameters:none

    33.2 Create any asset gift event (with security key)

  • The full name of the interface:trGiftAnyWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trGiftAnyWithSign
  • Request parameters:
    interface PackageTrGiftAnyParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:none

    33.3 Send any asset gift event

  • The full name of the interface:giftAny
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/giftAny
  • Request parameters:
    interface SendTrGiftAnyParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:none

    34 Accept any asset donation event

    34.1 Create an event that accepts any asset gift

  • Introduction
    • Accept any asset gift, and through this event, you can receive a certain asset gift from other on-chain accounts for free
  • The full name of the interface:trGrabAny
  • Interface abbreviation:tgray
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trGrabAny
  • Request parameters:
    interface TrGrabAny extends TransactionCommonParams{
    /**The number of gift benefits received, consisting of 0-9 and excluding decimal points */
    amount?: string;
    /**The signature of the block where the gift event is located, a 128-byte hexadecimal string */
    blockSignature: string;
    /**The signature of the gift event, a 128-byte hexadecimal string */
    transactionSignature: string;
    /**Encryption key, if the encryption key is filled in the equity donation event, it must carry a specified key of an equity exchange event to generate a key signature pair */
    ciphertext?: string;
    }
  • Return parameters:none

    34.2 Create and accept any asset donation event (with security key)

  • The full name of the interface:trGrabAnyWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trGrabAnyWithSign
  • Request parameters:
    interface PackageTrGrabAnyParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:none

    34.3 Send and accept any asset donation event

  • The full name of the interface:grabAny
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/grabAny
  • Request parameters:
    interface SendTrGrabAnyParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:none

    35 Mass issuance of Asset / Token events

    35.1 Create a mass issue Asset / Token event

  • Introduction
    • Mass issue entity
  • The full name of the interface:trIssueEntityMultiV1
  • Interface abbreviation:tiem1
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trIssueEntityMultiV1
  • Request parameters:
    interface TrIssueEntityMultiV1 extends TransactionCommonParams{
    /**DP/NFT template, 3-15 characters, composed of lowercase letters or numbers */
    factoryId: string;
    entityStructList: {
        /**DP/NFT that does not contain NFT templates, 3-30 characters, composed of lowercase letters or numbers */
        entityId: string;
        /**Royalties that need to be paid for the circulation of DP/NFT */
        taxAssetPrealnum?: string;
    }[];
    }
  • Return parameters:none

    35.2 Create a mass issue Asset / Token event (with security key)

  • The full name of the interface:trIssueEntityMultiWithSignV1
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trIssueEntityMultiWithSignV1
  • Request parameters:
    interface PackageTrIssueEntityMultiV1Param{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:none

    35.3 Send mass issuance of Asset / Token events

  • The full name of the interface:issueEntityMultiV1
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/issueEntityMultiV1
  • Request parameters:
    interface SendTrIssueEntityMultiV1Param{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:none

    36 Batch arbitrary asset exchange events

    36.1 Create batch arbitrary asset exchange events

  • Introduction
    • Swap any type of asset on the chain (multiple assets for one asset), such as exchanging 1 main equity and 1 dappid for 1 chain domain name
    • Freeze one or more assets in your own account, waiting for the consent of the holder of the specified asset to exchange
  • The full name of the interface:trToExchangeAnyMulti
  • Interface abbreviation:tteaym
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trToExchangeAnyMulti
  • Request parameters:
    interface TrToExchangeAnyMulti extends TransactionCommonParams{
    /**Assets for exchange */
    toExchangeAssets: {
        /**Asset source chain network identifier for exchange, composed of uppercase letters or numbers, 5 characters, the last bit is a check digit */
        toExchangeSource?: string;
        /**Asset source chain name for exchange, composed of lowercase letters, 5-10 digits */
        toExchangeChainName?: string;
        /**Asset name for exchange */
        toExchangeAssetType: string;
        /**The number of assets used for exchange, consisting of 0-9 and not including decimal points */
        toExchangeAssetPrealnum: string;
        /**Exchange ratio, required for Fungible Token exchange */
        assetExchangeWeightRatio?: {
            /**Token Weight for Swap */
            toExchangeAssetWeight: string;
            /**Weight of Tokens Swapped */
            beExchangeAssetWeight: string;
        };
        /**Tax information */
        taxInformation?: {
            /**Tax collector */
            taxCollector: string;
            /**Payment amount */
            taxAssetPrealnum: string;
        };
    }[];
    /**Assets being exchanged */
    beExchangeAsset: {
        /**The asset source chain network identifier to be exchanged, composed of uppercase letters or numbers, 5 characters, the last one is a check digit */
        beExchangeSource?: string;
        /**The asset source chain name to be exchanged, composed of lowercase letters, 5-10 digits*/
        beExchangeChainName?: string;
        /**The name of the asset being exchanged */
        beExchangeAssetType: string;
        /**The number of assets to be exchanged, consisting of 0-9 without a decimal point, required for the exchange of non-homogeneous assets */
        beExchangeAssetPrealnum?: string;
        /**Tax information */
        taxInformation?: {
            /**Tax collector */
            taxCollector: string;
            /**Payment amount */
            taxAssetPrealnum: string;
        };
    };
    /**Encryption key group, if the key is filled in, the event of receiving equity exchange must carry a signature pair generated by a certain key */
    ciphertexts?: string[];
    }
  • Return parameters:none

    36.2 Create batches of arbitrary asset exchange events (with security keys)

  • The full name of the interface:trToExchangeAnyMultiWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trToExchangeAnyMultiWithSign
  • Request parameters:
    interface PackageTrToExchangeAnyMultiParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:none

    36.3 Send batches of arbitrary asset swap events

  • The full name of the interface:toExchangeAnyMulti
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/toExchangeAnyMulti
  • Request parameters:
    interface SendTrToExchangeAnyMultiParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:none

    37 Accept batches of arbitrary asset swap events

    37.1 Create events that accept bulk arbitrary asset swaps

  • Introduction
    • Accept any type of asset swap (multiple assets for one asset)
    • Exchange some assets in your account for some on-chain frozen assets
  • The full name of the interface:trBeExchangeAnyMulti
  • Interface abbreviation:tbeaym
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trBeExchangeAnyMulti
  • Request parameters:
    interface TrBeExchangeAnyMulti extends TransactionCommonParams{
    /**The signature of a batch of arbitrary asset exchange events, a 128-byte hexadecimal string */
    transactionSignature: string;
    /**Assets for exchange*/
    toExchangeAssets: {
        /**Asset source chain network identifier for exchange, composed of uppercase letters or numbers, 5 characters, the last bit is a check digit */
        toExchangeSource?: string;
        /**Asset source chain name for exchange, composed of lowercase letters, 5-10 digits */
        toExchangeChainName?: string;
        /**Asset name for exchange */
        toExchangeAssetType: string;
        /**The number of assets used for exchange, consisting of 0-9 and not including decimal points */
        toExchangeAssetPrealnum: string;
        /**Exchange ratio, required for Fungible Token exchange */
        assetExchangeWeightRatio?: {
            /**Token Weight for Swap */
            toExchangeAssetWeight: string;
            /**Weight of Tokens Swapped */
            beExchangeAssetWeight: string;
        };
        /**Tax information */
        taxInformation?: {
            /**Tax collector */
            taxCollector: string;
            /**Payment amount */
            taxAssetPrealnum: string;
        };
    }[];
    /**Assets being exchanged */
    beExchangeAsset: {
        /**The asset source chain network identifier to be exchanged, composed of uppercase letters or numbers, 5 characters, the last one is a check digit */
        beExchangeSource?: string;
        /**The asset source chain name to be exchanged, composed of lowercase letters, 5-10 digits */
        beExchangeChainName?: string;
        /**The name of the asset being exchanged */
        beExchangeAssetType: string;
        /**The number of assets to be exchanged, consisting of 0-9 without a decimal point, required for the exchange of non-homogeneous assets */
        beExchangeAssetPrealnum?: string;
        /**Tax information */
        taxInformation?: {
            /**Tax collector */
            taxCollector: string;
            /**Payment amount */
            taxAssetPrealnum: string;
        };
    };
    /**Encryption key, if the encryption key is filled in the equity donation event, it must carry a specified key of an equity exchange event to generate a key signature pair */
    ciphertext?: string;
    }
  • Return parameters:none

    37.2 Create accepts batches of arbitrary asset exchange events (with security keys)

  • The full name of the interface:trBeExchangeAnyMultiWithSign
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/trBeExchangeAnyMultiWithSign
  • Request parameters:
    interface PackageTrBeExchangeAnyMultiParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    }
  • Return parameters:none

    37.3 Send and accept batches of arbitrary asset exchange events

  • The full name of the interface:beExchangeAnyMulti
  • Interface abbreviation:none
  • Callable methods:Http,Websocket
  • Calling method:post
  • Interface url address:/api/transaction/send/beExchangeAnyMulti
  • Request parameters:
    interface SendTrBeExchangeAnyMultiParam{
    /**The buffer generated by the event body, base64 string */
    buffer: string;
    /**Signature of the event */
    signature: string;
    /**Security signature of the event */
    signSignature?: string;
    }
  • Return parameters:none

    38 Register Chain Events

    38.1 Create a registration chain event

  • Introduction
    • Experimental interface, currently not recommended for use
    • Register a certain chain under the framework of bioforest chain to the chain, which prepares for the cross-chain of main equity
  • The full name of the interface:trRegisterChain
  • Interface abbreviation:trc
  • Callable methods:Http,Websocket,command line
  • Calling method:post
  • Interface url address:/api/transaction/trRegisterChain
  • Request parameters:
    type TrRegisterChain = TrCommonParam
  • Return parameters:
    type TrRegisterChainRespParam = {
    /**Success */
    success: true;
    /**Minimum Fee */
    minFee: number;
    /**Complete Registration Chain Events */
    result: BFMetaCore.TransactionJSON<BFMetaCore.RegisterChainAssetJSON>;
    } | {
    /**Fail */
    success: false;
    /**Error message */
    message: string;
    /**Minimum Fee */
    minFee: number;
    /**Error code */
    code?: string;
    }