All integrations

OpenSea

BUSINESS · COMMERCE & FINANCE

NFT collections, individual NFTs, contracts, and collection stats across chains.

Acts as the person, not as itself

Each user connects their own account. Every call carries both identities — the agent and the person it is acting for — so the agent can never reach past what that individual can already do.

Credentials never touch the agent

Tokens live in the vault and attach server-side at call time. The agent holds a session, not a secret, and revoking access does not mean rotating a key.

Every call on the record

Who asked, which agent acted, which action ran, and the verdict that let it through — one audit trail across every integration, not one per vendor.

What an agent can do

Each action is granted on its own. An agent allowed to read is not thereby allowed to write, and the scope beside each row is what the acting user must have connected for it to run at all.

opensea_delete_api_v2_accounts_agentWRITE

Withdraw the authenticated account's agent declaration Calls DELETE /api/v2/accounts/agent. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:wallets. This tool refuses with that reason rather than calling the provider.

api
opensea_delete_api_v2_accounts_agent_relationshipsWRITE

Withdraw a proposal or revoke a confirmed agent relationship Either party may remove the relationship at any point. Addressed exactly as confirm is: `counterparty_account_id` or `counterparty_address`, one of the two, plus your own side. Calls DELETE /api/v2/accounts/agent-relationships. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:wallets. This tool refuses with that reason rather than calling the provider.

api
opensea_delete_api_v2_accounts_by_address_or_username_followWRITE

Unfollow a profile Calls DELETE /api/v2/accounts/{address_or_username}/follow. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:social. This tool refuses with that reason rather than calling the provider.

api
opensea_delete_api_v2_accounts_by_address_or_username_watchWRITE

Stop watching a profile Calls DELETE /api/v2/accounts/{address_or_username}/watch. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:social. This tool refuses with that reason rather than calling the provider.

api
opensea_delete_api_v2_accounts_wallets_by_walletWRITE

Unlink a wallet from the authenticated account Unlink a wallet from the authenticated account using a scoped wallet token. Calls DELETE /api/v2/accounts/wallets/{wallet}. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:wallets. This tool refuses with that reason rather than calling the provider.

api
opensea_delete_api_v2_accounts_wallets_by_wallet_privateWRITE

Make a registered wallet public Allows the wallet's public account linkage, including eligible agent ownership relationships. Calls DELETE /api/v2/accounts/wallets/{wallet}/private. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:wallets. This tool refuses with that reason rather than calling the provider.

api
opensea_delete_api_v2_profile_nft_pfpWRITE

Clear NFT profile picture Clear the authenticated wallet's NFT profile picture. This operation is idempotent: it returns 200 with `success=false` when no NFT profile picture was set, and `success=true` when one was cleared. Calls DELETE /api/v2/profile/nft-pfp. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:profile. This tool refuses with that reason rather than calling the provider.

api
opensea_delete_api_v2_profile_shelves_by_shelf_idWRITE

Delete a profile shelf Delete the authenticated wallet's shelf. Calls DELETE /api/v2/profile/shelves/{shelf_id}. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:profile. This tool refuses with that reason rather than calling the provider.

api
opensea_delete_api_v2_saved_toolsWRITE

[Beta] Remove a saved tool Idempotently remove a registered tool from the authenticated account's saved tools. Removed is false when the tool was already absent. Calls DELETE /api/v2/saved-tools. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:tools. This tool refuses with that reason rather than calling the provider.

api
opensea_delete_api_v2_watchlistWRITE

Remove a watchlist entry Remove an NFT, token, collection, or perpetual from the authenticated account's watchlist. Calls DELETE /api/v2/watchlist. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:favorites. This tool refuses with that reason rather than calling the provider.

api
opensea_get_api_v2_account_by_address_collectionsREAD

Get collections owned by an account Get a paginated list of collections owned by a wallet address, with ownership data. Calls GET /api/v2/account/{address}/collections.

api
opensea_get_api_v2_account_by_address_favoritesREAD

Get items favorited by an account Get a paginated list of items favorited by a wallet address. Requires wallet identity authentication; the requested address must belong to the authenticated account. Calls GET /api/v2/account/{address}/favorites. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying read:favorites. This tool refuses with that reason rather than calling the provider.

api
opensea_get_api_v2_account_by_address_listingsREAD

Get active listings for an account Get a paginated list of active listings created by a wallet address. Calls GET /api/v2/account/{address}/listings.

api
opensea_get_api_v2_account_by_address_offersREAD

Get active offers made by an account Get a paginated list of active offers made by a wallet address. Calls GET /api/v2/account/{address}/offers.

api
opensea_get_api_v2_account_by_address_offers_receivedREAD

Get offers received by an account Get a paginated list of offers received on items owned by a wallet address. Calls GET /api/v2/account/{address}/offers_received.

api
opensea_get_api_v2_account_by_address_perpetual_watchlistREAD

Get perpetuals watched by an account Get the perpetual futures watched by the authenticated account. Requires wallet identity authentication; the requested address must belong to the authenticated account. Calls GET /api/v2/account/{address}/perpetual_watchlist. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying read:favorites. This tool refuses with that reason rather than calling the provider.

api
opensea_get_api_v2_account_by_address_pnlREAD

Get trading P&L for an account Get aggregated realized and unrealized trading profit and loss across all currencies held by a wallet address. Returns 200 with figures (which may be zero for a real but flat wallet) when OpenSea has indexed P&L for the wallet, and 404 only when no P&L has been indexed for it — letting consumers distinguish "indexed but flat" from "not indexed". Calls GET /api/v2/account/{address}/pnl.

api
opensea_get_api_v2_account_by_address_pnl_closed_positionsREAD

Get closed (realized) trading positions for an account Get a paginated, per-trade breakdown of a wallet's realized P&L. Each closed position reflects FIFO (first-in, first-out) cost-basis lot matching. Calls GET /api/v2/account/{address}/pnl/closed-positions.

api
opensea_get_api_v2_account_by_address_pnl_token_transfersREAD

