Initializes a new instance of the Aptos client with the specified configuration. This allows you to interact with the Aptos blockchain using the provided settings.
The configuration settings for the Aptos client.
Represents the configuration settings for an Aptos SDK client instance. This class allows customization of various endpoints and client settings.
Initializes an instance of the Aptos client with the specified settings. This allows users to configure various aspects of the client, such as network and endpoints.
Optionalsettings: AptosSettingsOptional configuration settings for the Aptos client.
Optional Readonlyclient?: ClientOptional ReadonlyclientConfig?: ClientConfigOptional Readonlyfaucet?: stringOptional ReadonlyfaucetConfig?: FaucetConfigOptional Readonlyfullnode?: stringOptional ReadonlyfullnodeConfig?: FullNodeConfigOptional Readonlyindexer?: stringOptional ReadonlyindexerConfig?: IndexerConfigOptional Readonlynetwork?: NetworkOptional Readonlypepper?: stringOptional Readonlyprover?: stringimport { Aptos, AptosConfig, Network } from "@aptos-labs/ts-sdk";
async function runExample() {
// Create a new Aptos client with default settings
const config = new AptosConfig({ network: Network.TESTNET }); // Specify the network
const aptos = new Aptos(config);
console.log("Aptos client initialized:", aptos);
}
runExample().catch(console.error);
Readonlyclient: ClientThe client instance the SDK uses. Defaults to `@aptos-labs/aptos-client
Optional ReadonlyclientConfig?: ClientConfigOptional client configurations
Optional Readonlyfaucet?: stringThe optional hardcoded faucet URL to send requests to instead of using the network
Optional ReadonlyfaucetConfig?: FaucetConfigOptional specific Faucet configurations
Optional Readonlyfullnode?: stringThe optional hardcoded fullnode URL to send requests to instead of using the network
Optional ReadonlyfullnodeConfig?: ClientHeadersTypeOptional specific Fullnode configurations
Optional Readonlyindexer?: stringThe optional hardcoded indexer URL to send requests to instead of using the network
Optional ReadonlyindexerConfig?: ClientHeadersTypeOptional specific Indexer configurations
Readonlynetwork: NetworkThe Network that this SDK is associated with. Defaults to DEVNET
Optional Readonlypepper?: stringThe optional hardcoded pepper service URL to send requests to instead of using the network
Optional Readonlyprover?: stringThe optional hardcoded prover service URL to send requests to instead of using the network
Returns the URL endpoint to send the request to based on the specified API type. If a custom URL was provided in the configuration, that URL is returned. Otherwise, the URL endpoint is derived from the network.
The type of Aptos API to get the URL for. This can be one of the following: FULLNODE, FAUCET, INDEXER, PEPPER, PROVER.
import { Aptos, AptosConfig, Network, AptosApiType } from "@aptos-labs/ts-sdk";
const config = new AptosConfig({ network: Network.TESTNET });
const aptos = new Aptos(config);
async function runExample() {
// Getting the request URL for the FULLNODE API
const url = config.getRequestUrl(AptosApiType.FULLNODE);
console.log("Request URL for FULLNODE:", url);
}
runExample().catch(console.error);
Checks if the provided URL is a known pepper service endpoint.
The URL to check against the known pepper service endpoints.
import { Aptos, AptosConfig, Network } from "@aptos-labs/ts-sdk";
const config = new AptosConfig({ network: Network.TESTNET });
const aptos = new Aptos(config);
async function runExample() {
const url = "https://example.pepper.service"; // replace with a real pepper service URL
// Check if the URL is a known pepper service endpoint
const isPepperService = config.isPepperServiceRequest(url);
console.log(`Is the URL a known pepper service? ${isPepperService}`);
}
runExample().catch(console.error);
Checks if the provided URL is a known prover service endpoint.
The URL to check against known prover service endpoints.
A boolean indicating whether the URL is a known prover service endpoint.
import { Aptos, AptosConfig, Network } from "@aptos-labs/ts-sdk";
const config = new AptosConfig({ network: Network.TESTNET });
const aptos = new Aptos(config);
// Check if the URL is a known prover service endpoint
const url = "https://prover.testnet.aptos.dev"; // replace with a real URL if needed
const isProver = config.isProverServiceRequest(url);
console.log(`Is the URL a known prover service? ${isProver}`);
import { Aptos, AptosConfig, Network } from "@aptos-labs/ts-sdk";
async function runExample() {
// Create a configuration for the Aptos client
const config = new AptosConfig({
network: Network.TESTNET, // Use the TESTNET for testing
nodeUrl: "https://testnet.aptos.dev", // Specify the node URL
faucetUrl: "https://faucet.testnet.aptos.dev" // Specify the faucet URL
});
// Initialize the Aptos client with the configuration
const aptos = new Aptos(config);
console.log("Aptos client initialized:", aptos);
}
runExample().catch(console.error);
Submits a multi-agent transaction to the Aptos network, allowing multiple signers to authorize the transaction. This function is useful for scenarios where a transaction requires approval from multiple accounts.
The parameters for the multi-agent transaction.
An array of authenticators for additional signers.
OptionalfeePayerAuthenticator?: AccountAuthenticatorAn optional authenticator for the fee payer account.
The authenticator for the sender account.
The raw transaction to be submitted.
import { Aptos, AptosConfig, Network, Account } from "@aptos-labs/ts-sdk";
const config = new AptosConfig({ network: Network.TESTNET });
const aptos = new Aptos(config);
async function runExample() {
const sender = Account.generate(); // Generate a new sender account
const additionalSigner1 = Account.generate(); // Generate an additional signer account
const additionalSigner2 = Account.generate(); // Generate another additional signer account
const transaction = await aptos.transaction.build.simple({
sender: sender.accountAddress,
data: {
function: "0x1::aptos_account::transfer",
functionArguments: [additionalSigner1.accountAddress, 100],
},
});
const response = await aptos.multiAgent({
transaction,
senderAuthenticator: sender.getAuthenticator(), // Use the sender's authenticator
additionalSignersAuthenticators: [
additionalSigner1.getAuthenticator(), // Use the first additional signer's authenticator
additionalSigner2.getAuthenticator(), // Use the second additional signer's authenticator
],
});
console.log(response); // Log the response from the transaction submission
}
runExample().catch(console.error);
Submits a transaction to the Aptos blockchain using the provided transaction details and authenticators. This function allows you to execute transactions securely by specifying the sender and optional fee payer authenticators.
The arguments for submitting the transaction.
OptionalfeePayerAuthenticator?: AccountAuthenticatorThe optional authenticator for the fee payer's account.
The authenticator for the sender's account.
The raw transaction data to be submitted.
import { Aptos, AptosConfig, Network, Account } from "@aptos-labs/ts-sdk";
const config = new AptosConfig({ network: Network.TESTNET });
const aptos = new Aptos(config);
async function runExample() {
const sender = Account.generate(); // Generate a new sender account
const transaction = await aptos.transaction.build.simple({
sender: sender.accountAddress,
data: {
function: "0x1::aptos_account::transfer",
functionArguments: [Account.generate().accountAddress, 100], // Replace with a real destination account
},
});
// Submit the transaction
const response = await aptos.simple({
transaction,
senderAuthenticator: sender.getAuthenticator(), // Use the sender's authenticator
});
console.log("Transaction submitted:", response);
}
runExample().catch(console.error);
A class to handle all
Submittransaction operations.