JavaScript/ TypeScript
Easily integrate in your JS/TS application using the sdk.
LYNC Paymaster SDK supporting movement on npmjs: https://www.npmjs.com/package/lync-paymaster-movement-sdk
npmjs: https://www.npmjs.com/package/lync-paymaster-movement-sdkInstall the SDK
npm install lync-paymaster-movement-sdk --saveImport the dependencies
import { performPaymasterTransaction } from "lync-paymaster-movement-sdk";
import { Network } from "@aptos-labs/ts-sdk";Get API Keys from LYNC Dashboard
// From LYNC Dashboard
const apiKey = "LYNC API KEY Dashboard";
// Get this from LYNC
const lyncAuthKey = "Get this from LYNC Support";The performPaymasterTransaction function
performPaymasterTransaction functionimport {
CommittedTransactionResponse,
InputEntryFunctionData,
Network
} from "@aptos-labs/ts-sdk";
/**
* The data returned from a paymaster transaction.
* @param {CommittedTransactionResponse} receipt - The transaction receipt.
* @param {CommittedTransactionResponse} accountCreationReceipt - The account creation receipt.
* @param {string} privateKey - The private key for the account.
*/
interface PaymasterTransactionReturnData {
receipt: CommittedTransactionResponse;
accountCreationReceipt: CommittedTransactionResponse;
privateKey: string;
}
/**
* The account information.
* @param {string} privateKey - The private key for the account.
* @param {string} accountAddress - The account address.
*/
interface AccountInfo {
privateKey: string;
accountAddress: string;
}
/**
* Performs a paymaster transaction using the LYNC paymaster API.
*
* @param {string} lyncAuthKey - The LYNC API key for authentication.
* @param {Network} network - The network to perform the transaction on. Should be CUSTOM for movement networks.
* @param {string} apiKey - The LYNC API key for authentication.
* @param {InputEntryFunctionData} inputTransaction - The input data for the transaction.
* @param {boolean} showLogs - Whether to show logs or not.
* @param {"porto" | "suzuka"} movementNetwork - The movement network to use(optional). Required if network is CUSTOM.
* @param {AccountInfo} accountData - The account data(privateKey and accountAddress) for the transaction(optional). If not provided, a new account will be generated.
* @returns {Promise<PaymasterTransactionReturnData>} The data returned from a paymaster transaction.
*/
async function performPaymasterTransaction(
lyncAuthKey: string,
network: Network,
apiKey: string,
inputTransaction: InputEntryFunctionData,
showLogs: boolean,
movementNetwork?: "porto" | "suzuka",
accountData?: AccountInfo,
): Promise<PaymasterTransactionReturnData> ;
Using the performPaymasterTransaction function
performPaymasterTransaction functionLast updated