---
title: "Arbitrum NFT API:概要とクイックスタートガイド"
description: "強力なArbitrum NFTアプリとツールを数分で構築開始"
---

## ‍**Arbitrumエコシステムの成長**

[Arbitrum](https://www.alchemy.com/arbitrum?a=956074bef3)は、[Ethereumメインネット](https://www.alchemy.com/rpc/ethereum)と比較してトランザクション速度を向上させ、ガスコストを下げるEthereum向けのLayer 2（L2）スケーリングソリューションであり、Ethereum Virtual Machineに慣れたSolidity開発者にとって魅力的な選択肢となっている。

Arbitrumはオプティミスティックロールアップ（ORU）を採用した主要なEthereum向けLayer 2スケーリングソリューションであり、[Arbitrumの統計データ](https://www.alchemy.com/overviews/arbitrum-statistics)によると堅調な成長を示している。市場全体は2022年初頭から下降トレンドにあるものの、[Q3 Web3 Developer report](https://www.alchemy.com/blog/web3-developer-report-q3-2022)は[Arbitrumエコシステム](https://www.alchemy.com/dapps/ecosystem/arbitrum)が以下の成長を遂げていることを示している。

- アクティブチーム数：年初来516%増加
- アクティブな開発者チーム数：前年同期比795%増加
- API消費量：年初来121%増加

Arbitrum上の代表的な[アプリ](https://www.alchemy.com/dapps/top/defi-dapps)には以下が含まれる。

- **Aave** - DeFiにおける最大級のPeer-to-Peerレンディングプロトコルの一つ
- **[1inch](https://www.alchemy.com/dapps/1inch)** - トークンスワップ時に最良の条件をユーザーが見つけられるよう支援する分散型取引所（DEX）アグリゲーター
- **Yearn Finance** - 暗号資産の貸付における利回り最適化に特化したDeFiプロトコル

さらに、Uniswap、Sushi、[Balancer](https://www.alchemy.com/dapps/balancer)、[OpenSea](https://www.alchemy.com/dapps/opensea)といったプラットフォームも最近Arbitrumのサポートを統合し、より多くの主要アプリをArbitrumネットワークにもたらしている。

より高速で低コストなEVM互換ブロックチェーンへの需要が高まる中、Arbitrumは開発者にとって魅力的なブロックチェーンを提供している。NFTメタデータのインデックス化とクエリには時間とリソースの制約が伴うため、AlchemyはNFT APIのサポートをArbitrumに拡張し、開発者が高品質なNFTプロジェクトをArbitrum上で構築できるようにした。

## **Arbitrum NFT APIとは**

**Arbitrum NFT APIは、getNFTs、isHolderForCollectionなどを含む、Arbitrumブロックチェーン上の非代替性トークン（ERC721）および準代替性トークン（ERC1155）をクエリするための一連のAPIエンドポイントである。**

AlchemyのマルチチェーンNFT APIを使って[Arbitrumノード](https://www.alchemy.com/overviews/arbitrum-node)と通信するために、開発者はセルフホストのノードまたは[Arbitrumノードプロバイダー](https://www.alchemy.com/overviews/blockchain-node-providers)を経由し、JSON-RPCメソッドを使ってArbitrumとの間でデータの読み書きを行うことができる。Arbitrum NFT APIは、JSON、SVG、UTF-8形式のオンチェーン・オフチェーンNFT、Pinataなどの IPFSゲートウェイ、Base64エンコードされた画像をサポートする。

## **Arbitrum NFT APIがサポートするメソッド**

AlchemyのArbitrum NFT APIは、最も基本的な[getNFTs](https://www.alchemy.com/overviews/getnfts)呼び出しから、所有権やメタデータの呼び出しまで、あらゆるクエリに対応する多様で強力なエンドポイントを提供する。一般的なユースケースには、ダッシュボード、ウォレット、[NFTビューア](https://www.alchemy.com/overviews/nft-viewer)、NFT検索、レアリティツール、分析ツールなどがある。

### **所有権とトークンゲーティング向けのArbitrum NFT APIエンドポイント**

以下のArbitrum NFT APIエンドポイントは、特定のNFTまたはコレクションの保有者を特定するために開発者がよく利用するものである。これらのエンドポイントは、DiscordやShopifyなどのプラットフォームで[トークンゲーティングの仕組みを構築する](https://www.alchemy.com/overviews/nft-token-gating)際に有用である。

- **getNFTs** - 特定のウォレットが保有するArbitrum NFTを取得する
- **getOwnersForToken** - トークンのArbitrum保有者を取得する
- **getOwnersForCollection** - コレクションのArbitrum NFT保有者を取得する
- isHolderOfCollection - Arbitrumウォレットが特定のNFTを保有しているか確認する
- **getNFTsForCollection** - Arbitrum NFTコレクションに含まれるNFTを取得する

### **ArbitrumのERC-721およびERC-1155メタデータ**

メタデータには、コレクション名、供給量、属性、シンボルなどの情報が含まれる。ArbitrumのNFTメタデータは、分析ツールを構築する開発者やデータを分析するトレーダーにとって有用である。

- **getNFTMetadata** - Arbitrum NFTのメタデータを取得する
- **getContractMetadata** - Arbitrum NFTスマートコントラクトのメタデータを取得する

## **Arbitrum NFT APIでの構築を始める方法**

[Alchemy SDK](https://www.alchemy.com/sdk)は、現在Arbitrumと連携するために利用可能な、最も包括的で強力なJavaScript SDKである。AlchemyのWeb3 SDKは、Ethers.jsのAlchemyProviderおよびWebSocketProviderと全く同じ構文と機能をサポートしており、Ethers.jsのProviderを利用している人にとって1対1で対応する形になっている。

さらに便利な点がある。

Alchemy SDKは、Ethersの上に以下のような大幅に強化された機能を追加している。

1. AlchemyのEnhanced APIsへのアクセス
1. AlchemyのNFT APIsへのアクセス
1. 堅牢なWebSocketsサポート
1. 自動リトライ

このSDKはAlchemyの堅牢なノードインフラを活用しており、最高水準のノード信頼性、スケーラビリティ、[データの正確性](https://alchemy.com/blog/data-accuracy)を保証し、Alchemyのエンジニアによって現在も継続的に開発が進められている。

### 1. SDKのインストール

[Web3 SDKの使い方を始める方法](https://www.alchemy.com/docs/alchemy-quickstart-guide)についての完全な手順は、公式ドキュメントを参照してほしい。以下のスクリプトを実行するだけでSDKをインストールできる。

<CodeSnippet code={`npm install alchemy-sdk`} language="text" theme="dark" />

### 2. Arbitrum APIキーを取得する

Alchemyアカウントを持っていない場合は、新規アカウントを作成し、[Arbitrumアプリを作成](https://dashboard.alchemy.com/signup/?a=956074bef3)する。SDKをインポートするためには、APIキーとURLが必要になる。

<ImageBlock
  src="https://media.alchemy.com/1703687379-create-arbitrum-app.png"
  alt="Alchemyの開発者ダッシュボードで新しいArbitrumアプリを作成する。"
  width={1266}
  height={653}
  caption="Alchemyの開発者ダッシュボードで新しいArbitrumアプリを作成する。"
/>

### 3. SDKをインポートして実行する

その後、SDKをインポートして使用できる。ターミナルでスクリプトを実行する前に、以下を必ず置き換えること。

- **apiKey** - Alchemyで新しいArbitrumアプリを作成し、APIキーをコピーすることで取得できる
- network - Arbitrumアプリの設定からコピー＆ペーストできる

<CodeSnippet code={`import { Network, Alchemy } from 'alchemy-sdk';

// Optional Config object, but defaults to demo api-key and eth-mainnet.
const settings = {
apiKey: 'demo', // Replace with your Alchemy API Key.
network: Network.ARB_MAINNET, // Replace with your network.
};
const alchemy = new Alchemy(settings);

// Access standard Ethers.js JSON-RPC node request
alchemy.core.getBlockNumber().then(console.log);`} language="typescript" theme="dark" />

Alchemyダッシュボード内に直接提供されているサンプルコードをそのままコピーして、ターミナルで実行することもできる。

<ImageBlock
  src="https://media.alchemy.com/1703687555-alchemy-dashboard.jpg"
  alt="Alchemyダッシュボード内のArbitrum APIキーとコード例。"
  width={1203}
  height={950}
  caption="Alchemyダッシュボード内のArbitrum APIキーとコード例。"
/>

これで完了である。これでAlchemyのSDKが動作し、Arbitrumネットワークに接続された状態になっている。これでweb3向けの最も強力なArbitrum用NFT APIに完全にアクセスできるようになった。
