> For the complete documentation index, see [llms.txt](https://developers.polymath.network/polymesh-sdk-api-reference/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_client_network.network.md).

# api\_client\_Network.Network

[@polymeshassociation/polymesh-sdk](/polymesh-sdk-api-reference/docs-alpha/classes.md) / [Modules](/polymesh-sdk-api-reference/docs-alpha/modules.md) / [api/client/Network](/polymesh-sdk-api-reference/docs-alpha/modules-1/api_client_network.md) / Network

## Class: Network

[api/client/Network](/polymesh-sdk-api-reference/docs-alpha/modules-1/api_client_network.md).Network

Handles all Network related functionality, including querying for historical events from middleware

### Table of contents

#### Methods

* [getEventByIndexedArgs](#geteventbyindexedargs)
* [getEventsByIndexedArgs](#geteventsbyindexedargs)
* [getLatestBlock](#getlatestblock)
* [getNetworkProperties](#getnetworkproperties)
* [getProtocolFees](#getprotocolfees)
* [getSs58Format](#getss58format)
* [getTransactionByHash](#gettransactionbyhash)
* [getTreasuryAccount](#gettreasuryaccount)
* [getTreasuryBalance](#gettreasurybalance)
* [getVersion](#getversion)
* [transferPolyx](#transferpolyx)

### Methods

#### getEventByIndexedArgs

▸ **getEventByIndexedArgs**(`opts`): `Promise`<`null` | [`EventIdentifier`](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.eventidentifier.md)>

Retrieve a single event by any of its indexed arguments. Can be filtered using parameters

**`note`** uses the middleware

**Parameters**

| Name              | Type           | Description                                      |
| ----------------- | -------------- | ------------------------------------------------ |
| `opts`            | `Object`       | -                                                |
| `opts.eventArg0?` | `string`       | event parameter value to filter by in position 0 |
| `opts.eventArg1?` | `string`       | event parameter value to filter by in position 1 |
| `opts.eventArg2?` | `string`       | event parameter value to filter by in position 2 |
| `opts.eventId`    | `EventIdEnum`  | type of the event to fetch                       |
| `opts.moduleId`   | `ModuleIdEnum` | type of the module to fetch                      |

**Returns**

`Promise`<`null` | [`EventIdentifier`](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.eventidentifier.md)>

**Defined in**

[api/client/Network.ts:158](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L158)

***

#### getEventsByIndexedArgs

▸ **getEventsByIndexedArgs**(`opts`): `Promise`<`null` | [`EventIdentifier`](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.eventidentifier.md)\[]>

Retrieve a list of events. Can be filtered using parameters

**`note`** uses the middleware

**Parameters**

| Name              | Type           | Description                                      |
| ----------------- | -------------- | ------------------------------------------------ |
| `opts`            | `Object`       | -                                                |
| `opts.eventArg0?` | `string`       | event parameter value to filter by in position 0 |
| `opts.eventArg1?` | `string`       | event parameter value to filter by in position 1 |
| `opts.eventArg2?` | `string`       | event parameter value to filter by in position 2 |
| `opts.eventId`    | `EventIdEnum`  | type of the event to fetch                       |
| `opts.moduleId`   | `ModuleIdEnum` | type of the module to fetch                      |
| `opts.size?`      | `BigNumber`    | page size                                        |
| `opts.start?`     | `BigNumber`    | page offset                                      |

**Returns**

`Promise`<`null` | [`EventIdentifier`](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.eventidentifier.md)\[]>

**Defined in**

[api/client/Network.ts:197](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L197)

***

#### getLatestBlock

▸ **getLatestBlock**(): `Promise`<`BigNumber`>

Retrieve the number of the latest block in the chain

**Returns**

`Promise`<`BigNumber`>

**Defined in**

[api/client/Network.ts:52](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L52)

***

#### getNetworkProperties

▸ **getNetworkProperties**(): `Promise`<[`NetworkProperties`](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.networkproperties.md)>

Retrieve information for the current network

**Returns**

`Promise`<[`NetworkProperties`](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.networkproperties.md)>

**Defined in**

[api/client/Network.ts:73](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L73)

***

#### getProtocolFees

▸ **getProtocolFees**(`args`): `Promise`<[`ProtocolFees`](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.protocolfees.md)\[]>

Retrieve the protocol fees associated with running specific transactions

**Parameters**

| Name        | Type       | Description                                                                                                                                |
| ----------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `args`      | `Object`   | -                                                                                                                                          |
| `args.tags` | `TxTag`\[] | list of transaction tags (i.e. \[TxTags.asset.CreateAsset, TxTags.asset.RegisterTicker] or \["asset.createAsset", "asset.registerTicker"]) |

**Returns**

`Promise`<[`ProtocolFees`](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.protocolfees.md)\[]>

**Defined in**

[api/client/Network.ts:97](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L97)

***

#### getSs58Format

▸ **getSs58Format**(): `BigNumber`

Retrieve the chain's SS58 format

**Returns**

`BigNumber`

**Defined in**

[api/client/Network.ts:66](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L66)

***

#### getTransactionByHash

▸ **getTransactionByHash**(`opts`): `Promise`<`null` | [`ExtrinsicDataWithFees`](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.extrinsicdatawithfees.md)>

Retrieve a transaction by hash

**`note`** uses the middleware

**Parameters**

| Name          | Type     | Description             |
| ------------- | -------- | ----------------------- |
| `opts`        | `Object` | -                       |
| `opts.txHash` | `string` | hash of the transaction |

**Returns**

`Promise`<`null` | [`ExtrinsicDataWithFees`](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.extrinsicdatawithfees.md)>

**Defined in**

[api/client/Network.ts:241](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L241)

***

#### getTreasuryAccount

▸ **getTreasuryAccount**(): [`Account`](/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_account.account.md)

Get the treasury wallet address

**Returns**

[`Account`](/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_account.account.md)

**Defined in**

[api/client/Network.ts:104](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L104)

***

#### getTreasuryBalance

▸ **getTreasuryBalance**(): `Promise`<`BigNumber`>

Get the Treasury POLYX balance

**`note`** can be subscribed to

**Returns**

`Promise`<`BigNumber`>

**Defined in**

[api/client/Network.ts:117](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L117)

▸ **getTreasuryBalance**(`callback`): `Promise`<[`UnsubCallback`](/polymesh-sdk-api-reference/docs-alpha/modules-1/types.md#unsubcallback)>

**Parameters**

| Name       | Type                                                                                                |
| ---------- | --------------------------------------------------------------------------------------------------- |
| `callback` | [`SubCallback`](/polymesh-sdk-api-reference/docs-alpha/modules-1/types.md#subcallback)<`BigNumber`> |

**Returns**

`Promise`<[`UnsubCallback`](/polymesh-sdk-api-reference/docs-alpha/modules-1/types.md#unsubcallback)>

**Defined in**

[api/client/Network.ts:118](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L118)

***

#### getVersion

▸ **getVersion**(): `Promise`<`string`>

Fetch the current network version (i.e. 3.1.0)

**Returns**

`Promise`<`string`>

**Defined in**

[api/client/Network.ts:59](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L59)

***

#### transferPolyx

▸ **transferPolyx**(`args`, `opts?`): `Promise`<`TransactionQueue`<`void`, `void`, `unknown`\[]\[]>>

Transfer an amount of POLYX to a specified Account

**`note`** this method is of type [ProcedureMethod](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.proceduremethod.md), which means you can call [transferPolyx.checkAuthorization](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.proceduremethod.md#checkauthorization) on it to see whether the signing Account and Identity have the required roles and permissions to run it

**Parameters**

| Name    | Type                                                                                                                           |
| ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `args`  | [`TransferPolyxParams`](/polymesh-sdk-api-reference/docs-alpha/interfaces/api_procedures_transferpolyx.transferpolyxparams.md) |
| `opts?` | [`ProcedureOpts`](/polymesh-sdk-api-reference/docs-alpha/interfaces/types.procedureopts.md)                                    |

**Returns**

`Promise`<`TransactionQueue`<`void`, `void`, `unknown`\[]\[]>>

**Defined in**

[api/client/Network.ts:143](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/client/Network.ts#L143)