Get token transfers for a wallet's position in a currency Get a paginated, transfer-level breakdown of a wallet's position in a single currency (identified by contract_address + chain). Combine `direction` and `transfer_type` to distinguish zero-cost acquisitions (airdrops, CEX transfers) from buys. Calls GET /api/v2/account/{address}/pnl/token-transfers.

api
opensea_get_api_v2_account_by_address_portfolioREAD

Get portfolio stats for an account Get portfolio analytics including total value, NFT/token breakdown, and P&L for a wallet address over a given timeframe. Calls GET /api/v2/account/{address}/portfolio.

api
opensea_get_api_v2_account_by_address_portfolio_historyREAD

Get portfolio net worth history for an account Get net worth time series data for a wallet address over a given timeframe. Calls GET /api/v2/account/{address}/portfolio/history.

api
opensea_get_api_v2_account_by_address_token_activityREAD

Get account token activity Get paginated fungible token activity (transfers, swaps, wraps, and unwraps) for an account across all chains. Optionally filter by chain, token, and/or activity type. Calls GET /api/v2/account/{address}/token-activity.

api
opensea_get_api_v2_account_by_address_token_watchlistREAD

Get tokens watched by an account Get the tokens watched by the authenticated account. Requires wallet identity authentication; the requested address must belong to the authenticated account. Calls GET /api/v2/account/{address}/token_watchlist. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying read:favorites. This tool refuses with that reason rather than calling the provider.

api
opensea_get_api_v2_account_by_address_tokensREAD

Get token balances by account Get fungible token balances for a specific wallet address. Returns quantity (in display units, not raw/wei), USD value, and token metadata for each token held. Calls GET /api/v2/account/{address}/tokens.

api
opensea_get_api_v2_accounts_agent_relationshipsREAD

List the authenticated account's agent relationships Includes proposals still awaiting either party. Pending relationships appear here only; they are never shown on a public profile. Truncated to the 100 most recent confirmed relationships and the 50 most recent live proposals, bounded separately so unanswered proposals cannot displace confirmed relationships. No total is returned. Confirming or revoking names the counterparty's account id, which this listing is the source of. Calls GET /api/v2/accounts/agent-relationships. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying read:wallets. This tool refuses with that reason rather than calling the provider.

api
opensea_get_api_v2_accounts_by_address_or_usernameREAD

Get an OpenSea account profile Get an OpenSea Account Profile including details such as bio, social media usernames, and profile image. Calls GET /api/v2/accounts/{address_or_username}.

api
opensea_get_api_v2_accounts_by_address_or_username_agent_relationshipsREAD

Get public agent ownership relationships for a profile Returns the account confirmed to own this one as its agent, and the accounts it is the confirmed owner of. Only relationships both accounts confirmed appear; a proposal one side has not accepted is visible to the two parties alone. Ownership is a declaration and not an authorization, and is self-reported rather than verified by OpenSea. Standard API-key quotas and an additional 30-per-hour per-profile limit apply. Calls GET /api/v2/accounts/{address_or_username}/agent-relationships.

api
opensea_get_api_v2_accounts_by_address_or_username_followersREAD

Get profile followers Calls GET /api/v2/accounts/{address_or_username}/followers. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying read:social. This tool refuses with that reason rather than calling the provider.

api
opensea_get_api_v2_accounts_by_address_or_username_followingREAD

Get profiles followed Returns the profiles followed by an address or username profile, including followed wallets. Calls GET /api/v2/accounts/{address_or_username}/following. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying read:social. This tool refuses with that reason rather than calling the provider.

api
opensea_get_api_v2_accounts_by_address_or_username_relationshipREAD

Get the authenticated account's relationship with a profile Calls GET /api/v2/accounts/{address_or_username}/relationship. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying read:social. This tool refuses with that reason rather than calling the provider.

api
opensea_get_api_v2_accounts_resolve_by_identifierREAD

Resolve an account identifier Resolve an ENS name (e.g. vitalik.eth), OpenSea username, or wallet address to canonical account info including address, username, and ENS name. The ENS path performs both forward resolution (name → address) and reverse lookup (address → canonical primary name). The address and ENS paths perform enrichment calls (username + ENS reverse lookup) in parallel. The username path only needs an ENS reverse lookup after the initial resolution and runs it sequentially. The ENS and username paths require an extra initial call and may be slower than the address path on cache misses. Calls GET /api/v2/accounts/resolve/{identifier}.

api
opensea_get_api_v2_chain_by_chain_account_by_address_nftsREAD

Get NFTs by account Get all NFTs owned by a specific account on a blockchain, with optional collection filtering. Calls GET /api/v2/chain/{chain}/account/{address}/nfts.

api
opensea_get_api_v2_chain_by_chain_contract_by_addressREAD

Get contract Get contract metadata including collection information, contract standards, and ownership details. Calls GET /api/v2/chain/{chain}/contract/{address}.

api
opensea_get_api_v2_chain_by_chain_contract_by_address_nftsREAD

Get NFTs by contract Get all NFTs for a specific contract address on a blockchain. Calls GET /api/v2/chain/{chain}/contract/{address}/nfts.

api
opensea_get_api_v2_chain_by_chain_contract_by_address_nfts_by_identifierREAD

Get NFT Get metadata, traits, ownership information, and rarity for a single NFT. Calls GET /api/v2/chain/{chain}/contract/{address}/nfts/{identifier}.

api
opensea_get_api_v2_chain_by_chain_contract_by_address_nfts_by_identifier_analyticsREAD

Get NFT analytics Get analytics data for a specific NFT including sales history and floor price history. Calls GET /api/v2/chain/{chain}/contract/{address}/nfts/{identifier}/analytics.

api
opensea_get_api_v2_chain_by_chain_contract_by_address_nfts_by_identifier_collectionREAD

Get collection by NFT Get the collection that an NFT belongs to. This is useful for multi-contract collections like Art Blocks where the item ID disambiguates which collection the NFT belongs to. Calls GET /api/v2/chain/{chain}/contract/{address}/nfts/{identifier}/collection.

