Catalog npm
Back to packageRELEASE DETAILS

5.4.12

npm

@0xsequence/hooks

React hooks for Sequence Web SDK

Published13 Jul 2026
Direct dependencies15
Transitive dependenciesNot calculated

README

Current package documentation

@0xsequence/hooks

React hooks to interface with Sequence services.

Wrap your application with the SequenceHooksProvider to provide a config to the hooks.

<SequenceHooksProvider
  config={{
    projectAccessKey: 'your-project-access-key',
    env: {
      indexerGatewayUrl: 'your-indexer-gateway-url',
      metadataUrl: 'your-metadata-url',
      apiUrl: 'your-api-url',
      indexerUrl: 'your-indexer-url',
      imageProxyUrl: 'your-image-proxy-url',
      builderUrl: 'your-builder-api-url'
    }
  }}
>
  <App />
</SequenceHooksProvider>

Hooks:

Sequence hooks are grouped into 5 categories, based on the sequence service they interact with:

API

  • useGetCoinPrices
  • useGetCollectiblePrices
  • useGetExchangeRate

Indexer

  • useGetTransactionHistory
  • useGetTransactionHistorySummary

Indexer Gateway

  • useGetNativeTokenBalance
  • useGetTokenBalancesSummary
  • useGetTokenBalancesDetails
  • useGetTokenBalancesByContract
  • useGetSingleTokenBalance

Metadata

  • useGetContractInfo
  • useGetMultipleContractInfo
  • useGetTokenMetadata

Combination

  • useGetSwapQuote

Usage

useGetCoinPrices

import { useGetCoinPrices } from '@0xsequence/hooks'

const { data, isLoading, error } = useGetCoinPrices(
  [
    {
      chainId: 1,
      contractAddress: '0x0123456789012345678901234567890123456789'
    }
  ],
  {
    // options param is optional and default values are below
    disabled: false
  }
)

useGetCollectiblePrices

import { useGetCollectiblePrices } from '@0xsequence/hooks'

const { data, isLoading, error } = useGetCollectiblePrices(
  [
    {
      chainId: 1,
      contractAddress: '0x0123456789012345678901234567890123456789',
      tokenId: '1'
    }
  ],
  {
    // options param is optional and default values are below
    disabled: false
  }
)

useGetExchangeRate

import { useGetExchangeRate } from '@0xsequence/hooks'

const { data, isLoading, error } = useGetExchangeRate('CAD', {
  // options param is optional and default values are below
  disabled: false
})

useGetTransactionHistory

import { useGetTransactionHistory } from '@0xsequence/hooks'

const { data, isLoading, fetchNextPage, hasNextPage, isFetchingNextPage, error } = useGetTransactionHistory({
  accountAddresses: ['0x0123456789012345678901234567890123456789'],
  contractAddresses: ['0x0123456789012345678901234567890123456789'], // optional
  tokenId: '1', // optional
  chainId: 1, // optional
  page: { // optional
    pageSize: 10,
  },
  {
    // options param is optional and default values are below
    disabled: false,
  }
})

useGetTransactionHistorySummary

import { useGetTransactionHistorySummary } from '@0xsequence/hooks'

const { data, isLoading, error } = useGetTransactionHistorySummary(
  {
    accountAddresses: ['0x0123456789012345678901234567890123456789'],
    chainIds: [1]
  },
  {
    // options param is optional and default values are below
    disabled: false
  }
)

useGetNativeTokenBalance

import { useGetNativeTokenBalance } from '@0xsequence/hooks'

const { data, isLoading, error } = useGetNativeTokenBalance(
  {
    accountAddress: '0x0123456789012345678901234567890123456789',
    chainIds: [1], // either use chainIds or networks name
    networks: ['mainnet']
  },
  {
    // options param is optional and default values are below
    disabled: false
  }
)

useGetTokenBalancesSummary

import { ContractVerificationStatus } from '@0xsequence/indexer'
import { useGetTokenBalancesSummary } from '@0xsequence/hooks'

