Skip to main content

Function Signature

Future<List<PortalTransaction>> getTransactions(
  String chainId, {
  int? limit,
  int? offset,
  PortalTransactionOrder? order,
})

Description

Retrieves historical transactions for the wallet on the specified chain.

Parameters

ParameterTypeRequiredDescription
chainIdStringYesThe chain ID in CAIP-2 format
limitintNoMaximum number of transactions to return
offsetintNoNumber of transactions to skip (pagination)
orderPortalTransactionOrderNoSort order

PortalTransactionOrder

ValueDescription
ascAscending order (oldest first)
descDescending order (newest first)

Returns

List<PortalTransaction> - A list of transaction objects.

PortalTransaction

PropertyTypeDescription
hashString?Transaction hash
fromString?Sender address
toString?Recipient address
valueString?Transaction value
blockHashString?Block hash
blockNumberString?Block number
blockTimestampString?Block timestamp
chainIdString?Chain ID
gasString?Gas used
gasPriceString?Gas price
inputString?Transaction input data
nonceString?Transaction nonce
transactionIndexString?Index in the block

Example

import 'package:portal_flutter/portal_flutter.dart';

final portal = Portal();

// Get recent transactions
final transactions = await portal.getTransactions(
  'eip155:1',
  limit: 10,
  order: PortalTransactionOrder.desc,
);

for (final tx in transactions) {
  print('Hash: ${tx.hash}');
  print('From: ${tx.from}');
  print('To: ${tx.to}');
  print('Value: ${tx.value}');
  print('Timestamp: ${tx.blockTimestamp}');
}

Pagination

// First page
final page1 = await portal.getTransactions(
  'eip155:1',
  limit: 20,
  offset: 0,
);

// Second page
final page2 = await portal.getTransactions(
  'eip155:1',
  limit: 20,
  offset: 20,
);

Errors

CodeDescription
NOT_INITIALIZEDPortal was not initialized
FETCH_FAILEDFailed to fetch transactions