# Connection · FT4 TypeScript client · Chromia Docs (concept)

> An object that allows the user to make ft aware queries to the blockchain.
The queries that can be made using this object are general queries that are
not 

Source: https://docs.chromia.com/pages/ft4-ts-client/interfaces/ft-session.Connection/

Interface

# Connection

On this page

* [Properties](#properties)
* [blockchainRid](#blockchainrid)
* [client](#client)
* [getAccountAuthDescriptorsFiltered](#getaccountauthdescriptorsfiltered)
* [getAccountById](#getaccountbyid)
* [getAccountCreationTransfersFiltered](#getaccountcreationtransfersfiltered)
* [getAccountLinksFiltered](#getaccountlinksfiltered)
* [getAccountsByAuthDescriptorId](#getaccountsbyauthdescriptorid)
* [getAccountsBySigner](#getaccountsbysigner)
* [getAccountsByType](#getaccountsbytype)
* [getAccountsFiltered](#getaccountsfiltered)
* [getAllAssets](#getallassets)
* [getApiVersion](#getapiversion)
* [getAppliedTransfersFiltered](#getappliedtransfersfiltered)
* [getAssetById](#getassetbyid)
* [getAssetOriginFiltered](#getassetoriginfiltered)
* [getAssetsByName](#getassetsbyname)
* [getAssetsBySymbol](#getassetsbysymbol)
* [getAssetsByType](#getassetsbytype)
* [getAssetsFiltered](#getassetsfiltered)
* [getAuthDescriptorSignersFiltered](#getauthdescriptorsignersfiltered)
* [getAuthDescriptorValidator](#getauthdescriptorvalidator)
* [getBalancesFiltered](#getbalancesfiltered)
* [getBlockHeight](#getblockheight)
* [getCanceledTransfersFiltered](#getcanceledtransfersfiltered)
* [getConfig](#getconfig)
* [getCrosschainTransferHistoryEntriesFiltered](#getcrosschaintransferhistoryentriesfiltered)
* [getEnabledRegistrationStrategies](#getenabledregistrationstrategies)
* [getMainAuthDescriptorsFiltered](#getmainauthdescriptorsfiltered)
* [getPendingTransfersFiltered](#getpendingtransfersfiltered)
* [getRecalledTransfersFiltered](#getrecalledtransfersfiltered)
* [getRevertedTransfersFiltered](#getrevertedtransfersfiltered)
* [getRlStatesFiltered](#getrlstatesfiltered)
* [getSubscriptionsFiltered](#getsubscriptionsfiltered)
* [getTransferDetails](#gettransferdetails)
* [getTransferDetailsByAsset](#gettransferdetailsbyasset)
* [getTransferHistoryEntriesFiltered](#gettransferhistoryentriesfiltered)
* [getUnappliedTransfersFiltered](#getunappliedtransfersfiltered)
* [getVersion](#getversion)

An object that allows the user to make ft aware queries to the blockchain.
The queries that can be made using this object are general queries that are
not specific to one account. However, a `Connection` instance can be used
to acquire an `Account` instance, from which account specific details can
be found.

#### See

[Account](https://docs.chromia.com/pages/ft4-ts-client/interfaces/accounts.Account/)

```signature
interface Connection {
    blockchainRid: Buffer;
    client: IClient;
    getAccountAuthDescriptorsFiltered: (
        accountAuthDescriptorFilter?: AccountAuthDescriptorFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<AnyAuthDescriptor>>;
    getAccountById: (accountId: BufferId) => Promise<Account | null>;
    getAccountCreationTransfersFiltered: (
        accountCreationTransferFilter?: AccountCreationTransferFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<AccountCreationTransfer>>;
    getAccountLinksFiltered: (
        accountLinkFilter?: AccountLinkFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<{ account: Account; secondary: Account }>>;
    getAccountsByAuthDescriptorId: (
        id: BufferId,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Account>>;
    getAccountsBySigner: (
        signer: BufferId,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Account>>;
    getAccountsByType: (
        type: string,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Account>>;
    getAccountsFiltered: (
        accountFilter?: AccountFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Account>>;
    getAllAssets: (
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Asset>>;
    getApiVersion: () => Promise<number>;
    getAppliedTransfersFiltered: (
        appliedTransferFilter?: TransferFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<AppliedTransfer>>;
    getAssetById: (assetId: BufferId) => Promise<Asset | null>;
    getAssetOriginFiltered: (
        assetOriginFilter?: AssetOriginFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<AssetOrigin>>;
    getAssetsByName: (
        name: string,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Asset>>;
    getAssetsBySymbol: (
        symbol: string,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Asset>>;
    getAssetsByType: (
        type: string,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Asset>>;
    getAssetsFiltered: (
        assetFilter?: AssetFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Asset>>;
    getAuthDescriptorSignersFiltered: (
        authDescriptorSignerFilter?: AuthDescriptorSignerFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<AuthDescriptorSigner>>;
    getAuthDescriptorValidator: (useCache: boolean) => AuthDescriptorValidator;
    getBalancesFiltered: (
        balanceFilter?: BalanceFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Balance>>;
    getBlockHeight: () => Promise<number>;
    getCanceledTransfersFiltered: (
        canceledTransferFilter?: TransferFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Transfer>>;
    getConfig: () => Promise<Config>;
    getCrosschainTransferHistoryEntriesFiltered: (
        crosschainTransferHistoryEntryFilter?: CrosschainTransferHistoryEntryFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<CrosschainTransferHistoryEntry>>;
    getEnabledRegistrationStrategies: () => Promise<string[]>;
    getMainAuthDescriptorsFiltered: (
        mainAccountAuthDescriptorFilter?: MainAccountAuthDescriptorFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<AnyAuthDescriptor>>;
    getPendingTransfersFiltered: (
        pendingTransferFilter?: PendingTransferFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<PendingTransfer>>;
    getRecalledTransfersFiltered: (
        recalledTransferFilter?: TransferFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Transfer>>;
    getRevertedTransfersFiltered: (
        revertedTransferFilter?: TransferFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Transfer>>;
    getRlStatesFiltered: (
        rlStateFilter?: RlStateFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<RlState>>;
    getSubscriptionsFiltered: (
        subscriptionFilter?: SubscriptionFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Subscription>>;
    getTransferDetails: (
        txRid: BufferId,
        opIndex: number,
    ) => Promise<TransferDetail[]>;
    getTransferDetailsByAsset: (
        txRid: BufferId,
        opIndex: number,
        assetId: BufferId,
    ) => Promise<TransferDetail[]>;
    getTransferHistoryEntriesFiltered: (
        transferHistoryEntryFilter?: TransferHistoryEntryFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<TransferHistoryEntry>>;
    getUnappliedTransfersFiltered: (
        unappliedTransferFilter?: TransferFilter,
        limit?: number,
        cursor?: OptionalPageCursor,
    ) => Promise<PaginatedEntity<Transfer>>;
    getVersion: () => Promise<string>;
}
```

#### Hierarchy ([View Summary](https://docs.chromia.com/pages/ft4-ts-client/hierarchy/#ft-session.Connection))

* Queryable
  + Connection
    - [Session](https://docs.chromia.com/pages/ft4-ts-client/interfaces/ft-session.Session/)

## Properties

### blockchainRid

```signature
blockchainRid: Buffer
```

### client

```signature
client: IClient
```

### getAccountAuthDescriptorsFiltered

```signature
getAccountAuthDescriptorsFiltered: (
    accountAuthDescriptorFilter?: AccountAuthDescriptorFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<AnyAuthDescriptor>>
```

Fetches all AccountAuthDescriptors with satisfy the accountAuthDescriptor filter, paginated

#### Type Declaration

* ```signature
  (
      accountAuthDescriptorFilter?: AccountAuthDescriptorFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<AnyAuthDescriptor>>
  ```

  + #### Parameters

    - `Optional`accountAuthDescriptorFilter: [AccountAuthDescriptorFilter](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.AccountAuthDescriptorFilter/)

      the accountAuthDescriptor filter
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[AnyAuthDescriptor](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.AnyAuthDescriptor/)>>

### getAccountById

```signature
getAccountById: (accountId: BufferId) => Promise<Account | null>
```

Fetches the account with the specified id

#### Type Declaration

* ```signature
  (accountId: BufferId): Promise<Account | null>
  ```

  + #### Parameters

    - accountId: BufferId

      the id of the account to fetch

    #### Returns Promise<[Account](https://docs.chromia.com/pages/ft4-ts-client/interfaces/accounts.Account/) | null>

    the account with the specified id, or null if no account with that id exists

### getAccountCreationTransfersFiltered

```signature
getAccountCreationTransfersFiltered: (
    accountCreationTransferFilter?: AccountCreationTransferFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<AccountCreationTransfer>>
```

Fetches all AccountCreationTransfers with satisfy the accountCreationTransferFilter filter, paginated

#### Type Declaration

* ```signature
  (
      accountCreationTransferFilter?: AccountCreationTransferFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<AccountCreationTransfer>>
  ```

  + #### Parameters

    - `Optional`accountCreationTransferFilter: [AccountCreationTransferFilter](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.AccountCreationTransferFilter/)

      the accountCreationTransfer filter
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[AccountCreationTransfer](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.AccountCreationTransfer/)>>

### getAccountLinksFiltered

```signature
getAccountLinksFiltered: (
    accountLinkFilter?: AccountLinkFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<{ account: Account; secondary: Account }>>
```

Fetches all AccountLinks with satisfy the accountLinkFilter filter, paginated

#### Type Declaration

* ```signature
  (
      accountLinkFilter?: AccountLinkFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<{ account: Account; secondary: Account }>>
  ```

  + #### Parameters

    - `Optional`accountLinkFilter: [AccountLinkFilter](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.AccountLinkFilter/)

      the accountLink filter
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<{ account: [Account](https://docs.chromia.com/pages/ft4-ts-client/interfaces/accounts.Account/); secondary: [Account](https://docs.chromia.com/pages/ft4-ts-client/interfaces/accounts.Account/) }>>

### getAccountsByAuthDescriptorId

```signature
getAccountsByAuthDescriptorId: (
    id: BufferId,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Account>>
```

Fetches all accounts with which the auth descriptor with the specified id is associated

#### Type Declaration

* ```signature
  (
      id: BufferId,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Account>>
  ```

  + #### Parameters

    - id: BufferId

      id of the auth descriptor
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Account](https://docs.chromia.com/pages/ft4-ts-client/interfaces/accounts.Account/)>>

### getAccountsBySigner

```signature
getAccountsBySigner: (
    signer: BufferId,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Account>>
```

Fetches all accounts with which the provided signer has at least one associated auth descriptor

#### Type Declaration

* ```signature
  (
      signer: BufferId,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Account>>
  ```

  + #### Parameters

    - signer: BufferId

      the pubkey of the signer
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Account](https://docs.chromia.com/pages/ft4-ts-client/interfaces/accounts.Account/)>>

### getAccountsByType

```signature
getAccountsByType: (
    type: string,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Account>>
```

Returns all accounts of the specified type that is registered on the blockchain as a paginated entity

#### Type Declaration

* ```signature
  (
      type: string,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Account>>
  ```

  + #### Parameters

    - type: string

      the type of account to get
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Account](https://docs.chromia.com/pages/ft4-ts-client/interfaces/accounts.Account/)>>

### getAccountsFiltered

```signature
getAccountsFiltered: (
    accountFilter?: AccountFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Account>>
```

Fetches all accounts with satisfy the account filter, paginated

#### Type Declaration

* ```signature
  (
      accountFilter?: AccountFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Account>>
  ```

  + #### Parameters

    - `Optional`accountFilter: [AccountFilter](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.AccountFilter/)

      the account filter
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Account](https://docs.chromia.com/pages/ft4-ts-client/interfaces/accounts.Account/)>>

### getAllAssets

```signature
getAllAssets: (
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Asset>>
```

Retrieves all assets that are registered on a blockchain as a paginated entity

#### Type Declaration

* ```signature
  (limit?: number, cursor?: OptionalPageCursor): Promise<PaginatedEntity<Asset>>
  ```

  + #### Parameters

    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Asset](https://docs.chromia.com/pages/ft4-ts-client/types/asset.Asset/)>>

### getApiVersion

```signature
getApiVersion: () => Promise<number>
```

Returns the API version of ft library installed on the blockchain. It will be an integer.

### getAppliedTransfersFiltered

```signature
getAppliedTransfersFiltered: (
    appliedTransferFilter?: TransferFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<AppliedTransfer>>
```

Retrieves applied transfers based on the selected filter of TransferFilter, paginated

#### Type Declaration

* ```signature
  (
      appliedTransferFilter?: TransferFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<AppliedTransfer>>
  ```

  + #### Parameters

    - `Optional`appliedTransferFilter: [TransferFilter](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.TransferFilter/)

      The applied transfer filter (array of initTxRids and initOpIndex)
      that can be applied to the query results
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[AppliedTransfer](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.AppliedTransfer/)>>

#### Returns

paginated results of applied transfers based on the filter selection

Available since ApiVersion 1

### getAssetById

```signature
getAssetById: (assetId: BufferId) => Promise<Asset | null>
```

Retrieves asset information using its id

#### Type Declaration

* ```signature
  (assetId: BufferId): Promise<Asset | null>
  ```

  + #### Parameters

    - assetId: BufferId

      the id of the asset to fetch

    #### Returns Promise<[Asset](https://docs.chromia.com/pages/ft4-ts-client/types/asset.Asset/) | null>

#### Returns

The asset details, or null if no asset with the specified id was found

### getAssetOriginFiltered

```signature
getAssetOriginFiltered: (
    assetOriginFilter?: AssetOriginFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<AssetOrigin>>
```

Retrieves assets origin based on the selected filter of AssetOriginFilter, paginated

#### Type Declaration

* ```signature
  (
      assetOriginFilter?: AssetOriginFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<AssetOrigin>>
  ```

  + #### Parameters

    - `Optional`assetOriginFilter: [AssetOriginFilter](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.AssetOriginFilter/)

      The asset origin filter (array of assetIds) that can be applied to the query results
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[AssetOrigin](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.AssetOrigin/)>>

#### Returns

paginated results of assets origin based on the filter selection

Available since ApiVersion 1

### getAssetsByName

```signature
getAssetsByName: (
    name: string,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Asset>>
```

Retrieves asset information using its name. As there can be multiple assets with the same name,
the information is returned as a paginated entity.

#### Type Declaration

* ```signature
  (
      name: string,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Asset>>
  ```

  + #### Parameters

    - name: string

      the name of the asset to fetch
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Asset](https://docs.chromia.com/pages/ft4-ts-client/types/asset.Asset/)>>

### getAssetsBySymbol

```signature
getAssetsBySymbol: (
    symbol: string,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Asset>>
```

Retrieves asset information using its symbol. As there can be multiple assets with the same symbol,
the information is returned as a paginated entity.

#### Type Declaration

* ```signature
  (
      symbol: string,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Asset>>
  ```

  + #### Parameters

    - symbol: string

      the symbol of the asset to fetch
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Asset](https://docs.chromia.com/pages/ft4-ts-client/types/asset.Asset/)>>

### getAssetsByType

```signature
getAssetsByType: (
    type: string,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Asset>>
```

Retrieves all assets of a specific type, e.g., `"ft4"`, as a paginated entity

#### Type Declaration

* ```signature
  (
      type: string,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Asset>>
  ```

  + #### Parameters

    - type: string

      the type of assets to return
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Asset](https://docs.chromia.com/pages/ft4-ts-client/types/asset.Asset/)>>

### getAssetsFiltered

```signature
getAssetsFiltered: (
    assetFilter?: AssetFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Asset>>
```

Retrieves all assets based on the filtering options provided in AssetFilter and
that are registered on a blockchain as a paginated entity

#### Type Declaration

* ```signature
  (
      assetFilter?: AssetFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Asset>>
  ```

  + #### Parameters

    - `Optional`assetFilter: [AssetFilter](https://docs.chromia.com/pages/ft4-ts-client/types/asset.AssetFilter/)

      The asset filter (list of ids, name, symbol and type) that can be applied to the query results
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Asset](https://docs.chromia.com/pages/ft4-ts-client/types/asset.Asset/)>>

### getAuthDescriptorSignersFiltered

```signature
getAuthDescriptorSignersFiltered: (
    authDescriptorSignerFilter?: AuthDescriptorSignerFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<AuthDescriptorSigner>>
```

Fetches all AuthDescriptorSigners with satisfy the authDescriptorSigner filter, paginated

#### Type Declaration

* ```signature
  (
      authDescriptorSignerFilter?: AuthDescriptorSignerFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<AuthDescriptorSigner>>
  ```

  + #### Parameters

    - `Optional`authDescriptorSignerFilter: [AuthDescriptorSignerFilter](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.AuthDescriptorSignerFilter/)

      the authDescriptorSigner filter
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[AuthDescriptorSigner](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.AuthDescriptorSigner/)>>

### getAuthDescriptorValidator

```signature
getAuthDescriptorValidator: (useCache: boolean) => AuthDescriptorValidator
```

Gets a validator instance that can be used to validate if an auth descriptor is valid or not

#### Type Declaration

* ```signature
  (useCache: boolean): AuthDescriptorValidator
  ```

  + #### Parameters

    - useCache: boolean

      whether the returned validator should cache validation results or make new backend request for each function call

    #### Returns [AuthDescriptorValidator](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.AuthDescriptorValidator/)

### getBalancesFiltered

```signature
getBalancesFiltered: (
    balanceFilter?: BalanceFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Balance>>
```

Retrieves all balances based on the filtering options provided in BalanceFilter and
that are registered on a blockchain as a paginated entity

#### Type Declaration

* ```signature
  (
      balanceFilter?: BalanceFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Balance>>
  ```

  + #### Parameters

    - `Optional`balanceFilter: [BalanceFilter](https://docs.chromia.com/pages/ft4-ts-client/types/asset.BalanceFilter/)

      The balance filter (list of account\_ids and list of asset\_ids) that can be applied to the query results
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Balance](https://docs.chromia.com/pages/ft4-ts-client/types/asset.Balance/)>>

### getBlockHeight

```signature
getBlockHeight: () => Promise<number>
```

Returns the current block height of the underlying chain

### getCanceledTransfersFiltered

```signature
getCanceledTransfersFiltered: (
    canceledTransferFilter?: TransferFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Transfer>>
```

Retrieves canceled transfers based on the selected filter of in TransferFilter, paginated

#### Type Declaration

* ```signature
  (
      canceledTransferFilter?: TransferFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Transfer>>
  ```

  + #### Parameters

    - `Optional`canceledTransferFilter: [TransferFilter](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.TransferFilter/)

      The canceled transfer filter (array of initTxRids and initOpIndex)
      that can be applied to the query results
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Transfer](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.Transfer/)>>

#### Returns

paginated results of canceled transfers based on the filter selection

Available since ApiVersion 1

### getConfig

```signature
getConfig: () => Promise<Config>
```

Returns the ft config that is currently in effect

### getCrosschainTransferHistoryEntriesFiltered

```signature
getCrosschainTransferHistoryEntriesFiltered: (
    crosschainTransferHistoryEntryFilter?: CrosschainTransferHistoryEntryFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<CrosschainTransferHistoryEntry>>
```

Retrieves all crosschain transfer history entries based on the filtering options provided in CrosschainTransferHistoryEntryFilter
as a paginated entity

#### Type Declaration

* ```signature
  (
      crosschainTransferHistoryEntryFilter?: CrosschainTransferHistoryEntryFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<CrosschainTransferHistoryEntry>>
  ```

  + #### Parameters

    - `Optional`crosschainTransferHistoryEntryFilter: [CrosschainTransferHistoryEntryFilter](https://docs.chromia.com/pages/ft4-ts-client/types/asset.CrosschainTransferHistoryEntryFilter/)

      The crosschain transfer history entry filter
      (list of account\_ids, list of asset\_ids, list of transaction\_rids and op\_index) that can be applied to the query results
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[CrosschainTransferHistoryEntry](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.CrosschainTransferHistoryEntry/)>>

### getEnabledRegistrationStrategies

```signature
getEnabledRegistrationStrategies: () => Promise<string[]>
```

Returns a list containing the name of all of the enabled strategies

### getMainAuthDescriptorsFiltered

```signature
getMainAuthDescriptorsFiltered: (
    mainAccountAuthDescriptorFilter?: MainAccountAuthDescriptorFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<AnyAuthDescriptor>>
```

Fetches all MainAuthDescriptors with satisfy the mainAccountAuthDescriptor filter, paginated

#### Type Declaration

* ```signature
  (
      mainAccountAuthDescriptorFilter?: MainAccountAuthDescriptorFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<AnyAuthDescriptor>>
  ```

  + #### Parameters

    - `Optional`mainAccountAuthDescriptorFilter: [MainAccountAuthDescriptorFilter](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.MainAccountAuthDescriptorFilter/)

      the mainAccountAuthDescriptor filter
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[AnyAuthDescriptor](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.AnyAuthDescriptor/)>>

### getPendingTransfersFiltered

```signature
getPendingTransfersFiltered: (
    pendingTransferFilter?: PendingTransferFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<PendingTransfer>>
```

Retrieves pending transfers based on the selected filter of PendingTransferFilter, paginated

#### Type Declaration

* ```signature
  (
      pendingTransferFilter?: PendingTransferFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<PendingTransfer>>
  ```

  + #### Parameters

    - `Optional`pendingTransferFilter: [PendingTransferFilter](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.PendingTransferFilter/)

      The pending transfer filter (array of transactionIds, initOpIndex and senderAccountId)
      that can be applied to the query results
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[PendingTransfer](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.PendingTransfer/)>>

#### Returns

paginated results of pending transfers based on the filter selection

Available since ApiVersion 1

### getRecalledTransfersFiltered

```signature
getRecalledTransfersFiltered: (
    recalledTransferFilter?: TransferFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Transfer>>
```

Retrieves recalled transfers based on the selected filter of TransferFilter, paginated

#### Type Declaration

* ```signature
  (
      recalledTransferFilter?: TransferFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Transfer>>
  ```

  + #### Parameters

    - `Optional`recalledTransferFilter: [TransferFilter](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.TransferFilter/)

      The recalled transfer filter (array of initTxRids and initOpIndex)
      that can be applied to the query results
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Transfer](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.Transfer/)>>

#### Returns

paginated results of recalled transfers based on the filter selection

Available since ApiVersion 1

### getRevertedTransfersFiltered

```signature
getRevertedTransfersFiltered: (
    revertedTransferFilter?: TransferFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Transfer>>
```

Retrieves reverted transfers based on the selected filter of TransferFilter, paginated

#### Type Declaration

* ```signature
  (
      revertedTransferFilter?: TransferFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Transfer>>
  ```

  + #### Parameters

    - `Optional`revertedTransferFilter: [TransferFilter](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.TransferFilter/)

      The reverted transfer filter (array of initTxRids and initOpIndex)
      that can be applied to the query results
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Transfer](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.Transfer/)>>

#### Returns

paginated results of reverted transfers based on the filter selection

Available since ApiVersion 1

### getRlStatesFiltered

```signature
getRlStatesFiltered: (
    rlStateFilter?: RlStateFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<RlState>>
```

Fetches all Rate limit states with satisfy the rlState filter, paginated

#### Type Declaration

* ```signature
  (
      rlStateFilter?: RlStateFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<RlState>>
  ```

  + #### Parameters

    - `Optional`rlStateFilter: [RlStateFilter](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.RlStateFilter/)

      the rlState filter
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[RlState](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.RlState/)>>

### getSubscriptionsFiltered

```signature
getSubscriptionsFiltered: (
    subscriptionFilter?: SubscriptionFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Subscription>>
```

Fetches all Subscriptions with satisfy the subscriptionFilter filter, paginated

#### Type Declaration

* ```signature
  (
      subscriptionFilter?: SubscriptionFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Subscription>>
  ```

  + #### Parameters

    - `Optional`subscriptionFilter: [SubscriptionFilter](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.SubscriptionFilter/)

      the subscriptionFilter filter
    - `Optional`limit: number

      maximum size of the returned page
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      at what entry the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Subscription](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.Subscription/)>>

### getTransferDetails

```signature
getTransferDetails: (
    txRid: BufferId,
    opIndex: number,
) => Promise<TransferDetail[]>
```

Retrieves the details of a transfer

#### Type Declaration

* ```signature
  (txRid: BufferId, opIndex: number): Promise<TransferDetail[]>
  ```

  + #### Parameters

    - txRid: BufferId

      the id of the transaction in which the transfer was made
    - opIndex: number

      the index of the transfer operation within the transaction

    #### Returns Promise<[TransferDetail](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.TransferDetail/)[]>

#### Returns

Details about the transfer

### getTransferDetailsByAsset

```signature
getTransferDetailsByAsset: (
    txRid: BufferId,
    opIndex: number,
    assetId: BufferId,
) => Promise<TransferDetail[]>
```

Retrieves details of a transfer but only the details that was made with a specific asset

#### Type Declaration

* ```signature
  (txRid: BufferId, opIndex: number, assetId: BufferId): Promise<TransferDetail[]>
  ```

  + #### Parameters

    - txRid: BufferId

      the id of the transaction in which the transfer was made
    - opIndex: number

      the index of the transfer operation within the transaction
    - assetId: BufferId

      the asset id for which to return details

    #### Returns Promise<[TransferDetail](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.TransferDetail/)[]>

#### Returns

The transfer details

### getTransferHistoryEntriesFiltered

```signature
getTransferHistoryEntriesFiltered: (
    transferHistoryEntryFilter?: TransferHistoryEntryFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<TransferHistoryEntry>>
```

Retrieves all transfer history entries based on the filtering options provided in TransferHistoryEntryFilter
as a paginated entity

#### Type Declaration

* ```signature
  (
      transferHistoryEntryFilter?: TransferHistoryEntryFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<TransferHistoryEntry>>
  ```

  + #### Parameters

    - `Optional`transferHistoryEntryFilter: [TransferHistoryEntryFilter](https://docs.chromia.com/pages/ft4-ts-client/types/asset.TransferHistoryEntryFilter/)

      The transfer history entry filter
      (list of account\_ids, list of asset\_ids, list of transaction\_rids and op\_index) that can be applied to the query results
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[TransferHistoryEntry](https://docs.chromia.com/pages/ft4-ts-client/types/accounts.TransferHistoryEntry/)>>

### getUnappliedTransfersFiltered

```signature
getUnappliedTransfersFiltered: (
    unappliedTransferFilter?: TransferFilter,
    limit?: number,
    cursor?: OptionalPageCursor,
) => Promise<PaginatedEntity<Transfer>>
```

Retrieves unapplied transfers based on the selected filter of TransferFilter, paginated

#### Type Declaration

* ```signature
  (
      unappliedTransferFilter?: TransferFilter,
      limit?: number,
      cursor?: OptionalPageCursor,
  ): Promise<PaginatedEntity<Transfer>>
  ```

  + #### Parameters

    - `Optional`unappliedTransferFilter: [TransferFilter](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.TransferFilter/)

      The unapplied transfer filter (array of initTxRids and initOpIndex)
      that can be applied to the query results
    - `Optional`limit: number

      maximum page size
    - `Optional`cursor: [OptionalPageCursor](https://docs.chromia.com/pages/ft4-ts-client/types/ft-session.OptionalPageCursor/)

      where the page should start

      Available since ApiVersion 1

    #### Returns Promise<[PaginatedEntity](https://docs.chromia.com/pages/ft4-ts-client/types/utils.PaginatedEntity/)<[Transfer](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.Transfer/)>>

#### Returns

paginated results of unapplied transfers based on the filter selection

Available since ApiVersion 1

### getVersion

```signature
getVersion: () => Promise<string>
```

Returns the version of ft library installed on the blockchain with the format ..

[View this page on docs.chromia.com](https://docs.chromia.com/pages/ft4-ts-client/interfaces/ft-session.Connection.html)Generated API reference, mirrored from the live docs
