HorizonServer

class HorizonServer(serverUri: String, httpClient: HttpClient? = null, submitHttpClient: HttpClient? = null)

Main class used to connect to Horizon server.

This class provides factory methods for creating request builders to interact with various Horizon API endpoints.

Constructors

Link copied to clipboard
constructor(serverUri: String, httpClient: HttpClient? = null, submitHttpClient: HttpClient? = null)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
val httpClient: HttpClient

The HTTP client used for general requests (30s timeout)

Link copied to clipboard
val serverUri: Url

The URI of the Horizon server

Link copied to clipboard
val submitHttpClient: HttpClient

The HTTP client used for submitting transactions (65s timeout)

Functions

Link copied to clipboard

Returns an AccountsRequestBuilder instance for querying accounts.

Link copied to clipboard

Returns an AssetsRequestBuilder instance for querying assets.

Link copied to clipboard

Returns a ClaimableBalancesRequestBuilder instance for querying claimable balances.

Link copied to clipboard
fun close()

Closes the HTTP clients and releases resources. Call this when you're done using the HorizonServer instance.

Link copied to clipboard

Returns an EffectsRequestBuilder instance for querying effects.

Link copied to clipboard

Returns a FeeStatsRequestBuilder instance for querying fee statistics.

Link copied to clipboard

Returns a HealthRequestBuilder instance for querying server health status.

Link copied to clipboard

Returns a LedgersRequestBuilder instance for querying ledgers.

Link copied to clipboard

Returns a LiquidityPoolsRequestBuilder instance for querying liquidity pools.

Link copied to clipboard
suspend fun loadAccount(address: String): Account

Loads an account from Horizon and returns it as a TransactionBuilderAccount.

Link copied to clipboard

Returns an OffersRequestBuilder instance for querying offers.

Link copied to clipboard

Returns an OperationsRequestBuilder instance for querying operations.

Link copied to clipboard

Returns an OrderBookRequestBuilder instance for querying order books.

Link copied to clipboard

Returns a PaymentsRequestBuilder instance for querying payment operations.

Link copied to clipboard

Returns a RootRequestBuilder instance for querying server and network information.

Link copied to clipboard

Returns a StrictReceivePathsRequestBuilder instance for finding payment paths with strict receive.

Link copied to clipboard

Returns a StrictSendPathsRequestBuilder instance for finding payment paths with strict send.

Link copied to clipboard
suspend fun submitTransaction(transactionEnvelopeXdr: String): TransactionResponse

Submits a transaction to the Stellar network.

suspend fun submitTransaction(transactionEnvelopeXdr: String, skipMemoRequiredCheck: Boolean): TransactionResponse

Submits a transaction to the Stellar network with optional memo required check.

Link copied to clipboard
suspend fun submitTransactionAsync(transactionEnvelopeXdr: String): SubmitTransactionAsyncResponse

Submits a transaction to the Stellar network asynchronously.

suspend fun submitTransactionAsync(transactionEnvelopeXdr: String, skipMemoRequiredCheck: Boolean): SubmitTransactionAsyncResponse

Submits a transaction to the Stellar network asynchronously with optional memo required check.

Link copied to clipboard
fun tradeAggregations(baseAssetType: String, baseAssetCode: String?, baseAssetIssuer: String?, counterAssetType: String, counterAssetCode: String?, counterAssetIssuer: String?, startTime: Long, endTime: Long, resolution: Long, offset: Long = 0): TradeAggregationsRequestBuilder

Returns a TradeAggregationsRequestBuilder instance for querying trade aggregations.

Link copied to clipboard

Returns a TradesRequestBuilder instance for querying trades.

Link copied to clipboard

Returns a TransactionsRequestBuilder instance for querying transactions.