Import

import { useLowestListing } from "@0xsequence/marketplace-sdk";

Usage

import { useLowestListing } from "@0xsequence/marketplace-sdk";

function App() {
  const { data, isLoading } = useLowestListing({
    chainId: 137,
    collectionAddress: "0x123...",
    tokenId: "1",
  });

  if (isLoading) {
    return <div>Loading...</div>;
  }

  return (
    <div>
      {data ? (
        <div>Lowest price: {data.price}</div>
      ) : (
        <div>No listings available</div>
      )}
    </div>
  );
}

Return Type: UseQueryResult

The hook returns a React Query result object with the following key properties:
type UseQueryResult = {
  data: LowestListingData | null;
  isLoading: boolean;
  error: Error | null;
  // ... other React Query properties
};

Parameters

ParameterTypeDescription
chainIdnumberThe chain ID (e.g., 1 for Ethereum, 137 for Polygon)
collectionAddressstringThe collection contract address
tokenIdstringThe token ID within the collection
queryobject(Optional) React Query configuration options
configobject(Optional) SDK configuration options

Query Options

You can customize the query behavior using the optional query parameter:
const { data, isLoading } = useLowestListing({
  chainId: 1,
  collectionAddress: "0x...",
  tokenId: "42",
  query: {
    refetchInterval: 15000, // Refetch every 15 seconds
    enabled: hasTokenId, // Only run query when tokenId is available
    // ... other React Query options
  },
});

Notes

This hook is useful for:
  • Displaying the current lowest price for a specific Collectible
  • Building price comparison features
The hook automatically handles:
  • Data fetching and caching
  • Loading and error states
  • Type-safe responses
Make sure to provide valid chain IDs and contract addresses. Invalid parameters will result in failed queries.