---
title: "Multichain Transfers API (Beta)のご紹介"
description: "ウォレットの送金履歴を、最大5つのネットワークにまたがって1回の呼び出しで取得できます。結果は統合済みで、時間順に並びます。"
datePublished: "2026-11-04"
dateModified: "2026-11-04T09:00:00-06:00"
---

# Multichain Transfers API (Beta)のご紹介

<ImageBlock
  src="https://media.alchemy.com/Alchemy-Multichain-transfers-API-(Beta).png"
  alt="Alchemy Multichain Transfers API (Beta)"
  width={3840}
  height={2160}
  priority
/>

ウォレットやポートフォリオアプリは、オンチェーンで最も急速に成長しているカテゴリの1つです。暗号資産ウォレット市場は、[2025年の$15.5Bから2033年には$100.8Bへ、年平均成長率26.6%で拡大する見込みです](https://www.grandviewresearch.com/industry-analysis/crypto-wallet-market-report)。Alchemyは、Zerion、Rainbow、Phantom、Trust Wallet、Coinbase Walletといった主要ウォレットの送金履歴と残高トラッキングを支えていることを誇りに思います。

こうしたチームが特によく使うメソッドの1つが`alchemy_getAssetTransfers`です。過去30日間に数万のチームが呼び出しており、リクエスト数ではData APIの中で2番目に多く使われています。チームはこのメソッドを使って、ウォレットのネイティブ、ERC-20、ERC-721、ERC-1155の送金履歴を取得し、アクティビティフィード、残高トラッキング、ポートフォリオビューを実現しています。

本日、この体験をアップグレードします。[Multichain Transfers API](https://www.alchemy.com/docs/data/portfolio-apis/portfolio-api-endpoints/portfolio-api-endpoints/get-transfers-by-address)は、1つのウォレットの送金履歴を最大5つのネットワークにまたがって1回の呼び出しで返します。結果は統合済みで、時間順に並んでいます。

ベータ版として提供を開始しました。[ぜひお試しください](https://www.alchemy.com/docs/data/portfolio-apis/portfolio-api-endpoints/portfolio-api-endpoints/get-transfers-by-address)。

## 1回の呼び出しで、複数のチェーンに対応

これまで`alchemy_getAssetTransfers`では、1回のリクエストで取得できるのは1つのネットワークでした。対応チェーンを増やすには、呼び出しを増やし、結果を自分で統合し、ネットワークの遅延やエラーにどう対処するかも決めなければなりません。

そこで、アップグレードしました。Multichain Transfers APIの主な4つの進化は次のとおりです。

- **1回の呼び出しでマルチチェーン。** ネットワークのリストを渡すと、`blockTimestamp`順に並んだ1つのリストが返ります。
- **両方向を同時にクエリ。** `direction`を`to`、`from`、`both`のいずれかに設定すると、受信と送信の送金をまとめて取得できます。
- **時間ベースのフィルタリング。** ブロック番号ではなく`fromTimestamp`と`toTimestamp`で絞り込み、`order`(`asc`または`desc`)で`blockTimestamp`順に並べ替えられます。
- **より分かりやすいレスポンス構造。** トークン額は`fungible`、NFTのデータは`nfts`に格納され、`blockTimestamp`は常に最上位にあります。トークンとNFTの送金では`contractAddress`も最上位にあります。

リクエストしたネットワークのいずれかが結果を返さなかった場合でも、呼び出しは200を返し、読み込めたすべてのデータに加えて、失敗した対象を示す`error.partialErrors`配列が含まれます。

## 試してみる

<CodeSnippet
  language="bash"
  code={`curl --request POST \\
  --url https://api.g.alchemy.com/data/v1/YOUR_API_KEY/transfers/by-address \\
  --header 'Content-Type: application/json' \\
  --data '{
    "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
    "direction": "both",
    "networks": ["eth-mainnet", "base-mainnet", "matic-mainnet"],
    "fromTimestamp": "2026-08-01T00:00:00Z",
    "toTimestamp": "2026-08-06T00:00:00Z",
    "category": ["external", "erc20", "erc721", "erc1155"],
    "order": "desc",
    "maxCount": 100
  }'`}
/>

レスポンスは、リクエストしたすべてのネットワークにまたがる1つの`transfers`配列で、新しいものから順に並びます。次のページを取得するための`pageKey`も含まれます(読みやすさのため一部省略しています)。

<CodeSnippet
  language="json"
  code={`{
  "transfers": [
    {
      "network": "base-mainnet",
      "blockTimestamp": "2026-08-05T23:58:41Z",
      "category": "erc20",
      "from": "0x1f98abcd...",
      "to": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
      "contractAddress": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "fungible": { "value": 250, "decimals": 6, "asset": "USDC" }
    },
    {
      "network": "eth-mainnet",
      "blockTimestamp": "2026-08-05T23:55:12Z",
      "category": "external",
      "from": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
      "to": "0x7a250d...",
      "fungible": { "value": 0.5, "decimals": 18, "asset": "ETH" }
    }
  ],
  "pageKey": "eyJ0cyI6..."
}`}
/>

ネイティブ、ERC-20、ERC-721、ERC-1155の送金は、Ethereum、Base、Polygon、Arbitrum、Optimism、BNB Chainを含む、対応する14のネットワーク(メインネット11、テストネット3)すべてで利用できます([対応ネットワークの一覧](https://www.alchemy.com/docs/data/portfolio-apis/portfolio-api-endpoints/portfolio-api-endpoints/get-transfers-by-address))。内部送金はEthereum、Base、Polygon、Arc(メインネットとテストネット)で、特殊なNFTはEthereumで利用できます。対応ネットワークは今後も随時追加していきます。

ご注意いただきたい点として、`category`は必須です。すべてのリクエストで、少なくとも1つ指定してください。

## 利用開始にあたって

Multichain Transfers APIは、`POST /data/v1/{apiKey}/transfers/by-address`でベータ版として利用できます。[ドキュメントのプレイグラウンド](https://www.alchemy.com/docs/data/portfolio-apis/portfolio-api-endpoints/portfolio-api-endpoints/get-transfers-by-address)で、サインアップなしでお試しいただけます。上の例にご自身のAPIキーを入れて試すこともできます。既存の`getAssetTransfers`の実装を新しいエンドポイントに移行すれば、ネットワークごとのループを省けます。

### alchemy_getAssetTransfersとの違いは何ですか？

`getAssetTransfers`は、1回の呼び出しで1つのネットワークの送金を返します。Multichain Transfers APIは最大5つのネットワークのリストを受け取り、統合された時間順の1つのリストを、片方向または両方向で、1回のリクエストで返します。

### 1つのネットワークが失敗するとどうなりますか？

正常に読み込めたすべての送金を含む200のレスポンスが返り、取得できなかったネットワークやカテゴリを示す`error.partialErrors`配列も含まれます。失敗が見過ごされることはなく、最も遅いネットワークを待って処理が止まることもありません。