api
opensea_get_api_v2_chain_by_chain_contract_by_address_nfts_by_identifier_ownersREAD

Get NFT owners Get a paginated list of owners for a specific NFT. Particularly useful for ERC-1155 tokens which can have multiple owners. Calls GET /api/v2/chain/{chain}/contract/{address}/nfts/{identifier}/owners.

api
opensea_get_api_v2_chain_by_chain_payment_token_by_addressREAD

Get payment token Get a payment token by chain and contract address. Calls GET /api/v2/chain/{chain}/payment_token/{address}.

api
opensea_get_api_v2_chain_by_chain_token_by_addressREAD

Get token details Get detailed information about a specific token by chain and contract address. Calls GET /api/v2/chain/{chain}/token/{address}.

api
opensea_get_api_v2_chain_by_chain_token_by_address_activityREAD

Get token swap activity Get paginated swap activity for a specific token on a given chain. Calls GET /api/v2/chain/{chain}/token/{address}/activity.

api
opensea_get_api_v2_chain_by_chain_token_by_address_activity_statsREAD

Get token trading activity stats Get materialized trade count, USD volume, and average trade size for a token. Windows with no swaps are omitted; an omitted requested key means zero trades in that window. Each window ends at its own materialized snapshot; computed_at is the oldest snapshot among the returned windows and can precede request time because the response is cached. The 1h and 24h windows also carry unique_buyer_count and unique_seller_count, which are null when the counts are unavailable for that token; 5m and 4h never carry them. Calls GET /api/v2/chain/{chain}/token/{address}/activity/stats.

api
opensea_get_api_v2_chain_by_chain_token_by_address_holdersREAD

Get token holders Get paginated list of holders for a specific token, including quantity held and USD value. Calls GET /api/v2/chain/{chain}/token/{address}/holders.

api
opensea_get_api_v2_chain_by_chain_token_by_address_liquidity_poolsREAD

Get token liquidity pools Get liquidity pools for a specific token. Calls GET /api/v2/chain/{chain}/token/{address}/liquidity-pools.

api
opensea_get_api_v2_chain_by_chain_token_by_address_ohlcvREAD

Get token OHLCV candles Get OHLCV (Open, High, Low, Close, Volume) candlestick data for a specific token. Calls GET /api/v2/chain/{chain}/token/{address}/ohlcv.

api
opensea_get_api_v2_chain_by_chain_token_by_address_price_historyREAD

Get token price history Get historical price data for a specific token. Calls GET /api/v2/chain/{chain}/token/{address}/price_history.

api
opensea_get_api_v2_chainsREAD

Get supported chains Get all supported blockchain chains with metadata including name, native currency symbol, swap support, and block explorer information. Calls GET /api/v2/chains.

api
opensea_get_api_v2_collection_by_slug_nftsREAD

Get NFTs by collection Get NFTs in a specific collection. Optionally filter by traits using the 'traits' query parameter with a JSON array of trait filters. Multiple traits are AND-combined (items must match all specified traits). Example: ?traits=[{"traitType":"Background","value":"Red"},{"traitType":"Eyes","value":"Blue"}] Calls GET /api/v2/collection/{slug}/nfts.

api
opensea_get_api_v2_collectionsREAD

Get multiple collections Get a list of collections with filters and sorting options. Calls GET /api/v2/collections.

api
opensea_get_api_v2_collections_by_slugREAD

Get a single collection Get a single collection including details such as fees, traits, and links. Calls GET /api/v2/collections/{slug}.

api
opensea_get_api_v2_collections_by_slug_floor_pricesREAD

Get collection floor price history Get time-series floor price data for a collection. Calls GET /api/v2/collections/{slug}/floor_prices.

api
opensea_get_api_v2_collections_by_slug_holdersREAD

Get collection holders Get a paginated list of holders for a collection. Calls GET /api/v2/collections/{slug}/holders.

api
opensea_get_api_v2_collections_by_slug_offer_aggregatesREAD

Get collection offer aggregates Get aggregated offer buckets grouped by price level for a collection. Calls GET /api/v2/collections/{slug}/offer_aggregates.

api
opensea_get_api_v2_collections_by_slug_statsREAD

Get collection stats Get statistics for a collection including volume, floor price, and trading metrics. Each currency-denominated figure carries its own symbol: volume is reported in the currency named by volume_symbol, and the floor in the currency named by floor_price_symbol. The two can differ, so read each number against its own symbol. Calls GET /api/v2/collections/{slug}/stats.

api
opensea_get_api_v2_collections_topREAD

Get top collections Get top NFT collections ranked by various stats (sorted descending). Unlike /trending, results are not filtered by verification status; spam-tagged collections are excluded via trust-safety enforcement states. Available sort options: one_day_volume, seven_days_volume, thirty_days_volume, floor_price, one_day_sales, seven_days_sales, thirty_days_sales, total_volume, total_sales. Calls GET /api/v2/collections/top.

api
opensea_get_api_v2_collections_trendingREAD

Get trending collections Get a list of trending NFT collections sorted by sales activity over a specified timeframe. Trending is determined by sales volume and activity metrics. Available timeframes range from 1 minute to all time. For the one_day timeframe without a chain filter, collections are sorted by a composite trending score; all other timeframes sort by raw sales count. Results are filtered to verified, non-spam, non-NSFW collections with minimum volume thresholds. Calls GET /api/v2/collections/trending.

api
opensea_get_api_v2_dropsREAD

Get drops Get a list of NFT drops (mints) by type: featured, upcoming, or recently_minted. Results may be fewer than the requested limit due to post-fetch filtering. Calls GET /api/v2/drops.

api
opensea_get_api_v2_drops_by_slugREAD

Get drop by collection slug Get detailed drop information for a collection, including stages and supply. Calls GET /api/v2/drops/{slug}.

api
opensea_get_api_v2_drops_by_slug_eligibilityREAD

Get drop eligibility for the authenticated wallet Returns per-stage eligibility for the authenticated wallet, including pricing and mint limits. Calls GET /api/v2/drops/{slug}/eligibility. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying read:eligibility. This tool refuses with that reason rather than calling the provider.

