Polygon エクスプローラー APIを使うと、エクスプローラーの画面で見られるのと同じデータ、つまりトランザクション、残高、トークン転送、ブロック、コントラクトのABIをプログラムから取得できます。主な選択肢は3つです。Etherscan API V2(PolygonScanのデータ、キー必須)、BlockscoutのAPI(オープンソース、適度な利用ならキー不要)、そしてPolygonノードの生のJSON-RPCです。これに、チェックポイントとバリデーター用のHeimdall REST APIが加わります。
私たちはこれらのほとんどを毎日使っています。当サイトのPolygonライブエクスプローラーは、Blockscout API v2と公開RPCエンドポイントだけで動いており、あなたのブラウザから直接呼び出しています。このページのエンドポイントとコード例は、すべて公開前の2026年9月25日に編集部で実行したものです。検証できなかった点は、その旨を明記しています。
要点
登録なしで豊富なインデックス済みデータが欲しいなら、BlockscoutのAPI v2を使いましょう。PolygonScan固有のデータ(ラベルやEtherscanの検証済みソース)が必要なら、Etherscan API V2のキーを取得してchainid=137を指定します。状態の読み取りやトランザクションの送信にはJSON-RPCエンドポイントを使います。ただし、現在は認証エラーを返すpolygon-rpc.comは使わないでください。
どのPolygon APIを使うべき?
最適な選択は、何を作るかによって変わります。実際の使い勝手で比較すると次のとおりです。
| API | キー | 向いている用途 |
|---|---|---|
| Etherscan API V2 | 必要(無料枠あり) | PolygonScanのデータ・ラベル・ABI |
| Blockscout API v2 | 不要(制限あり) | 豊富なJSON・残高・ブラウザアプリ |
| Blockscout Etherscan互換 | 不要(制限あり) | Etherscan向けコードの移植 |
| 公開JSON-RPC | 不要 | 状態の読み取り・送信 |
| Heimdall REST | 不要 | チェックポイント・バリデーター |
私たちの経験則を紹介します。あるアドレスのトークン転送すべて、保有者の一覧といった「履歴」が必要なら、インデクサー、つまりEtherscanかBlockscoutが必要です。通常のRPCノードは「このウォレットがこれまでに行ったすべてのトランザクション」を効率よく返せません。「現在の状態」が知りたい場合やトランザクションを送信したい場合は、RPCが直接の手段です。これらのAPIの裏にあるエクスプローラーをユーザー目線で比較したPolygonエクスプローラーおすすめランキングもあわせてご覧ください。
PolygonScan API:Etherscan API V2とAPIキー
PolygonScanはEtherscanのチームが開発しており、そのAPIはEtherscan API V2に統合されました。PolygonScan専用のキーとapi.polygonscan.comを使う代わりに、対応するすべてのチェーンで1つのEtherscanキーを使い、chainidパラメーターでチェーンを指定します。Polygon PoSならchainid=137です。
旧ホストも確認しました。api.polygonscan.comは現在リダイレクトを返すので、古いコードは更新してください。キーなしで新しいエンドポイントを呼ぶと、丁寧に拒否されます。
# キーなしで残高を照会すると拒否される
curl -s "https://api.etherscan.io/v2/api?chainid=137&module=account&action=balance&address=0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270&tag=latest"
# {"status":"0","message":"NOTOK","result":"Missing/Invalid API Key"}
&apikey=YOUR_KEYを付ければ、同じ呼び出しでwei単位の残高が返ります。モジュール名とアクション名(account、txlist、tokentx、contract、getabi、proxyなど)は従来のEtherscanと同じなので、ベースURLを切り替えてchainidを付ければ、これまでのチュートリアルもそのまま使えます。
PolygonScan APIキーの取得方法: Etherscanで無料アカウントを作成し、ダッシュボードのAPIキーのセクションを開いてキーを生成します。無料枠には秒単位と1日単位の制限があります。Etherscanは無料枠の対象チェーンやエンドポイントを何度か変更しているため、製品に組み込む前にEtherscanのAPIドキュメントで最新のプランを確認してください。アカウントのエクスプローラー側の機能(ウォッチリスト、通知、CSVエクスポート)はPolygonScanレビューで紹介しています。
Polygon PoS向けBlockscout API(キー不要)
Blockscoutは、polygon.blockscout.comでPolygon PoSのインスタンスを運営するオープンソースのエクスプローラーで、同じホストで2種類のAPIを提供しています。私たちのテストでは、どちらもキーは不要で、Access-Control-Allow-Origin: *を返しました。
REST API v2
モダンなJSON APIはhttps://polygon.blockscout.com/api/v2/にあります。価格付きのトークンメタデータ、デコード済みのメソッド名、手数料の内訳など、あらかじめ整理された豊富なオブジェクトを返します。私たちがよく使うエンドポイントは次のとおりです。
/transactions/{hash}— ステータス、ブロック、承認数、手数料、メソッド、デコード済みの入力/addresses/{address}— 残高、コントラクトかどうか、名前、検証状況/addresses/{address}/token-balances— ERC-20、ERC-721、ERC-1155のすべての残高/blocks/{number}— ガス使用量と上限、ベース手数料、バーンされた手数料/tokens/{address}— 名前、シンボル、小数点桁数、保有者数、価格/stats— ネットワーク全体のカウンター、ガス価格、平均ブロック時間
# ネイティブUSDCのトークン情報を取得する
curl -s https://polygon.blockscout.com/api/v2/tokens/0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359
{"address_hash":"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359","decimals":"6","exchange_rate":"0.999859","holders_count":"4165554","name":"USDC","reputation":"ok","symbol":"USDC","type":"ERC-20", "...": "..."}
数値は(JavaScriptでの精度の損失を避けるため)文字列で返り、金額はトークンの最小単位である点に注意してください。表示する前に10 ** decimalsで割ります。
Etherscan互換API
https://polygon.blockscout.com/apiでは、BlockscoutがEtherscanのmodule/action形式のクエリを再現しています。Etherscan形式のコードがあり、キーを使いたくない場合にそのまま置き換えられる選択肢です。
# トランザクションの成否(レシートのステータス)を確認する
curl -s "https://polygon.blockscout.com/api?module=transaction&action=gettxreceiptstatus&txhash=0x9ba51db95824c1677415608326cefc1620c4c835dc0dbe8612a6b7674942b24b"
# {"message":"OK","result":{"status":"1"},"status":"1"}
対応範囲はEtherscanと完全には同じではなく、一部のアクションがなかったり挙動が少し違ったりするので、利用する呼び出しは1つずつテストしてください。対応状況はBlockscoutのAPIドキュメントに掲載されています。エクスプローラー自体についてはBlockscoutの詳細レビューをご覧ください。
公開Polygon RPCエンドポイント(検証済み一覧)
JSON-RPCは、ウォレットやdAppがPolygonノードと直接やり取りするための手段です。eth_blockNumber、eth_getBalance、eth_call、eth_sendRawTransactionなどがあります。2026年9月25日に、ブラウザと同様のOriginヘッダーを付けて各エンドポイントにeth_chainIdを呼び出し、次の結果を確認しました。
| エンドポイント | 2026年9月25日の結果 |
|---|---|
https://polygon-bor-rpc.publicnode.com | 動作・キー不要・CORS開放・txpool対応 |
https://polygon.drpc.org | 動作・キー不要・CORS開放 |
https://1rpc.io/matic | 動作・キー不要・CORS開放 |
https://polygon-amoy-bor-rpc.publicnode.com | Amoyテストネット・動作(0x13882) |
https://polygon-amoy.drpc.org | Amoyテストネット・動作 |
https://polygon-rpc.com | 失敗:「API key disabled, tenant disabled」 |
https://rpc.ankr.com/polygon | キーなしでは失敗:「Unauthorized」 |
どのターミナルからでも実行できる簡単な動作確認です。
# チェーンIDを取得して接続先を確認する
curl -s https://polygon-bor-rpc.publicnode.com \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'
# {"jsonrpc":"2.0","result":"0x89","id":1}
0x89は137、つまりPolygon PoSメインネットです。公開エンドポイントによって公開しているメソッドは異なり、txpool_statusはpublicnodeでは動作しましたが、dRPCでは利用不可として拒否されました。正しいチェーンID、通貨、エクスプローラーURLでウォレットに追加する方法はPolygonネットワーク設定のページを、SLA付きの有料サービスを含むRPCプロバイダーの一覧はPolygonの公式ドキュメントをご覧ください。
チェックポイントとバリデーター用のHeimdall REST API
Polygonのコンセンサスレイヤーには、https://heimdall-api.polygon.technologyに独自の公開APIがあります。EVMのエクスプローラーAPIでは取得できないチェックポイントとバリデーターのデータは、ここから取得します。/checkpoints/latest、/checkpoints/count、/checkpoints/{id}、/milestones/latest、/stake/validators-set、/stake/validator/{id}などがあり、キー不要でCORSも開放されています。2025年7月のHeimdall v2アップグレードでレスポンスの形が変わり、ルートハッシュはBase64になったため、古いパーサーは修正が必要な場合があります。これらのエンドポイントは、まさにこの呼び出しを使っているHeimdallチェックポイントエクスプローラーで、実際の出力とともに解説しています。
fetchを使ったブラウザ対応のコード例
BlockscoutからウォレットのUSDC残高を、公開RPCから最新ブロックを読み込む小さなスクリプトです。最新のブラウザのコンソールでもNode 18以降でもそのまま動き、公開前に実行して確認しました。
const USDC = '0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359';
const wallet = '0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270';
// Blockscoutからトークン残高の一覧を取得する
const res = await fetch(`https://polygon.blockscout.com/api/v2/addresses/${wallet}/token-balances`);
if (!res.ok) throw new Error(`Blockscout returned ${res.status}`);
const balances = await res.json();
// アドレスでUSDCを探し、小数点桁数で割って表示する
const usdc = balances.find(b => b.token.address_hash.toLowerCase() === USDC.toLowerCase());
const amount = usdc ? Number(usdc.value) / 10 ** Number(usdc.token.decimals) : 0;
console.log(`USDC balance: ${amount}`);
// 公開RPCから最新のブロック番号を取得する
const rpc = await fetch('https://polygon-bor-rpc.publicnode.com', {
method: 'POST',
headers: { 'content-type': 'application/json' },
body: JSON.stringify({ jsonrpc: '2.0', id: 1, method: 'eth_blockNumber', params: [] }),
});
const { result } = await rpc.json();
console.log('Latest block:', parseInt(result, 16));
例に使ったウォレットはWPOLのコントラクトで、Blockscoutでは今も「WMATIC」と表示されます。APIのレスポンスに含まれる名前はリブランドに追いつかないことがある、というよい例です。ロジックは常に名前やシンボルではなくアドレスを基準に組み立ててください。本番のコードでは、トークンの金額にNumberではなくBigIntや10進数ライブラリを使いましょう。大きな残高は浮動小数点数にすると精度が失われます。
レート制限、CORS、ブラウザでの実行
レート制限。 ここで紹介した無料APIはすべてレート制限があります。Blockscoutはレスポンスごとにx-ratelimit-limit、x-ratelimit-remaining、x-ratelimit-resetのヘッダーを返します(私たちのテストでは上限ヘッダーは180でした)。これを読み取り、連打せずに間隔を空けてください。Etherscanはキーごとに秒単位と1日単位の制限を設けています。公開RPCは数値を示さずにIP単位で制限します。積極的にキャッシュしましょう。承認済みのトランザクションは変わらないので、一度取得すれば十分です。
CORS。 Blockscout、Heimdall REST、動作する3つの公開RPCはすべてAccess-Control-Allow-Origin: *を返しました。当サイトのような完全な静的サイトが、訪問者のブラウザから直接照会できるのはこのためです。EtherscanのAPIも開放されたCORSヘッダーを返しましたが、だからといってフロントエンドから呼び出してよいわけではありません。
フォールバック。 公開インフラは停止することがあります。当サイトのエクスプローラーはまずBlockscoutを試し、失敗した場合は複数のRPCエンドポイントに順に切り替えます。無料のエンドポイントに依存するアプリには、同じパターンをおすすめします。
Polygon explorer kit:自前のエクスプローラーを構築・運用する
「Polygon explorer kit」は、エクスプローラーを使うのではなく運用したい人が検索する言葉です。自分たちが運営するPolygonベースのチェーン向け、社内ダッシュボード向け、あるいは単に他社のレート制限を避けるためです。この名前の公式製品が1つあるわけではありません。実際には、次のものを組み合わせることを意味します。
エクスプローラーソフト
オープンソースの定番はBlockscout(GPL-3.0)で、Docker構成のほか、Autoscoutというホスティング型の起動サービスもあります。
アーカイブノード
内部トランザクションや過去の残高をインデックスできるよう、全履歴とトレース機能を有効にしたPolygonノードです。
ストレージと時間
Postgresデータベースと大容量のディスクが必要です。Polygon PoSをジェネシスからインデックスするには長い時間がかかります。
ほとんどのチームにとって、Polygon PoSの完全なエクスプローラーをセルフホストする価値はあまりありません。公開されているBlockscoutとPolygonScanのインスタンスが、すでに数十億件のトランザクションをインデックスしているからです。意味があるのは、新しいチェーン、プライベートネットワーク、あるいは確実な処理能力が必要な場合です。Blockscoutのデプロイ用ドキュメントとGitHubリポジトリから始めるとよいでしょう。
実際の資金を動かすものを開発していて、メインネットでのテスト用にガス代のPOLだけが必要な場合は、複数の法域でライセンスを持ち、Polygonネットワークへ直接出金できる規制下の取引所で購入し、出金ネットワークにPolygon PoSを選んでください(日本国内の交換業者は金融庁への登録が必要です)。無料のテスト用資金が欲しい場合は、代わりにAmoyテストネットエクスプローラーのページで紹介しているAmoyのフォーセットを使いましょう。
当サイトのライブツールでのAPIの使い方
当サイトのPolygonトランザクション・アドレスエクスプローラーは、ここまで紹介したすべての実例です。Polygon PoSのトランザクション、アドレス、ブロック、トークンの検索はBlockscout API v2に送られ、検索に失敗した場合やデータがごく新しい場合は、ここに掲載した公開エンドポイント経由のJSON-RPCにフォールバックします。AmoyとzkEVMの検索は基本的なRPCデータを使います。ガストラッカーとメンプールのウィジェットはRPCを直接読み込み、HeimdallのウィジェットはHeimdall RESTを呼び出します。APIキーもバックエンドも不要で、当サイト側には何も保存されません。リクエストはあなたのブラウザから公開APIへ直接送られます。そのため、いずれかのプロバイダーに障害が起きると、数値が入るはずの場所に一時的にダッシュが表示されることがあります。