openapi: 3.0.0 info: title: EVM Balance Get Owners API version: '2.2' servers: - url: https://deep-index.moralis.io/api/v2.2 security: - ApiKeyAuth: [] tags: - name: Get Owners paths: /nft/{address}/owners: get: security: - ApiKeyAuth: [] summary: Get NFT owners by contract address description: Identify wallets owning NFTs from a specific contract. tags: - Get Owners x-tag-sdk: nft operationId: getNFTOwners parameters: - in: query name: chain description: The chain to query required: false schema: $ref: '#/components/schemas/chainList' - in: path name: address description: The address of the NFT contract required: true schema: type: string example: '0x306b1ea3ecdf94ab739f1910bbda052ed4a9f949' - in: query name: format description: The format of the token ID required: false schema: type: string example: decimal default: decimal enum: - decimal - hex - in: query name: limit description: The desired page size of the result. required: false schema: type: integer minimum: 0 - in: query name: cursor description: The cursor returned in the previous response (used for getting the next page). schema: type: string - in: query name: normalizeMetadata description: Should normalized metadata be returned? required: false schema: type: boolean default: false - in: query name: media_items description: Should preview media data be returned? required: false schema: type: boolean default: false responses: '200': description: Returns a collection of NFT owners content: application/json: schema: $ref: '#/components/schemas/nftOwnerCollection' x-mcp-prompt: Enter the contract address to list its NFT owners. Use this when users want to know who owns NFTs in a collection or are analyzing ownership distribution. /nft/{address}/{token_id}/owners: get: security: - ApiKeyAuth: [] summary: Get NFT owners by token ID description: List wallets owning a specific NFT, defined by its contract and token ID. tags: - Get Owners x-tag-sdk: nft operationId: getNFTTokenIdOwners parameters: - in: query name: chain description: The chain to query required: false schema: $ref: '#/components/schemas/chainList' - in: path name: address description: The address of the NFT contract required: true schema: type: string example: '0x524cab2ec69124574082676e6f654a18df49a048' - in: path name: token_id description: The ID of the token required: true schema: type: string example: '1' - in: query name: format description: The format of the token ID required: false schema: type: string example: decimal default: decimal enum: - decimal - hex - in: query name: limit description: The desired page size of the result. required: false schema: type: integer minimum: 0 - in: query name: cursor description: The cursor returned in the previous response (used for getting the next page). schema: type: string - in: query name: normalizeMetadata description: Should normalized metadata be returned? required: false schema: type: boolean default: false - in: query name: media_items description: Should preview media data be returned? required: false schema: type: boolean default: false responses: '200': description: Returns a collection of NFTs with their respective owners. content: application/json: schema: $ref: '#/components/schemas/nftOwnerCollection' x-mcp-prompt: Enter the contract address and token ID to find the NFT’s owners. Use this when users ask who owns a specific NFT or are verifying ownership. /nft/{address}/stats: get: security: - ApiKeyAuth: [] summary: Get summary stats by NFT collection description: Get summary stats by NFT collection including total NFT transfers, total tokens and total owners. tags: - Get Owners x-tag-sdk: nft operationId: getNFTCollectionStats parameters: - in: query name: chain description: The chain to query required: false schema: $ref: '#/components/schemas/chainList' - in: path name: address description: The address of the NFT collection required: true schema: type: string example: '0x306b1ea3ecdf94aB739F1910bbda052Ed4A9f949' responses: '200': description: Returns the stats for the nft collection address. content: application/json: schema: $ref: '#/components/schemas/nftCollectionStat' x-mcp-prompt: Provide the contract address to retrieve its NFT collection stats. Use this when users ask for a collection’s performance metrics or want to evaluate its popularity. components: schemas: normalizedMetadata: properties: name: type: string description: The name or title of the NFT example: Moralis Mug description: type: string description: A detailed description of the NFT example: Moralis Coffee nug 3D Asset that can be used in 3D worldspaces. This NFT is presented as a flat PNG, a Unity3D Prefab and a standard fbx. image: type: string description: The URL of the NFT's image example: https://arw2wxg84h6b.moralishost.com:2053/server/files/tNJatzsHirx4V2VAep6sc923OYGxvkpBeJttR7Ks/de504bbadadcbe30c86278342fcf2560_moralismug.png external_link: type: string description: A link to additional information example: https://giphy.com/gifs/loop-recursion-ting-aaODAv1iuQdgI external_url: type: string description: A link to additional information example: https://giphy.com/gifs/loop-recursion-ting-aaODAv1iuQdgI animation_url: type: string description: An animated version of the NFT's image example: https://giphy.com/gifs/food-design-donuts-o9ngTPVYW4qo8 attributes: type: array items: $ref: '#/components/schemas/normalizedMetadataAttribute' normalizedMetadataAttribute: properties: trait_type: type: string description: The trait title or descriptor example: Eye Color value: type: object description: The value of the attribute example: hazel display_type: type: string description: The type the attribute value should be displayed as example: string max_value: type: number description: For numeric values, the upper range example: 100 trait_count: type: number description: The number of possible values for this trait example: 7 order: type: number description: Order the trait should appear in the attribute list. example: 1 nftOwnerCollection: required: - result properties: status: type: string description: The syncing status of the address [SYNCING/SYNCED] example: SYNCING page: type: integer description: The current page of the result example: '2' page_size: type: integer description: The number of results per page example: '100' cursor: type: string description: The cursor to get to the next page result: type: array items: $ref: '#/components/schemas/nftOwner' mediaCollection: properties: low: description: Preview media file, lowest quality (for images 100px x 100px) $ref: '#/components/schemas/mediaItem' medium: description: Preview media file, medium quality (for images 250px x 250px) $ref: '#/components/schemas/mediaItem' high: description: Preview media file, highest quality (for images 500px x 500px) $ref: '#/components/schemas/mediaItem' required: - original - low - medium - high chainList: type: string example: eth default: eth enum: - eth - '0x1' - sepolia - '0xaa36a7' - polygon - '0x89' - bsc - '0x38' - bsc testnet - '0x61' - avalanche - '0xa86a' - fantom - '0xfa' - cronos - '0x19' - arbitrum - '0xa4b1' - chiliz - '0x15b38' - chiliz testnet - '0x15b32' - gnosis - '0x64' - gnosis testnet - '0x27d8' - base - '0x2105' - base sepolia - '0x14a34' - optimism - '0xa' - polygon amoy - '0x13882' - linea - '0xe708' - moonbeam - '0x504' - moonriver - '0x505' - moonbase - '0x507' - linea sepolia - '0xe705' - flow - '0x2eb' - flow-testnet - '0x221' - ronin - '0x7e4' - ronin-testnet - '0x31769' - lisk - '0x46f' - lisk-sepolia - '0x106a' - pulse - '0x171' - sei-testnet - '0x530' - sei - '0x531' - monad - '0x8f' nftOwner: required: - token_address - token_id - contract_type - name - block_number - block_number_minted - owner_of - symbol - token_hash - last_token_uri_sync - last_metadata_sync - possible_spam properties: token_address: type: string description: The address of the NFT contract example: '0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB' token_id: type: string description: The token ID of the NFT example: '15' contract_type: type: string description: The type of NFT contract standard example: ERC721 owner_of: type: string description: The wallet address of the owner of the NFT example: '0x057Ec652A4F150f7FF94f089A38008f49a0DF88e' block_number: type: string description: The block number when the amount or owner changed example: '88256' block_number_minted: type: string description: The block number when the NFT was minted example: '88256' token_uri: type: string description: The URI to the metadata of the token metadata: type: string description: The metadata of the token normalized_metadata: $ref: '#/components/schemas/normalizedMetadata' description: A normalized metadata version of the NFT's metadata. media: $ref: '#/components/schemas/media' description: A set of links to 'thumbnail / preview' media files amount: type: string description: The number of this item the user owns (used by ERC1155) example: '1' name: type: string description: The name of the NFT contract example: CryptoKitties symbol: type: string description: The symbol of the NFT contract example: RARI token_hash: type: string description: The token hash example: 502cee781b0fb40ea02508b21d319ced rarity_rank: type: number description: The rarity rank example: 21669 rarity_percentage: type: number description: The rarity percentage example: 98 rarity_label: type: string description: The rarity label example: Top 98% last_token_uri_sync: type: string description: When the token_uri was last updated example: '2021-02-24T00:47:26.647Z' last_metadata_sync: type: string description: When the metadata was last updated example: '2021-02-24T00:47:26.647Z' possible_spam: type: boolean description: Indicates if a contract is possibly a spam contract example: 'false' verified_collection: type: boolean description: Indicates if a contract is verified example: 'false' floor_price: type: string description: The floor price of the NFT example: '12345' floor_price_usd: type: string description: The floor price of the NFT in USD example: '12345.4899' floor_price_currency: type: string description: The currency of the floor price example: eth last_sale: type: object description: Details about the most recent sale involving this token. nullable: true required: - transaction_hash - block_timestamp - price - price_formatted - buyer_address - seller_address - payment_token properties: transaction_hash: type: string description: The transaction hash of the last sale example: '0x19e14f34b8f120c980f7ba05338d64c00384857fb9c561e2c56d0f575424a95c' block_timestamp: type: string description: The block timestamp of the last sale example: '2023-04-04T15:59:11.000Z' buyer_address: type: string description: The buyer address of the last sale example: '0xcb1c1fde09f811b294172696404e88e658659905' seller_address: type: string description: The seller address of the last sale example: '0x497a7dee2f13db161eb2fec060fa783cb041419f' price: type: string description: The price of the last sale example: '7300000000000000' price_formatted: type: string description: The formatted price of the last sale example: '0.0073' usd_price_at_sale: type: string description: The USD price of the last sale example: '13.61' current_usd_value: type: string description: The USD price of the last sale at the current value example: '15.53' token_address: type: string description: The token address that is sold example: '0xe8778996e096b39705c6a0a937eb587a1ebbda17' token_id: type: string description: The token ID that is sold example: '170' payment_token: type: object description: The ERC20 token that is being traded with required: - token_name - token_symbol - token_logo - token_decimals - token_address properties: token_name: type: string description: The token name example: Ether token_symbol: type: string description: The token symbol example: ETH token_logo: type: string description: The token logo example: https://cdn.moralis.io/eth/0x.png token_decimals: type: string description: The token decimals example: '18' token_address: type: string description: The token address example: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee' media: properties: mimetype: type: string description: The mimetype of the media file [see https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types] category: enum: - image - audio - video status: enum: - success - processing - unsupported_media - invalid_url - host_unavailable - temporarily_unavailable description:
successThe NFT Preview was created / retrieved successfully
processingThe NFT Preview was not found and has been submitted for generation.
unsupported_mediaThe mime-type of the NFT's media file indicates a type not currently supported.
invalid_urlThe 'image' URL from the NFT's metadata is not a valid URL and cannot be processed.
host_unavailableThe 'image' URL from the NFT's metadata returned an HttpCode indicating the host / file is not available.
temporarily_unavailableThe attempt to load / parse the NFT media file failed (usually due to rate limiting) and will be tried again at next request.
original_media_url: type: string description: The url of the original media file. updatedAt: type: string description: The timestamp of the last update to this NFT media record. parent_hash: type: string description: Hash value of the original media file. media_collection: description: Preview item associated with the original $ref: '#/components/schemas/mediaCollection' nftCollectionStat: required: - total_tokens - owners - transfers properties: total_tokens: type: string description: The number of tokens in the collection example: '100' owners: type: object description: NFT collection owner stats required: - current properties: current: type: string description: The number of current owners of the collection example: '1000' transfers: type: object description: NFT collection transfer stats required: - total properties: total: type: string description: The number of transfers of the collection example: '1000' mediaItem: properties: width: type: integer description: The width of the preview image. height: type: integer description: The height of the preview image. url: type: string description: The url of the preview file. required: - width - height - url securitySchemes: ApiKeyAuth: type: apiKey in: header name: X-API-Key x-default: test x-samples-languages: - node - javascript - csharp - curl - python x-mcp-blacklist: - getNFTTraitsByCollectionPaginate - getNFTContractMetadata - getTokenPrice - getNativeBalance - getTokenAnalytics - resyncNFTRarity - syncNFTContract - reSyncMetadata - runContractFunction - web3ApiVersion - endpointWeights - getWalletTokenBalances - getTokenMetadataBySymbol - getWalletTransactions - getWalletTransactionsVerbose - getTransaction - getPairPrice - reviewContracts - getTrendingTokens - getWalletTokenTransfers - getWalletNFTTransfers - getPairReserves - getPairAddress - getTokenStats - resolveAddressToDomain - resolveDomain - getNFTFloorPriceByToken - getBlockStats - getNewTokensByExchange - getBondingTokensByExchange - getGraduatedTokensByExchange - getTokenBondingStatus - getAggregatedTokenPairStats - getTokenCategories - getRisingLiquidityTokens - getBuyingPressureTokens - getSolidPerformersTokens - getExperiencedBuyersTokens - getRiskyBetsTokens - getBlueChipTokens - getNFTOwners - getNFTTokenIdOwners - getContractNFTs - getNFTTradesByToken - getNFTTransfers