The JsonRpcProvider is one of the most common Providers, which performs all operations over HTTP (or HTTPS) requests.

Events are processed by polling the backend for the current block number; when it advances, all block-base events are then checked for updates.

Extends

Accessors

connect

get connect(): FetchRequest[]

Get the list of connected FetchRequests.

Returns

FetchRequest[]

The list of connected FetchRequests.

Source

providers/abstract-provider.ts:796


destroyed

get destroyed(): boolean

If this provider has been destroyed using the destroy method.

Once destroyed, all resources are reclaimed, internal event loops and timers are cleaned up and no further requests may be sent to the provider.

Returns

boolean

Source

providers/abstract-provider.ts:2037


paused

get paused(): boolean

Whether the provider is currently paused.

A paused provider will not emit any events, and generally should not make any requests to the network, but that is up to sub-classes to manage.

Setting paused = true is identical to calling .pause(false), which will buffer any events that occur while paused until the provider is unpaused.

Returns

boolean

Whether the provider is paused.

Source

providers/abstract-provider.ts:2069


pollingInterval

get pollingInterval(): number

Get the polling interval.

Returns

number

The polling interval.

Source

providers/abstract-provider.ts:915


provider

get provider(): this

Returns this, to allow an AbstractProvider to implement the Contract Runner interface.

Returns

this

The provider instance.

Source

providers/abstract-provider.ts:925


ready

get ready(): boolean

Returns true only if the JsonRpcApiProvider._start | _start has been called.

Returns

boolean

True if the provider is ready.

Source

providers/provider-jsonrpc.ts:1083

Methods

_clearTimeout()

_clearTimeout(timerId): void

Clear a timer created using the AbstractProvider._setTimeout | _setTimeout method.

Parameters

ParameterTypeDescription
timerIdnumberThe ID of the timer to clear.

Returns

void

Inherited from

JsonRpcApiProvider._clearTimeout

Source

providers/abstract-provider.ts:1752


destroy()

destroy(): void

Destroys the provider, stopping all processing and canceling all pending requests.

Returns

void

Inherited from

JsonRpcApiProvider.destroy

Source

providers/provider-jsonrpc.ts:1520


getLatestQiRate()

getLatestQiRate(zone, amt?): Promise<bigint>

Get the latest Qi rate for a zone.

Parameters

ParameterTypeDefault valueDescription
zoneZoneundefinedThe zone to get the rate for.
amt?number1The amount to get the rate for. Default is 1

Returns

Promise<bigint>

A promise that resolves to the latest Qi rate.

Inherited from

JsonRpcApiProvider.getLatestQiRate

Source

providers/abstract-provider.ts:883


getLatestQuaiRate()

getLatestQuaiRate(zone, amt?): Promise<bigint>

Get the latest Quai rate for a zone.

Parameters

ParameterTypeDefault valueDescription
zoneZoneundefinedThe zone to get the rate for.
amt?number1The amount to get the rate for. Default is 1

Returns

Promise<bigint>

A promise that resolves to the latest Quai rate.

Inherited from

JsonRpcApiProvider.getLatestQuaiRate

Source

providers/abstract-provider.ts:838


getProtocolExpansionNumber()

getProtocolExpansionNumber(): Promise<number>

Get the protocol expansion number.

Returns

Promise<number>

A promise that resolves to the protocol expansion number.

Inherited from

JsonRpcApiProvider.getProtocolExpansionNumber

Source

providers/abstract-provider.ts:870


getQiRateAtBlock()

getQiRateAtBlock(
   zone, 
   blockTag, 
amt?): Promise<bigint>

Get the Qi rate at a specific block.

Parameters

ParameterTypeDefault valueDescription
zoneZoneundefinedThe zone to get the rate for.
blockTagBlockTagundefinedThe block tag to get the rate at.
amt?number1The amount to get the rate for. Default is 1

Returns

Promise<bigint>

A promise that resolves to the Qi rate at the specified block.

Inherited from

JsonRpcApiProvider.getQiRateAtBlock

Source

providers/abstract-provider.ts:896


getQuaiRateAtBlock()

getQuaiRateAtBlock(
   zone, 
   blockTag, 
amt?): Promise<bigint>

Get the Quai rate at a specific block.

Parameters

ParameterTypeDefault valueDescription
zoneZoneundefinedThe zone to get the rate for.
blockTagBlockTagundefinedThe block tag to get the rate at.
amt?number1The amount to get the rate for. Default is 1

Returns

Promise<bigint>

A promise that resolves to the Quai rate at the specified block.

Inherited from

JsonRpcApiProvider.getQuaiRateAtBlock

Source

providers/abstract-provider.ts:851


getSigner()

getSigner(address?): Promise<JsonRpcSigner>

Returns a JsonRpcSigner for the given address.

Parameters

ParameterTypeDescription
address?string | numberThe address or index of the account.

Returns

Promise<JsonRpcSigner>

A promise that resolves to the JsonRpcSigner.

Inherited from

JsonRpcApiProvider.getSigner

Throws

If the account is invalid.

Source

providers/provider-jsonrpc.ts:1475


initialize()

initialize<U>(urls): Promise<void>

Initialize the URL map with the provided URLs.

Type parameters

Type parameterValue
Ustring[] | FetchRequest

Parameters

ParameterTypeDescription
urlsUThe URLs to initialize the map with.

Returns

Promise<void>

A promise that resolves when the map is initialized.

Inherited from

JsonRpcApiProvider.initialize

Source

providers/abstract-provider.ts:744


listAccounts()

listAccounts(): Promise<JsonRpcSigner[]>

Returns a list of JsonRpcSigners for all accounts.

Returns

Promise<JsonRpcSigner[]>

A promise that resolves to an array of JsonRpcSigners.

Inherited from

JsonRpcApiProvider.listAccounts

Source

providers/provider-jsonrpc.ts:1512


pause()

pause(dropWhilePaused?): void

Pause the provider. If dropWhilePaused, any events that occur while paused are dropped, otherwise all events will be emitted once the provider is unpaused.

Parameters

ParameterTypeDescription
dropWhilePaused?booleanWhether to drop events while paused.

Returns

void

Inherited from

JsonRpcApiProvider.pause

Source

providers/abstract-provider.ts:2090


resume()

resume(): void

Resume the provider.

Returns

void

Inherited from

JsonRpcApiProvider.resume

Source

providers/abstract-provider.ts:2119


shardFromHash()

shardFromHash(hash): Shard

Get the shard from a hash.

Parameters

ParameterTypeDescription
hashstringThe hash to get the shard from.

Returns

Shard

The shard.

Inherited from

JsonRpcApiProvider.shardFromHash

Source

providers/abstract-provider.ts:817


zoneFromAddress()

zoneFromAddress(_address): Promise<Zone>

Get the zone from an address.

Parameters

ParameterTypeDescription
_addressAddressLikeThe address to get the zone from.

Returns

Promise<Zone>

A promise that resolves to the zone.

Inherited from

JsonRpcApiProvider.zoneFromAddress

Source

providers/abstract-provider.ts:806


zoneFromHash()

zoneFromHash(hash): Zone

Get the zone from a hash.

Parameters

ParameterTypeDescription
hashstringThe hash to get the zone from.

Returns

Zone

The zone.

Inherited from

JsonRpcApiProvider.zoneFromHash

Source

providers/abstract-provider.ts:827