api
opensea_get_api_v2_drops_deploy_by_chain_by_tx_hash_receiptREAD

Get deploy contract receipt Check the status of a contract deployment transaction. Returns the deployment status and, on success, the deployed contract address and linked collection slug. Calls GET /api/v2/drops/deploy/{chain}/{tx_hash}/receipt.

api
opensea_get_api_v2_eventsREAD

Get events Get a list of events, with optional filtering by event type and time range. Calls GET /api/v2/events.

api
opensea_get_api_v2_events_accounts_by_addressREAD

Get events (by account) Get a list of events for an account. Calls GET /api/v2/events/accounts/{address}.

api
opensea_get_api_v2_events_chain_by_chain_contract_by_address_nfts_by_identifierREAD

Get events (by NFT) Get a list of events for a specific NFT. Calls GET /api/v2/events/chain/{chain}/contract/{address}/nfts/{identifier}.

api
opensea_get_api_v2_events_collection_by_slugREAD

Get events (by collection) Get a list of events for a collection. Optionally filter by traits to only return events for items matching the specified trait criteria. Calls GET /api/v2/events/collection/{slug}.

api
opensea_get_api_v2_listings_collection_by_slug_allREAD

Get all listings by collection Get all listings for a collection. Calls GET /api/v2/listings/collection/{slug}/all.

api
opensea_get_api_v2_listings_collection_by_slug_bestREAD

Get best listings by collection Get the best listings for a collection sorted by price ascending. Optionally filter by item traits using the 'traits' query parameter with a JSON array of trait filters. Multiple traits are AND-combined (items must match all). Note: results are not deduplicated by token ID — if a token has multiple listings, each listing is returned individually. Filter client-side if you need unique tokens. Example: ?traits=[{"traitType":"Background","value":"Red"}] Calls GET /api/v2/listings/collection/{slug}/best.

api
opensea_get_api_v2_listings_collection_by_slug_nfts_by_identifier_bestREAD

Get best listing by NFT Get the best listing for an NFT. Calls GET /api/v2/listings/collection/{slug}/nfts/{identifier}/best.

api
opensea_get_api_v2_metadata_by_chain_by_contractaddress_by_tokenidREAD

Get NFT metadata Get detailed metadata for an NFT including name, description, image, traits, and external links. Calls GET /api/v2/metadata/{chain}/{contractAddress}/{tokenId}.

api
opensea_get_api_v2_offers_collection_by_slugREAD

Get offers by collection Get collection offers on a collection. Calls GET /api/v2/offers/collection/{slug}.

api
opensea_get_api_v2_offers_collection_by_slug_allREAD

Get all offers by collection Get all offers for a collection. Calls GET /api/v2/offers/collection/{slug}/all.

api
opensea_get_api_v2_offers_collection_by_slug_nfts_by_identifierREAD

Get offers by NFT Get offers for an NFT. Calls GET /api/v2/offers/collection/{slug}/nfts/{identifier}.

api
opensea_get_api_v2_offers_collection_by_slug_nfts_by_identifier_bestREAD

Get best offer by NFT Get the best offer for an NFT. Calls GET /api/v2/offers/collection/{slug}/nfts/{identifier}/best.

api
opensea_get_api_v2_offers_collection_by_slug_traitsREAD

Get trait offers for a collection Get trait offers for a collection. Use the `mode` parameter to select the bid category. **Single string trait:** `?mode=STRING&type=Background&value=Red` **Multiple string traits:** `?mode=MULTI&traits=[{"traitType":"Background","value":"Red"},{"traitType":"Eyes","value":"Blue"}]` **Numeric trait range:** `?mode=NUMERIC&type=Level&min_value=1&max_value=10` Omit filter params to discover all bids of that mode (e.g. `?mode=NUMERIC` returns all numeric bids). If `mode` is omitted, the mode is inferred from the params for backward compatibility. Calls GET /api/v2/offers/collection/{slug}/traits.

api
opensea_get_api_v2_orders_chain_by_chain_protocol_by_protocol_address_by_order_hashREAD

Get an order Get a single order by its order hash. Calls GET /api/v2/orders/chain/{chain}/protocol/{protocol_address}/{order_hash}.

api
opensea_get_api_v2_profile_shelvesREAD

Get profile shelves Get the shelves for a public wallet address. Calls GET /api/v2/profile/shelves.

api
opensea_get_api_v2_saved_toolsREAD

[Beta] List saved tools List tools saved by the authenticated account. Calls GET /api/v2/saved-tools. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying read:tools. This tool refuses with that reason rather than calling the provider.

api
opensea_get_api_v2_searchREAD

Search across OpenSea Search across collections, tokens, NFTs, and accounts. Results are ranked by relevance. Calls GET /api/v2/search.

api
opensea_get_api_v2_swap_quoteREAD

Get swap quote Get a quote for swapping tokens, including price details and executable transaction data. Calls GET /api/v2/swap/quote.

api
opensea_get_api_v2_token_groupsREAD

Get token groups Get a paginated list of token groups sorted by market cap descending. Token groups represent equivalent currencies across different blockchains (e.g., ETH on Ethereum, Base, and Arbitrum are all in the "eth" token group). Calls GET /api/v2/token-groups.

api
opensea_get_api_v2_token_groups_by_slugREAD

Get a token group by slug Get detailed information about a specific token group by its slug identifier. Calls GET /api/v2/token-groups/{slug}.

api
opensea_get_api_v2_tokens_topREAD

Get top tokens Get top tokens ranked by 24-hour trading volume. Returns established tokens with high market activity. Pass `sort_by` and `sort_direction` to order the same set of tokens differently. Calls GET /api/v2/tokens/top.

api
opensea_get_api_v2_tokens_trendingREAD

Get trending tokens Get trending tokens based on OpenSea's trending score algorithm. Returns tokens with high momentum including memecoins and newly popular assets. Pass `sort_by` and `sort_direction` to order the same set of tokens differently. Calls GET /api/v2/tokens/trending.

