Skip to content
🎉 Welcome! Translations are currently experimental. | 翻訳は現在実験的です。 | 翻译目前处于实验阶段。
Click here to submit feedback! | ここをクリックしてフィードバックを送信してください! | 点击这里提交反馈!
BuildSDKsCommunity SDKsKotlin SDKFetch Data via the Kotlin SDK

Fetch Data via the Kotlin SDK

You can use the Aptos client to fetch all sorts of data from on-chain such as information about the network itself or account-specific information.

val modules = aptos.getAccountModules("0x123").expect("Failed to fetch account modules")
val option = aptos.getChainTopUserTransactions(10)

Kaptos returns an Option type for all network requests. This allows you to handle both successful and failed requests in a more idiomatic way.

val ledgerInfo = aptos.getLedgerInfo()
when (ledgerInfo) {
    is Some -> println("Ledger Info: ${ledgerInfo.value}")
    is None -> println("Failed to fetch ledger info")
}

If you trust the result exists, you can use the .expect function to unwrap the value.

val ledgerInfo = aptos.getLedgerInfo().expect("Failed to fetch ledger info")

Using Move View Functions

You can call view functions which return custom data from on-chain by using the .view method on the Aptos object. The user specifies the return type of the view function as a type parameter.

For example, you can look up the supply of tokens as follows:

val inputViewFunctionData = InputViewFunctionData(
      "0x1::coin::supply",
      listOf(TypeTagStruct("0x1::aptos_coin::AptosCoin")),
      emptyList(),)
 
  val view = aptos
      .view<List<MoveValue.MoveListType<MoveValue.String>>>(inputViewFunctionData)
      .expect("Failed to fetch view")