Module for handling NFT-related operations on Conflux Core. Provides methods for querying NFT balances, tokens, transfers, and ownership information.

NFTModule

Hierarchy (View Summary)

Constructors

Properties

baseUrl: string

Base URL for the API endpoints

apiKey?: string

Optional API key for authenticated requests

logger: Logger<never> = ...

Logger instance for NFT operations

Methods

  • Protected

    Makes an API request with the given parameters. Handles parameter sanitization, API key inclusion, and error handling.

    Type Parameters

    • T

      Type of the expected response data

    Parameters

    • endpoint: string

      API endpoint to call

    • params: Record<string, undefined | null | string | number | boolean> = {}

      Query parameters

    Returns Promise<ApiResponse<T>>

    Promise resolving to the API response

    When the API request fails or returns an error status

  • Get NFT balances for an address. Retrieves all NFT balances for a specific address.

    Parameters

    • params: BalancesParams

      Parameters for the NFT balances query

      Parameters for fetching NFT balances

      BalancesParams

      • Optionalpage?: number

        Page number (1-based)

      • Optionaloffset?: number

        Page offset.

      • Optionalskip?: number

        Number of records to skip (pageSize * (pageNumber - 1)). Maximum 10000.

      • Optionallimit?: number

        Number of records per page. Maximum 100.

      • Optionalsort?: "asc" | "desc"

        Sort order by timestamp (ASC for ascending, DESC for descending)

      • owner: string

        Owner address to get NFT balances for

    Returns Promise<Balances>

    The NFT balances for the address

    If the owner address is invalid

  • Get NFT tokens for a contract. Retrieves all NFT tokens for a specific contract address with optional filtering.

    Parameters

    • params: TokensParams

      Parameters for the NFT tokens query

      Parameters for fetching NFT tokens

      TokensParams

      • Optionalpage?: number

        Page number (1-based)

      • Optionaloffset?: number

        Page offset.

      • Optionalskip?: number

        Number of records to skip (pageSize * (pageNumber - 1)). Maximum 10000.

      • Optionallimit?: number

        Number of records per page. Maximum 100.

      • Optionalsort?: "asc" | "desc"

        Sort order by timestamp (ASC for ascending, DESC for descending)

      • contract: string

        NFT contract address

      • Optionalowner?: string

        Owner address to filter tokens by

      • OptionalsortField?: "latest_update_time" | "mint_time"

        Field to sort by (latest_update_time or mint_time)

      • Optionalcursor?: string

        Cursor for pagination

      • OptionalwithBrief?: string

        Whether to include token metadata brief

      • OptionalwithMetadata?: string

        Whether to include full token metadata

      • OptionalsuppressMetadataError?: string

        Whether to suppress metadata parsing errors

    Returns Promise<Tokens>

    The NFT tokens for the contract

    If the contract address is invalid

  • Get NFT preview data. Retrieves preview information for a specific NFT token.

    Parameters

    • params: PreviewParams

      Parameters for the NFT preview query

      Parameters for fetching NFT preview

      PreviewParams

      • contract: string

        NFT contract address

      • tokenId: string

        Token ID

      • OptionalwithMetadata?: string

        Whether to include full metadata

    Returns Promise<Preview>

    The NFT preview data

    If the contract address is invalid

  • Get NFT fungible tokens for a contract. Searches for NFTs by name and/or contract address.

    Parameters

    • params: FtsParams

      Parameters for the NFT fungible tokens query

      Parameters for NFT full-text search

      FtsParams

      • name: string

        Name to search for in metadata

      • Optionalcontract?: string

        Contract address to limit search to

    Returns Promise<Fts>

    The matching NFT fungible tokens

  • Get NFT owners for a specific token. Retrieves all owners of a specific NFT token.

    Parameters

    • params: OwnersParams

      Parameters for the NFT owners query

      Parameters for fetching NFT owners

      OwnersParams

      • Optionalpage?: number

        Page number (1-based)

      • Optionaloffset?: number

        Page offset.

      • Optionalskip?: number

        Number of records to skip (pageSize * (pageNumber - 1)). Maximum 10000.

      • Optionallimit?: number

        Number of records per page. Maximum 100.

      • Optionalsort?: "asc" | "desc"

        Sort order by timestamp (ASC for ascending, DESC for descending)

      • contract: string

        NFT contract address

      • OptionaltokenId?: string

        Token ID to get owners for

      • Optionalcursor?: string

        Pagination cursor

    Returns Promise<Owners>

    The NFT token owners

    If the contract address is invalid

  • Get NFT transfers for a specific token. Retrieves transfer history for a specific NFT token with optional filtering.

    Parameters

    • params: TransfersParams

      Parameters for the NFT transfers query

      Parameters for fetching NFT transfers

      TransfersParams

      • Optionalpage?: number

        Page number (1-based)

      • Optionaloffset?: number

        Page offset.

      • Optionalskip?: number

        Number of records to skip (pageSize * (pageNumber - 1)). Maximum 10000.

      • Optionallimit?: number

        Number of records per page. Maximum 100.

      • Optionalsort?: "asc" | "desc"

        Sort order by timestamp (ASC for ascending, DESC for descending)

      • OptionalminTimestamp?: number

        Minimum timestamp in seconds

      • OptionalmaxTimestamp?: number

        Maximum timestamp in seconds

      • OptionalstartBlock?: number

        Starting block number

      • OptionalendBlock?: number

        Ending block number

      • contract: string

        NFT contract address

      • OptionaltokenId?: string

        Token ID to get transfers for

      • Optionalcursor?: string

        Pagination cursor

      • Optionalfrom?: string

        Sender address to filter by

      • Optionalto?: string

        Recipient address to filter by

    Returns Promise<Transfers>

    The NFT transfer history

    If the contract address is invalid