const { data, isLoading, fetchNextPage, hasNextPage, isFetchingNextPage, error } = useGetTokenBalancesSummary(
  {
    chainIds: [1], // either use chainIds or networks name
    networks: ['mainnet'],
    filter: {
      accountAddresses: ['0x0123456789012345678901234567890123456789'],
      contractWhitelist: ['0x0123456789012345678901234567890123456789'],
      contractBlacklist: ['0x0000000000000000000000000000000000000000'],
      contractStatus: ContractVerificationStatus.VERIFIED,
      omitNativeBalances: false
    },
    omitMetadata: false, // optional
    page: {
      // optional
      pageSize: 10
    }
  },
  {
    // options param is optional and default values are below
    disabled: false
  }
)

useGetTokenBalancesDetails

import { ContractVerificationStatus } from '@0xsequence/indexer'
import { useGetTokenBalancesDetails } from '@0xsequence/hooks'

const { data, isLoading, fetchNextPage, hasNextPage, isFetchingNextPage, error } = useGetTokenBalancesDetails(
  {
    chainIds: [1], // either use chainIds or networks name
    networks: ['mainnet'],
    filter: {
      accountAddresses: ['0x0123456789012345678901234567890123456789'],
      contractWhitelist: ['0x0123456789012345678901234567890123456789'],
      contractBlacklist: ['0x0000000000000000000000000000000000000000'],
      contractStatus: ContractVerificationStatus.VERIFIED,
      omitNativeBalances: false
    },
    omitMetadata: false, // optional
    page: {
      // optional
      pageSize: 10
    }
  },
  {
    // options param is optional and default values are below
    disabled: false
  }
)

useGetTokenBalancesByContract

import { ContractVerificationStatus } from '@0xsequence/indexer'
import { useGetTokenBalancesByContract } from '@0xsequence/hooks'

const { data, isLoading, fetchNextPage, hasNextPage, isFetchingNextPage, error } = useGetTokenBalancesByContract(
  {
    chainIds: [1], // either use chainIds or networks name
    networks: ['mainnet'],
    filter: {
      accountAddresses: ['0x0123456789012345678901234567890123456789'],
      contractWhitelist: ['0x0123456789012345678901234567890123456789'],
      contractBlacklist: ['0x0000000000000000000000000000000000000000'],
      contractStatus: ContractVerificationStatus.VERIFIED,
      omitNativeBalances: false
    },
    omitMetadata: false, // optional
    page: {
      // optional
      pageSize: 10
    }
  },
  {
    // options param is optional and default values are below
    disabled: false
  }
)

useGetSingleTokenBalance

import { useGetSingleTokenBalance } from '@0xsequence/hooks'

const { data, isLoading, error } = useGetSingleTokenBalance({
  chainId: 1,
  accountAddress: '0x9876543210987654321098765432109876543210',
  contractAddress: '0x0123456789012345678901234567890123456789'
})

useGetContractInfo

import { useGetContractInfo } from '@0xsequence/hooks'

const { data, isLoading, error } = useGetContractInfo(
  {
    chainId: 1,
    contractAddress: '0x0123456789012345678901234567890123456789'
  },
  {
    // options param is optional and default values are below
    disabled: false
  }
)

useGetMultipleContractInfo

import { useGetMultipleContractInfo } from '@0xsequence/hooks'

const { data, isLoading, error } = useGetMultipleContractInfo(
  [
    { chainId: 1, contractAddress: '0x0123456789012345678901234567890123456789' },
    { chainId: 1, contractAddress: '0x0123456789012345678901234567890123456789' }
  ],
  {
    // options param is optional and default values are below
    disabled: false
  }
)

useGetTokenMetadata

import { useGetTokenMetadata } from '@0xsequence/hooks'

const { data, isLoading, error } = useGetTokenMetadata(
  {
    chainId: '1',
    contractAddress: '0x0123456789012345678901234567890123456789',
    tokenIds: ['1']
  },
  {
    // options param is optional and default values are below
    disabled: false
  }
)

useGetSwapQuote

import { useGetSwapQuote } from '@0xsequence/hooks'

const { data, isLoading, error } = useGetSwapQuote({
  userAddress: '0x9876543210987654321098765432109876543210',
  buyCurrencyAddress: '0x0123456789012345678901234567890123456789',
  sellCurrencyAddress: '0x0123456789012345678901234567890123456789',
  buyAmount: '1',
  chainId: 1,
  includeApprove: true,
  slippagePercentage: 5 // optional
})

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 22