api
opensea_get_api_v2_toolsREAD

[Beta] List registered tools [Beta] List verified registered tools with optional sorting and filtering. This endpoint is under active development and may change without notice. Calls GET /api/v2/tools.

api
opensea_get_api_v2_tools_by_registry_chain_by_registry_addr_by_tool_idREAD

[Beta] Get a registered tool [Beta] Get a registered tool by its composite key: registry chain, registry address, and tool ID. Includes pricing recipients and NFT collection info for gated tools. This endpoint is under active development and may change without notice. Calls GET /api/v2/tools/{registry_chain}/{registry_addr}/{tool_id}.

api
opensea_get_api_v2_tools_by_registry_chain_by_registry_addr_by_tool_id_activityREAD

[Beta] Get activity for a registered tool [Beta] Returns merged x402 payment events and usage reports for a tool, deduplicated by transaction hash. Each event includes an attribution field indicating confidence level. This endpoint is under active development and may change without notice. Calls GET /api/v2/tools/{registry_chain}/{registry_addr}/{tool_id}/activity.

api
opensea_get_api_v2_tools_searchREAD

[Beta] Search registered tools [Beta] Search for verified registered tools by name, tags, creator, or other criteria. This endpoint is under active development and may change without notice. Calls GET /api/v2/tools/search.

api
opensea_get_api_v2_traits_by_slugREAD

Get collection traits Get all available traits for a collection with their value counts and data types. Calls GET /api/v2/traits/{slug}.

api
opensea_get_api_v2_traits_by_slug_floorsREAD

Get trait floor prices Get the cheapest active listing for every trait value in a collection, in one request. Trait values with no active listing are omitted. Results are ordered by trait type, then value, then price. Only traits with text values are included. A numeric trait has no enumerable set of values, so it is reported as a min/max range by 'GET /api/v2/traits/{slug}' rather than as a floor per value here. Prices come from each item's best listing across every marketplace OpenSea aggregates, the same basis as 'floor_price' in 'GET /api/v2/collections/{slug}/stats'. A floor can therefore be below the cheapest listing fulfillable through this API, because 'GET /api/v2/listings/collection/{slug}/best' serves only the OpenSea order book. Prices are not converted to a common currency: a trait value listed in more than one currency appears once per currency, and prices are only comparable within the same 'payment_token_symbol'. Calls GET /api/v2/traits/{slug}/floors.

api
opensea_patch_api_v2_collections_by_slugWRITE

Modify collection metadata Update an existing collection's metadata. Calls PATCH /api/v2/collections/{slug}. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:collections. This tool refuses with that reason rather than calling the provider.

api
opensea_patch_api_v2_collections_by_slug_metadataWRITE

Update collection metadata Update collection about, hero, overview, and logo image metadata. Calls PATCH /api/v2/collections/{slug}/metadata. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:collections. This tool refuses with that reason rather than calling the provider.

api
opensea_patch_api_v2_collections_by_slug_visibilityWRITE

Set collection visibility Hide or unhide a collection. Calls PATCH /api/v2/collections/{slug}/visibility. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:collections. This tool refuses with that reason rather than calling the provider.

api
opensea_patch_api_v2_drops_by_slug_items_by_token_idWRITE

Update drop item Update drop item metadata. Calls PATCH /api/v2/drops/{slug}/items/{token_id}. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:drops. This tool refuses with that reason rather than calling the provider.

api
opensea_patch_api_v2_profileWRITE

Update profile settings Update the authenticated wallet's profile settings. Calls PATCH /api/v2/profile. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:profile. This tool refuses with that reason rather than calling the provider.

api
opensea_patch_api_v2_profile_shelvesWRITE

Reorder profile shelves Reorder the authenticated wallet's shelves. Calls PATCH /api/v2/profile/shelves. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:profile. This tool refuses with that reason rather than calling the provider.

api
opensea_patch_api_v2_profile_shelves_by_shelf_idWRITE

Update a profile shelf Update shelf fields and optionally item descriptions. Shelf field updates are applied first; if a later item description update fails, earlier changes are not rolled back. Calls PATCH /api/v2/profile/shelves/{shelf_id}. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:profile. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_accounts_agent_relationshipsWRITE

Propose an agent ownership relationship Both accounts must agree. Proposing a relationship that is already awaiting you confirms it, so a client that cannot tell who moved first can simply propose. Calls POST /api/v2/accounts/agent-relationships. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:wallets. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_accounts_agent_relationships_confirmWRITE

Confirm an agent relationship proposed to the authenticated account Name the other party by `counterparty_account_id`, from `agent_account_id` or `owner_account_id` on a listed relationship, or by `counterparty_address`. Prefer the account: the relationship is the pair of accounts, so it stays addressable after either party unlinks the wallet it was proposed with, whereas an address stops resolving once unlinked. Calls POST /api/v2/accounts/agent-relationships/confirm. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:wallets. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_accounts_by_address_or_username_followWRITE

Follow a profile Calls POST /api/v2/accounts/{address_or_username}/follow. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:social. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_accounts_by_address_or_username_watchWRITE

Watch a followed profile Calls POST /api/v2/accounts/{address_or_username}/watch. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:social. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_accounts_wallets_siwxWRITE

Link a wallet to the authenticated account Verify control of a wallet using a SIWX signature and link it to the authenticated account. Calls POST /api/v2/accounts/wallets/siwx. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:wallets. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_assets_transferWRITE

Transfer NFTs or tokens between wallets Returns ordered blockchain actions to execute for transferring one or more NFTs or tokens from one wallet to another. Supports bulk transfers of multiple assets in a single request. Calls POST /api/v2/assets/transfer.

api
opensea_post_api_v2_chain_by_chain_contract_by_address_nfts_by_identifier_refreshWRITE

Refresh NFT metadata Queue a metadata refresh for a specific NFT to update its information from the blockchain. Calls POST /api/v2/chain/{chain}/contract/{address}/nfts/{identifier}/refresh.

