From 9945a6f96a37785b8ec5d78ac2e2fb0bdc3507b5 Mon Sep 17 00:00:00 2001 From: alchemy-bot <80712764+alchemy-bot@users.noreply.github.com> Date: Tue, 22 Sep 2026 21:44:36 +0000 Subject: [PATCH 1/2] [docs-agent] Document network support on get-transfers-by-address Add an explicit supported-networks table (14 EVM networks) to the `networks` field description in `TransfersByAddressRequest`, replacing the generic "Ethereum and many EVM chains" copy with the concrete list Brian confirmed. The dashboard.alchemy.com/chains link on that field was misleading (it lists every Alchemy-supported chain, not just the ones this endpoint fans out to). Also add a note on the `category` field that `internal` is only supported on Ethereum Mainnet, Base Mainnet, Polygon Mainnet, Arc Mainnet, and Arc Testnet. All other categories are supported on every network in the table. Requested-by: @brianluong --- src/openapi/portfolio/portfolio.yaml | 31 +++++++++++++++++-- .../portfolio/transfers/by-address.yaml | 8 +++-- 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/src/openapi/portfolio/portfolio.yaml b/src/openapi/portfolio/portfolio.yaml index 5fd60e6a0..797266196 100644 --- a/src/openapi/portfolio/portfolio.yaml +++ b/src/openapi/portfolio/portfolio.yaml @@ -710,8 +710,29 @@ components: - matic-mainnet description: > Networks to query. Defaults to Ethereum, Base, and Polygon mainnet (same as the - other Portfolio APIs). You can query up to 5 networks. Reach out if you need more. - Find network enums [here](https://dashboard.alchemy.com/chains). + other Portfolio APIs). You can query up to 5 networks per request. Reach out if + you need more. + + + **Supported networks:** + + + | Network | Slug | + | ------------------- | --------------------- | + | Ethereum Mainnet | `eth-mainnet` | + | Polygon Mainnet | `matic-mainnet` | + | Arbitrum Mainnet | `arb-mainnet` | + | Optimism Mainnet | `opt-mainnet` | + | Base Mainnet | `base-mainnet` | + | BNB Mainnet | `bnb-mainnet` | + | Celo Mainnet | `celo-mainnet` | + | Ronin Mainnet | `ronin-mainnet` | + | Monad Mainnet | `monad-mainnet` | + | Monad Testnet | `monad-testnet` | + | Robinhood Mainnet | `robinhood-mainnet` | + | Robinhood Testnet | `robinhood-testnet` | + | Arc Mainnet | `arc-mainnet` | + | Arc Testnet | `arc-testnet` | fromTimestamp: type: string format: date-time @@ -748,6 +769,12 @@ components: description: > Transfer categories to fetch. **Required**, with no default — provide one or more of the listed categories. + + + **Network support for `internal`:** the `internal` category is only supported on + Ethereum Mainnet (`eth-mainnet`), Base Mainnet (`base-mainnet`), Polygon Mainnet + (`matic-mainnet`), Arc Mainnet (`arc-mainnet`), and Arc Testnet (`arc-testnet`). + All other categories are supported on every network listed under `networks`. contractAddresses: type: array items: diff --git a/src/openapi/portfolio/transfers/by-address.yaml b/src/openapi/portfolio/transfers/by-address.yaml index 6b0b6cacc..e12dc76a4 100644 --- a/src/openapi/portfolio/transfers/by-address.yaml +++ b/src/openapi/portfolio/transfers/by-address.yaml @@ -6,8 +6,12 @@ description: > Fetches historical transfers (native, ERC-20, ERC-721, ERC-1155, special NFT, and internal) for a single wallet address and multiple networks. Returns a list of transfers ordered by - `blockTimestamp`. This endpoint supports Ethereum and many EVM chains. See the full list of - supported networks [here](https://dashboard.alchemy.com/chains). + `blockTimestamp`. Supported on 14 EVM networks — see the `networks` field on the request body + for the full list. + + + Note: the `internal` category is only supported on Ethereum Mainnet, Base Mainnet, Polygon + Mainnet, Arc Mainnet, and Arc Testnet. This endpoint fans out across every requested network and merges the results. If one or more From 9883d353315782841eab94b9d96ed2ccd7a93764 Mon Sep 17 00:00:00 2001 From: alchemy-bot <80712764+alchemy-bot@users.noreply.github.com> Date: Tue, 22 Sep 2026 23:41:10 +0000 Subject: [PATCH 2/2] [docs-agent] Convert supported-networks list to items.enum Per @dslovinsky's review feedback (and Codex's P2 comment): the folded-YAML markdown table collapsed to a single line in Fern's rendering, and using free-form text to describe enumerated API values is the wrong shape anyway. Replaced the table with an `enum:` on `items:` inside the `networks` field, which is the structurally correct way to express the accepted values and lets Fern render a dropdown / validate at spec time. Kept the top-level endpoint description's "14 EVM networks" summary and the `internal`-category caveat (that constraint is cross-field and can't be expressed via enum). Requested-by: @brianluong --- src/openapi/portfolio/portfolio.yaml | 36 ++++++++----------- .../portfolio/transfers/by-address.yaml | 4 +-- 2 files changed, 17 insertions(+), 23 deletions(-) diff --git a/src/openapi/portfolio/portfolio.yaml b/src/openapi/portfolio/portfolio.yaml index 797266196..dcfba328d 100644 --- a/src/openapi/portfolio/portfolio.yaml +++ b/src/openapi/portfolio/portfolio.yaml @@ -703,6 +703,21 @@ components: maxItems: 5 items: type: string + enum: + - eth-mainnet + - matic-mainnet + - arb-mainnet + - opt-mainnet + - base-mainnet + - bnb-mainnet + - celo-mainnet + - ronin-mainnet + - monad-mainnet + - monad-testnet + - robinhood-mainnet + - robinhood-testnet + - arc-mainnet + - arc-testnet default: eth-mainnet default: - eth-mainnet @@ -712,27 +727,6 @@ components: Networks to query. Defaults to Ethereum, Base, and Polygon mainnet (same as the other Portfolio APIs). You can query up to 5 networks per request. Reach out if you need more. - - - **Supported networks:** - - - | Network | Slug | - | ------------------- | --------------------- | - | Ethereum Mainnet | `eth-mainnet` | - | Polygon Mainnet | `matic-mainnet` | - | Arbitrum Mainnet | `arb-mainnet` | - | Optimism Mainnet | `opt-mainnet` | - | Base Mainnet | `base-mainnet` | - | BNB Mainnet | `bnb-mainnet` | - | Celo Mainnet | `celo-mainnet` | - | Ronin Mainnet | `ronin-mainnet` | - | Monad Mainnet | `monad-mainnet` | - | Monad Testnet | `monad-testnet` | - | Robinhood Mainnet | `robinhood-mainnet` | - | Robinhood Testnet | `robinhood-testnet` | - | Arc Mainnet | `arc-mainnet` | - | Arc Testnet | `arc-testnet` | fromTimestamp: type: string format: date-time diff --git a/src/openapi/portfolio/transfers/by-address.yaml b/src/openapi/portfolio/transfers/by-address.yaml index e12dc76a4..70d198b27 100644 --- a/src/openapi/portfolio/transfers/by-address.yaml +++ b/src/openapi/portfolio/transfers/by-address.yaml @@ -6,8 +6,8 @@ description: > Fetches historical transfers (native, ERC-20, ERC-721, ERC-1155, special NFT, and internal) for a single wallet address and multiple networks. Returns a list of transfers ordered by - `blockTimestamp`. Supported on 14 EVM networks — see the `networks` field on the request body - for the full list. + `blockTimestamp`. Supported on 14 EVM networks — see the `networks` request-body field for + the enumerated list. Note: the `internal` category is only supported on Ethereum Mainnet, Base Mainnet, Polygon