Native requirements
15 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
@0xsequence/api
Environment
{
  "local_name": "@0xsequence/api",
  "alias": false,
  "peer_metadata": null
}
^2.3.43development
@0xsequence/indexer
Environment
{
  "local_name": "@0xsequence/indexer",
  "alias": false,
  "peer_metadata": null
}
^2.3.43development
@0xsequence/metadata
Environment
{
  "local_name": "@0xsequence/metadata",
  "alias": false,
  "peer_metadata": null
}
^2.3.43development
@0xsequence/network
Environment
{
  "local_name": "@0xsequence/network",
  "alias": false,
  "peer_metadata": null
}
^2.3.43development
@tanstack/react-query
Environment
{
  "local_name": "@tanstack/react-query",
  "alias": false,
  "peer_metadata": null
}
^5.74.11development
@testing-library/react
Environment
{
  "local_name": "@testing-library/react",
  "alias": false,
  "peer_metadata": null
}
^16.3.0development
@vitejs/plugin-react
Environment
{
  "local_name": "@vitejs/plugin-react",
  "alias": false,
  "peer_metadata": null
}
^4.4.1development
jsdom
Environment
{
  "local_name": "jsdom",
  "alias": false,
  "peer_metadata": null
}
^25.0.1development
msw
Environment
{
  "local_name": "msw",
  "alias": false,
  "peer_metadata": null
}
^2.7.5development
react
Environment
{
  "local_name": "react",
  "alias": false,
  "peer_metadata": null
}
^19.1.0development
react-dom
Environment
{
  "local_name": "react-dom",
  "alias": false,
  "peer_metadata": null
}
^19.1.0development
typescript
Environment
{
  "local_name": "typescript",
  "alias": false,
  "peer_metadata": null
}
^5.8.3development
viem
Environment
{
  "local_name": "viem",
  "alias": false,
  "peer_metadata": null
}
^2.44.4development
vite
Environment
{
  "local_name": "vite",
  "alias": false,
  "peer_metadata": null
}
^6.3.4development
vitest
Environment
{
  "local_name": "vitest",
  "alias": false,
  "peer_metadata": null
}
^2.1.9development
@0xsequence/api
Environment
{
  "local_name": "@0xsequence/api",
  "alias": false,
  "peer_metadata": null
}
>=2.3.43peer
@0xsequence/indexer
Environment
{
  "local_name": "@0xsequence/indexer",
  "alias": false,
  "peer_metadata": null
}
>=2.3.43peer
@0xsequence/metadata
Environment
{
  "local_name": "@0xsequence/metadata",
  "alias": false,
  "peer_metadata": null
}
>=2.3.43peer
@0xsequence/network
Environment
{
  "local_name": "@0xsequence/network",
  "alias": false,
  "peer_metadata": null
}
>=2.3.43peer
@tanstack/react-query
Environment
{
  "local_name": "@tanstack/react-query",
  "alias": false,
  "peer_metadata": null
}
>= 5peer
react
Environment
{
  "local_name": "react",
  "alias": false,
  "peer_metadata": null
}
>= 17peer
viem
Environment
{
  "local_name": "viem",
  "alias": false,
  "peer_metadata": null
}
>= 2.44.0peer

Distribution files

1 collected
Distribution 1

Source distribution

Source file
Checksums from source
{
  "integrity": "sha512-YtDVi5IY5lGqXrWprTMIB9fWO6JRC7PviWyAQQN7xrXkUvZ79DLF4ucWrpb0ZFu3d+OMexvu1PkrnYyJ6djjRw==",
  "shasum": "54699baa73d61c3204892b7f74063cb5389ae575",
  "tarball": "https://registry.npmjs.org/@0xsequence/hooks/-/hooks-5.4.12.tgz",
  "fileCount": 412,
  "unpackedSize": 579005,
  "signatures": [
    {
      "keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U",
      "sig": "MEUCIQDnZsO3FAAaoRAy1OFs0u/tViwIv+OjFs+XQzp4XWR12AIgSMSQO//mzF7d/MGuO9Vd8UvNzyG76m7COW7bxAFy8yM="
    }
  ]
}

Repository

PENDING
0xsequence/web-sdk

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 21 Oct, 10:25 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:dca527dc4e01da57ce2af5f2133c1dc08cf73ad2c341ae6ac3e3b7ebe55287b9

Other collected versions

6.0.913 Jul6.0.830 Jun6.0.724 Jun6.0.614 May5.4.119 Apr6.0.59 AprView all collected versions →