api
opensea_post_api_v2_chain_by_chain_contract_by_address_nfts_by_identifier_validate_metadataWRITE

Validate NFT metadata Fetch and validate NFT metadata directly from the blockchain without using cached data. Returns both original and processed (SeaDN) URLs to show how the metadata would be ingested. This endpoint does not persist any data. Calls POST /api/v2/chain/{chain}/contract/{address}/nfts/{identifier}/validate-metadata.

api
opensea_post_api_v2_collections_batchWRITE

Get collections by slugs Retrieve multiple collections in a single request by providing a list of slugs. Results are returned in the same order as the input slugs. Not-found collections are silently omitted. Calls POST /api/v2/collections/batch.

api
opensea_post_api_v2_collections_by_slug_images_by_image_typeWRITE

Upload collection image Set the content_type query parameter to the exact MIME type of the image bytes. This response starts a three-step upload flow. First, request this context from OpenSea. Second, call the returned method at the returned URL. For POST, add every fields entry unchanged as a multipart text field, then add a file part containing the bytes. The file part must be last. Let the HTTP library generate the multipart boundary; do not set the overall multipart Content-Type header yourself. POST storage uploads normally return 204. For PUT, upload the raw bytes, use only headers explicitly required by the endpoint, and expect 200. Treat any 2xx storage response as success. The URL and fields are short-lived sensitive credentials. Do not log, persist, alter, or put them in tickets. Third, after storage succeeds, pass the returned token to the documented OpenSea API endpoint. Do not use the token before the storage upload succeeds. Pass the token as the matching image field in PATCH /api/v2/collections/{slug}. Calls POST /api/v2/collections/{slug}/images/{image_type}. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:collections. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_drops_by_slugWRITE

Update Creator Studio drop edits Update an existing ERC-721 SeaDrop V1 drop and its stages. Saves a Creator Studio draft. It does not change the live drop: SeaDrop stages are onchain contract state, so the draft has to be published separately before buyers see it. A 200 here means the draft was accepted, not that the drop changed. `stages` replaces the whole set rather than merging, so send every stage the drop should end up with, including ones you are not changing. Reuse an existing stage uuid to update it, supply a new UUID to add one, and omit a stage to delete it. The stage list has four rules, and rules 2 and 4 interact in a way worth reading before the first attempt: 1. Exactly one stage must be `public_sale`. 2. That public stage must be first in the array. 3. The presales, meaning every stage after the first, must be contiguous among themselves: each one starts exactly when the previous presale ended. The first presale start time is not constrained. 4. The last presale must end exactly when the public stage starts. Together, 2 and 4 mean array order is not chronological order: the public stage is listed first and runs last, with the presales running in array order before it. A drop with two allowlist stages therefore sends `[public, presale1, presale2]` while time runs presale1, then presale2, then public. Rule 3 does not tie presale1 back to the public stage, which is why the chain reads forward from presale1 rather than from the array head. Per-wallet mint limits are cumulative across stages, so `max_total_mintable_by_wallet` on a later stage is a running total for the wallet rather than a fresh allowance. Calls POST /api/v2/drops/{slug}. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:drops. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_drops_by_slug_allowlistWRITE

Upload drop allowlist The file is CSV with a header row, and the wallet column must be named address or walletaddress. Optional per-row columns are a custom mint limit and a custom price. This response starts a three-step upload flow. First, request this context from OpenSea. Second, call the returned method at the returned URL. For POST, add every fields entry unchanged as a multipart text field, then add a file part containing the bytes. The file part must be last. Let the HTTP library generate the multipart boundary; do not set the overall multipart Content-Type header yourself. POST storage uploads normally return 204. For PUT, upload the raw bytes, use only headers explicitly required by the endpoint, and expect 200. Treat any 2xx storage response as success. The URL and fields are short-lived sensitive credentials. Do not log, persist, alter, or put them in tickets. Third, after storage succeeds, pass the returned token to the documented OpenSea API endpoint. Do not use the token before the storage upload succeeds. Pass the token as allowlist_file_token to POST /api/v2/drops/{slug}/allowlist/validate, which returns a different token. That second token is the one a stage takes: send it as allowlist_file_token on the stage in POST /api/v2/drops/{slug}, or the uploaded file is never attached to anything. The presigned upload expires about a minute after it is issued, so request the context and upload in one go rather than requesting it ahead of time. Calls POST /api/v2/drops/{slug}/allowlist. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:drops. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_drops_by_slug_allowlist_validateWRITE

Validate drop allowlist Validate an uploaded drop allowlist file token. Calls POST /api/v2/drops/{slug}/allowlist/validate. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:drops. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_drops_by_slug_cross_chain_mintWRITE

Build cross-chain mint transactions for a drop Returns an ordered list of transactions for minting a drop using a token on another chain. The payer signs each transaction in order, and the minter receives the NFT. After submission, pass receipt_request to POST /api/v2/transactions/receipt and poll until the status is terminal. Calls POST /api/v2/drops/{slug}/cross_chain_mint.

api
opensea_post_api_v2_drops_by_slug_itemsWRITE

Build transaction data for creating a SelfMint drop item Returns ready-to-sign onchain transaction data for creating a SelfMint drop item. The caller is responsible for signing and broadcasting the transaction. Calls POST /api/v2/drops/{slug}/items. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:drops. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_drops_by_slug_items_mediaWRITE

Upload drop item media This response starts a three-step upload flow. First, request this context from OpenSea. Second, call the returned method at the returned URL. For POST, add every fields entry unchanged as a multipart text field, then add a file part containing the bytes. The file part must be last. Let the HTTP library generate the multipart boundary; do not set the overall multipart Content-Type header yourself. POST storage uploads normally return 204. For PUT, upload the raw bytes, use only headers explicitly required by the endpoint, and expect 200. Treat any 2xx storage response as success. The URL and fields are short-lived sensitive credentials. Do not log, persist, alter, or put them in tickets. Third, after storage succeeds, pass the returned token to the documented OpenSea API endpoint. Do not use the token before the storage upload succeeds. Pass each token as media_token to POST /api/v2/drops/{slug}/items or POST /api/v2/drops/{slug}/prereveal-item, as media_tokens to POST /api/v2/drops/{slug}/items/media/save, or as media_token to PUT /api/v2/drops/{slug}/items/{token_id}. Calls POST /api/v2/drops/{slug}/items/media. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:drops. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_drops_by_slug_items_media_saveWRITE

