---
title: "3 razones importantes para usar el NFT API de Alchemy para getNFTs"
description: "Por qué el NFT API de Alchemy es la mejor opción para construir una dApp de NFT"
---

# 3 razones importantes para usar el NFT API de Alchemy para getNFTs

Si estás construyendo una dApp de NFTs, [la NFT API de Alchemy](https://www.alchemy.com/nft-api?a=cf7d4f9793) puede ayudarte a crear mejores experiencias para tus usuarios usando get requests, como getNFTs y getOwnersForToken. Veamos qué hacen estos métodos y por qué deberíamos usarlos en nuestros proyectos de NFTs.

## ¿Qué es getNFTs?

[**getNFTs**](https://www.alchemy.com/docs/reference/nft-api-endpoints/nft-api-endpoints/nft-api-v-2-methods-older-version/get-nf-ts) es un endpoint de la NFT API que permite a los desarrolladores obtener la lista de todos los NFTs, incluyendo tokens ERC-721 y ERC-1155, que pertenecen a una dirección de propietario en particular. Puedes ingresar una dirección de propietario o un nombre ENS, y la API devolverá la lista de todos los NFTs que posee esa dirección, junto con la metadata del NFT.

### Ejemplos de casos de uso para getNFTs

**getNFTs es uno de los endpoints más versátiles de la NFT API, y se puede usar en una variedad de productos de web3, incluyendo wallets para mostrar NFTs, marketplaces de NFTs, herramientas de análisis de NFTs, sitios de ranking de rareza de NFTs, bots de Discord, y muchos otros casos de uso.**

Por ejemplo, si fueras a la página de perfil de tu cuenta de [OpenSea](https://www.alchemy.com/dapps/opensea), podrías ver qué NFTs posees. Esto funciona gracias a un endpoint que usa getNFTs para devolver los NFTs que posee tu dirección de wallet y la metadata relacionada del NFT.

En términos más generales, getNFTs puede ser útil en cualquier caso donde necesites saber qué posee un usuario. Por ejemplo, una solicitud de getNFTs podría alimentar herramientas de análisis de NFTs como sitios de ranking de rareza o un bot de Discord, obteniendo datos y avisándote qué NFT se vendió recién, en qué marketplace se vendió, y cualquier otra metadata relevante.

## ¿Qué es getOwnersForToken?

[**getOwnersForToken**](https://www.alchemy.com/docs/reference/nft-api-endpoints/nft-api-endpoints/nft-api-v-2-methods-older-version/get-owners-for-token) es una API que te permite especificar un smart contract de NFT y devolver la lista de todos los propietarios de ese token. Para tokens ERC-721, getOwnersForToken solo devolverá un único propietario, pero para tokens ERC-1155, que pueden tener múltiples propietarios, getOwnersForToken puede devolver más de una dirección de wallet.

### Ejemplos de casos de uso para getOwnersForToken

getOwnersForToken tiene múltiples casos de uso, incluyendo airdrops, actualizaciones de caché por cambios en la propiedad de NFTs, y verificaciones de foto de perfil.

Si estás llevando adelante un proyecto de minteo de NFTs y quieres hacer un airdrop a los propietarios de un token específico, getOwnersForToken te permite identificar esta allowlist.

De manera similar, si tienes una foto de perfil y quieres verificar la propiedad, podrías usar esta API para revisar si la propiedad ha cambiado.

Sin getOwnersforToken, no hay una solución conveniente para estos casos de uso, porque los desarrolladores tendrían que analizar toda la blockchain para determinar cómo cambió la propiedad de un solo NFT a lo largo del tiempo. Ahora, con la NFT API de Alchemy, la API getOwnersForToken puede lograr esto con una sola solicitud.

## 3 razones para usar la NFT API de Alchemy para obtener NFTs

[Construir con la NFT API de Alchemy](https://www.alchemy.com/docs/reference/nft-api-quickstart) es la mejor opción para obtener NFTs por su cobertura, sus filtros de spam y su caché de imágenes.

### 1. Cobertura de NFTs

**La NFT API de Alchemy tiene la cobertura más amplia de NFTs, lo cual es un desafío porque la metadata de los NFTs vive on chain, off chain, y en formatos inconsistentes, lo que genera muchos casos extremos para registrar la metadata con precisión.**

Tener metadata de NFTs viviendo en múltiples formatos distintos, y en múltiples entornos distintos, hace que determinar la metadata precisa de un NFT sea un problema complicado.

Alchemy puede ofrecer la cobertura de NFTs más completa gracias a haber diseñado múltiples rutas de código para superar muchos de los casos más comunes, incluyendo, entre otros, el manejo de metadata:

- On chain u off-chain en formato JSON
- On chain u off-chain en formato SVG
- On chain u off-chain en formato UTF-8

La NFT API de Alchemy también puede manejar SVGs, NFTs que usan gateways de IPFS como Pinata, URIs que apuntan a una imagen en una ubicación secundaria off-chain, imágenes codificadas en base 64, y muchas otras implementaciones.

#### ¿Cómo obtenemos la metadata de un NFT?

**Obtener la metadata de un NFT es un proceso complicado con muchas variaciones, pero la NFT API de Alchemy ofrece una solución simple para que no tengas que perder tiempo valioso pensando en cada caso de uso por separado.**

Para obtener la metadata de un NFT, empezamos con un ID, que es una dirección de contrato y un token ID que juntos forman el identificador único del NFT.

Este ID se verifica contra la caché de NFT de Alchemy para ver si la información ya existe. Si no está en la caché, necesitamos investigar qué tipo de NFT es y a qué estándar se ajusta el contrato.

Alchemy actualmente admite dos estándares principales de NFT: smart contracts [ERC-721 y ERC-1155](https://www.alchemy.com/blog/comparing-erc-721-to-erc-1155).

<VideoCta
  title="Mira el dashboard de Alchemy en acción"
  description="Recorrido guiado de 30 minutos: todas las herramientas del dashboard, demostradas en vivo."
  ctaHref="/resources/dashboard-demo"
  thumbnail={{
    src: "https://media.alchemy.com/alchemy-dashboard-demo-thumbnail.png",
    alt: "Alchemy Dashboard Demo",
  }}
/>

Un estándar ERC-721 real debería proveer un esquema que incluya el título y las propiedades del NFT, incluyendo el nombre, las descripciones y la imagen, y poder soportar algunos métodos adicionales.

En teoría, deberías poder identificar si un NFT soporta este estándar mediante una llamada a la interfaz de soporte, y el contrato responderá con la respuesta.

Como estos contratos son programables, un desarrollador podría, a propósito o por error, programar el contrato para que responda incorrectamente, lo cual significa que necesitamos revisar otras propiedades del contrato para asegurarnos de que soporta la interfaz.

Una vez que has determinado que el smart contract es, efectivamente, un NFT, puedes preguntarle al contrato o al token por la _ubicación de la metadata_. Para un contrato ERC721, el método que llamas es el método **token URI**, mientras que para un contrato 1155, simplemente se llama método **URI**.

El URI apunta a un lugar en internet, o a un lugar on-chain, donde existe la metadata del NFT. Algunos contratos, cuando se les pregunta por esta ubicación, apuntan a un archivo, mientras que otros, incorrectamente, proveen la metadata directamente en el token URI.

Si el URI apunta a otra ubicación, necesitaremos seguir el enlace, casi siempre hacia un sitio web o servidor de terceros, lo cual trae su propia serie de problemas. Estos sitios web pueden estar rotos, ser maliciosos, o tener rate limiting, pero Alchemy resuelve eso para devolver la información de forma limpia.

Con tantas implementaciones distintas entre los smart contracts ERC-721 y ERC-1155, tener una [cobertura de datos amplia y precisa](https://www.alchemy.com/blog/data-accuracy) de los NFTs es un desafío constante. Usar la NFT API de Alchemy es la mejor manera de asegurar la máxima cobertura de los NFTs conocidos.

### 2. Filtros de spam de NFTs

El filtro de spam de Alchemy para getNFTs facilita aún más la construcción al filtrar los [**NFTs de spam**](https://www.alchemy.com/overviews/spam-nfts), que son airdrops no solicitados o smart contracts de NFTs que no cumplen con los estándares ERC-721 y ERC-1155.

Además de las opciones de filtrado nativas de getNFTs, el nuevo **getSpamContracts** de Alchemy devolverá la lista de todos los contratos de spam ERC-721 y ERC-1155 en la chain seleccionada.

De manera similar, **isSpamForContract** verificará si un smart contract de NFT en particular ha sido clasificado como spam. Puedes filtrar por direcciones de contrato, lo que significa que también puedes buscar a los propietarios de un NFT en particular y revisar si ese es el único que poseen.

Alchemy es la única plataforma con un filtro de spam para NFTs, y es increíblemente difícil interactuar con NFTs si te está frenando el spam.

### 3. Caché de imágenes de NFTs

**El caché de imágenes de Alchemy genera respuestas más rápidas y tiempos de carga más rápidos para las imágenes de NFTs.** Mientras que los medios de NFTs tradicionalmente se sirven desde IPFS, [proveedores de almacenamiento descentralizado](https://www.alchemy.com/overviews/a-primer-on-decentralized-storage-networks), o servidores de terceros, los desarrolladores a menudo enfrentan tiempos de carga lentos y errores de timeout al usar estos endpoints. Alchemy resuelve este problema haciendo caché de las imágenes de NFTs con Cloudinary y sirviendo las URLs de NFTs desde nuestra propia caché, lo que hace que las recuperaciones sean más rápidas.

## ¿Qué NFT API debería elegir?

**Por los endpoints robustos de Alchemy, incluyendo filtros de spam, getFloorPrice, y reingestContract, la mejor cobertura de NFTs, incluyendo soporte para Crypto Punks, y los datos más precisos, la NFT API de Alchemy es la mejor opción para los desarrolladores de web3.**

[Regístrate para obtener una cuenta de Alchemy](https://www.alchemy.com/enhanced-apis?a=cf7d4f9793) y descubre cómo la NFT API de Alchemy puede ayudarte a construir tu próximo proyecto de NFTs, o aprende más sobre cómo Alchemy puede ayudarte en tu camino en web3.