Save drop item media Persist drop item media references. Calls POST /api/v2/drops/{slug}/items/media/save. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:drops. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_drops_by_slug_mintWRITE

Build mint transaction data for a drop Returns ready-to-sign transaction data for minting tokens from a drop. The caller is responsible for signing and submitting the transaction. No wallet authentication is required — only an API key. The minter address in the request body determines who will receive the tokens. Stage selection is handled automatically by the backend — if multiple stages are active, the first eligible stage is used. Calls POST /api/v2/drops/{slug}/mint.

api
opensea_post_api_v2_drops_by_slug_prereveal_itemWRITE

Save prereveal drop item Save prereveal drop item metadata. Calls POST /api/v2/drops/{slug}/prereveal-item. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:drops. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_drops_deployWRITE

Build deploy contract transaction data Returns ready-to-sign transaction data for deploying a new NFT drop contract. The caller is responsible for signing and submitting the transaction. Calls POST /api/v2/drops/deploy.

api
opensea_post_api_v2_listings_actionsWRITE

Get listing creation actions Returns the blockchain actions (approvals + Seaport order signing payload) needed to list one or more NFTs. This eliminates the need to construct Seaport orders manually. Calls POST /api/v2/listings/actions.

api
opensea_post_api_v2_listings_cross_chain_fulfillment_dataWRITE

Fulfill a listing using a different token Get fulfillment data to buy one or more listings using a token on a different chain or a different token on the same chain. Supports cross-chain purchases and same-chain token swaps via the Relay protocol. Returns an ordered list of transactions to execute. Listings on EVM chains only; a listing on any other chain is rejected. Calls POST /api/v2/listings/cross_chain_fulfillment_data.

api
opensea_post_api_v2_listings_fulfillment_actionsWRITE

Get listing fulfillment actions Returns the blockchain actions needed to fulfill a listing, for listings that cannot be fulfilled with Seaport calldata. A Solana listing is always fulfilled this way, because it settles through an onchain program rather than a signed order. The listing is addressed by the same identifier the get-order endpoint uses. Calls POST /api/v2/listings/fulfillment/actions.

api
opensea_post_api_v2_listings_fulfillment_dataWRITE

Fulfill a listing Retrieve all the information, including signatures, needed to fulfill a listing directly onchain. Calls POST /api/v2/listings/fulfillment_data.

api
opensea_post_api_v2_listings_sweepWRITE

Sweep buy items from a collection Buy up to N items from a collection using any payment token, including cross-chain. If a requested item becomes unavailable, the system can automatically substitute it with the next cheapest listing from the same collection (enabled by default). Returns an ordered list of transactions to execute. Collections on EVM chains only; a collection on any other chain is rejected. Calls POST /api/v2/listings/sweep.

api
opensea_post_api_v2_nfts_batchWRITE

Get NFTs by identifiers Retrieve multiple NFTs in a single request by providing a list of identifiers (chain, contract address, and token ID). Not-found NFTs are silently omitted from the response. Calls POST /api/v2/nfts/batch.

api
opensea_post_api_v2_offersWRITE

Create a criteria offer Create a criteria offer to purchase any NFT in a collection or which matches the specified trait. For trait offers where the Build Offer endpoint returns identifierOrCriteria '0', use that value directly — trait matching is validated server-side at fulfillment time rather than via onchain merkle proof. Calls POST /api/v2/offers.

api
opensea_post_api_v2_offers_actionsWRITE

Get offer creation actions Returns the blockchain actions needed to offer on an NFT, the offer-side counterpart of the listing actions endpoint. On EVM chains these are payment approvals followed by a Seaport order to sign, which the signature endpoints then accept. On Solana the actions instead carry an unsigned bid transaction to sign and submit onchain; there is no order to post back to OpenSea afterwards. Calls POST /api/v2/offers/actions.

api
opensea_post_api_v2_offers_buildWRITE

Build a criteria offer Build a portion of a criteria offer including the consideration item, zone, and zone hash needed to post an offer. For trait offers on supported collections, the identifierOrCriteria in the returned consideration will be '0' (no merkle root computation needed). For other collections, a computed merkle root is returned. When identifierOrCriteria is '0', the encodedTokenIds field is informational only and not required for constructing the onchain order. Calls POST /api/v2/offers/build.

api
opensea_post_api_v2_offers_fulfillment_actionsWRITE

Get offer fulfillment actions Returns the blockchain actions a seller needs to accept an offer, for offers that cannot be accepted with Seaport calldata. A Solana offer is always accepted this way, because it settles through an onchain program rather than a signed order. The offer is addressed by the same identifier the get-order endpoint uses, and a criteria offer additionally requires a consideration naming the token being sold. On Solana two fields on the returned action are load-bearing. When `partially_signed_transaction` is present the transaction is already cosigned: append your signature to those exact bytes and broadcast them, and do not rebuild the message from `instructions`, which invalidates the cosigner signature. When `sponsored_fee_payer` is present an OpenSea relayer pays the fee and your wallet is only a co-signer; when it is absent you pay your own fee. Accepting fewer units than an offer's remaining quantity leaves the offer live, so a successful fill does not imply the offer is consumed. Calls POST /api/v2/offers/fulfillment/actions.

api
opensea_post_api_v2_offers_fulfillment_dataWRITE

Fulfill an offer Retrieve all the information, including signatures, needed to fulfill an offer directly onchain. For trait offers with identifierOrCriteria '0', the server validates that the specified token matches the offer's trait criteria before generating fulfillment data. Calls POST /api/v2/offers/fulfillment_data.

api
opensea_post_api_v2_orders_by_chain_by_protocol_listingsWRITE

Create a listing List a single NFT (ERC721 or ERC1155) for sale on the OpenSea marketplace. Calls POST /api/v2/orders/{chain}/{protocol}/listings.

api
opensea_post_api_v2_orders_by_chain_by_protocol_offersWRITE

Create an item offer Create an offer to purchase a single NFT (ERC721 or ERC1155). Calls POST /api/v2/orders/{chain}/{protocol}/offers.

api
opensea_post_api_v2_orders_chain_by_chain_protocol_by_protocol_address_by_order_hash_cancelWRITE

Cancel an order Offchain cancel a single order, offer or listing, by its order hash when protected by the SignedZone. Protocol and Chain are required to prevent hash collisions. Please note cancellation is only assured if a fulfillment signature was not vended prior to cancellation. Calls POST /api/v2/orders/chain/{chain}/protocol/{protocol_address}/{order_hash}/cancel.

api
opensea_post_api_v2_orders_chain_by_chain_protocol_by_protocol_address_by_order_hash_cancel_actionsWRITE

Get order cancellation actions Returns the blockchain actions needed to cancel an order onchain, for orders that cannot be cancelled offchain through the cancel endpoint. A Solana order is always cancelled this way, because it lives onchain from the moment it is created. The order is addressed by the same identifier the get-order endpoint uses, and only its maker may cancel it. Calls POST /api/v2/orders/chain/{chain}/protocol/{protocol_address}/{order_hash}/cancel/actions.

api
opensea_post_api_v2_profile_imagesWRITE

Upload a profile image Set contentType in the context request to the exact MIME type of the image bytes. This response starts a three-step upload flow. First, request this context from OpenSea. Second, call the returned method at the returned URL. For POST, add every fields entry unchanged as a multipart text field, then add a file part containing the bytes. The file part must be last. Let the HTTP library generate the multipart boundary; do not set the overall multipart Content-Type header yourself. POST storage uploads normally return 204. For PUT, upload the raw bytes, use only headers explicitly required by the endpoint, and expect 200. Treat any 2xx storage response as success. The URL and fields are short-lived sensitive credentials. Do not log, persist, alter, or put them in tickets. Third, after storage succeeds, pass the returned token to the documented OpenSea API endpoint. Do not use the token before the storage upload succeeds. Pass the token as the matching profile image field in PATCH /api/v2/profile. Calls POST /api/v2/profile/images. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:profile. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_profile_nft_pfpWRITE

Set NFT profile picture Set an onchain NFT owned by the authenticated wallet as its verified profile picture. The NFT must be from a verified collection and owned by one of the account's wallets. Calls POST /api/v2/profile/nft-pfp. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:profile. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_profile_shelvesWRITE

Create a profile shelf Create a shelf for the authenticated wallet. Calls POST /api/v2/profile/shelves. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:profile. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_profile_usernameWRITE

Claim a profile username Claim a username for the authenticated wallet. Calls POST /api/v2/profile/username. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:profile. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_saved_toolsWRITE

[Beta] Save a tool Save a registered tool for the authenticated account. Calls POST /api/v2/saved-tools. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:tools. This tool refuses with that reason rather than calling the provider.

api
opensea_post_api_v2_swap_executeWRITE

Execute a token swap Get executable transactions for token-to-token swaps. Supports same-chain and cross-chain swaps with multiple from/to assets. Calls POST /api/v2/swap/execute.

api
opensea_post_api_v2_tokens_batchWRITE

Get tokens by contract identifiers Retrieve multiple tokens in a single request by providing a list of contract identifiers (chain and address). Not-found tokens are silently omitted from the response. Calls POST /api/v2/tokens/batch.

api
opensea_post_api_v2_tools_usageWRITE

[Beta] Report tool usage (metrics only) [Beta] Report verified tool usage for metrics and analytics purposes only. Supports verification_type: eip3009_authorization (free tools, identity proof) or x402_settlement (paid tools, onchain USDC payment verification). Identify the tool by providing tool_chain_id + tool_registry_address (an onchain EVM address, or x402_bazaar / x402_bankr for x402 tools) + tool_onchain_id, or alternatively just tool_endpoint (the tool's canonical URL). This endpoint does NOT trigger any onchain transactions. This endpoint is under active development and may change without notice. Calls POST /api/v2/tools/usage.

api
opensea_post_api_v2_transactions_receiptWRITE

Get transaction receipt Get the receipt/status for a submitted transaction. Works for all transaction types including listing fulfillments, cross-chain buys, sweeps, offer fulfillments, and token swaps. Poll this endpoint after submitting transactions to check completion status. Calls POST /api/v2/transactions/receipt.

api
opensea_post_api_v2_watchlistWRITE

Add a watchlist entry Add an NFT, token, collection, or perpetual to the authenticated account's watchlist. Calls POST /api/v2/watchlist. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:favorites. This tool refuses with that reason rather than calling the provider.

api
opensea_put_api_v2_accounts_agentWRITE

Declare the authenticated account an agent Self-reported and not OpenSea verification. Independent of ownership: an agent nobody owns is valid. Calls PUT /api/v2/accounts/agent. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:wallets. This tool refuses with that reason rather than calling the provider.

api
opensea_put_api_v2_accounts_wallets_by_wallet_privateWRITE

Make a registered wallet private Hides the wallet's public account linkage, including agent ownership relationships. Calls PUT /api/v2/accounts/wallets/{wallet}/private. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:wallets. This tool refuses with that reason rather than calling the provider.

api
opensea_put_api_v2_drops_by_slug_items_by_token_idWRITE

Build transaction data for updating a SelfMint drop item Returns ready-to-sign onchain transaction data for updating a SelfMint drop item. The caller is responsible for signing and broadcasting the transaction. Calls PUT /api/v2/drops/{slug}/items/{token_id}. NOT AVAILABLE on an API-key connection: OpenSea also requires a wallet JWT carrying write:drops. This tool refuses with that reason rather than calling the provider.

api

Put OpenSea behind one governed endpoint.

Same permissions, same audit trail, whatever else you connect next.