Moralis · Agentic Access

Moralis Agentic Access

x-agentic-access generated

Moralis exposes 117 API operations that an AI agent could call, of which 10 are state-changing ‘acting’ operations. This is a recommended x-agentic-access execution contract — the scope, audience, consequence tier, short-lived token constraints, and escalation each action should carry before it is handed to an autonomous agent.

By consequence: 107 read and 10 write.

Contracts are classified heuristically from the provider’s OpenAPI and refresh on every APIs.io network build; audience is bound per deployment. The model follows Curity’s Access Intelligence (apidays Munich 2026). Browse every provider’s agent contracts at agentic-access.apis.io.

Web3BlockchainData APIStreamsIndexing
Operations: 117 Acting: 10 Human-in-the-loop: 0 Method: generated

By consequence

read 107 write 10

Source

Agentic Access

Raw ↑
generated: '2026-07-15'
method: generated
source: openapi/moralis-evm-api-openapi.json
description: Recommended x-agentic-access execution contracts, classified heuristically from
  the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind
  audience per deployment. See research/curity/agentic-governance/.
summary:
  operations: 117
  by_action_class:
    connected: 107
    acting: 10
  by_consequence:
    read: 107
    write: 10
  human_in_the_loop_required: 0
operations:
- path: /{address}/nft
  method: get
  operationId: getWalletNFTs
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/getMultipleNFTs
  method: post
  operationId: getMultipleNFTs
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /{address}/nft/transfers
  method: get
  operationId: getWalletNFTTransfers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /{address}/nft/collections
  method: get
  operationId: getWalletNFTCollections
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}
  method: get
  operationId: getContractNFTs
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/unique-owners
  method: get
  operationId: getUniqueOwnersByCollection
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/owners
  method: get
  operationId: getNFTOwners
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/transfers
  method: get
  operationId: getNFTContractTransfers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/nfts-by-traits
  method: post
  operationId: getNFTByContractTraits
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /nft/{address}/traits
  method: get
  operationId: getNFTTraitsByCollection
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/traits/paginate
  method: get
  operationId: getNFTTraitsByCollectionPaginate
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/traits/resync
  method: get
  operationId: resyncNFTRarity
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/trades
  method: get
  operationId: getNFTTrades
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/{token_id}/trades
  method: get
  operationId: getNFTTradesByToken
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/nfts/trades
  method: get
  operationId: getNFTTradesByWallet
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/metadata
  method: get
  operationId: getNFTContractMetadata
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/metadata
  method: post
  operationId: getNFTBulkContractMetadata
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /nft/{address}/{token_id}
  method: get
  operationId: getNFTMetadata
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/{token_id}/transfers
  method: get
  operationId: getNFTTransfers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/{token_id}/owners
  method: get
  operationId: getNFTTokenIdOwners
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/sync
  method: put
  operationId: syncNFTContract
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /nft/{address}/{token_id}/metadata/resync
  method: get
  operationId: reSyncMetadata
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/price
  method: get
  operationId: getNFTContractSalePrices
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/{token_id}/price
  method: get
  operationId: getNFTSalePrices
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/{address}/price
  method: get
  operationId: getTokenPrice
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/{address}/swaps
  method: get
  operationId: getSwapsByTokenAddress
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/{tokenAddress}/holders
  method: get
  operationId: getTokenHolders
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/{tokenAddress}/holders/historical
  method: get
  operationId: getHistoricalTokenHolders
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/prices
  method: post
  operationId: getMultipleTokenPrices
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /erc20/{token_address}/owners
  method: get
  operationId: getTokenOwners
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /{address}/erc20
  method: get
  operationId: getWalletTokenBalances
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /{address}/erc20/transfers
  method: get
  operationId: getWalletTokenTransfers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/metadata
  method: get
  operationId: getTokenMetadata
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /tokens/categories
  method: get
  operationId: getTokenCategories
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/metadata/symbols
  method: get
  operationId: getTokenMetadataBySymbol
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/{address}/transfers
  method: get
  operationId: getTokenTransfers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /{address}/balance
  method: get
  operationId: getNativeBalance
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/balances
  method: get
  operationId: getNativeBalancesForAddresses
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/approvals
  method: get
  operationId: getWalletApprovals
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/history
  method: get
  operationId: getWalletHistory
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/tokens
  method: get
  operationId: getWalletTokenBalancesPrice
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/net-worth
  method: get
  operationId: getWalletNetWorth
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /{address}
  method: get
  operationId: getWalletTransactions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /{address}/verbose
  method: get
  operationId: getWalletTransactionsVerbose
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /transaction/{transaction_hash}
  method: get
  operationId: getTransaction
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /transaction/{transaction_hash}/verbose
  method: get
  operationId: getTransactionVerbose
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /block/{block_number_or_hash}
  method: get
  operationId: getBlock
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /latestBlockNumber/{chain}
  method: get
  operationId: getLatestBlockNumber
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /dateToBlock
  method: get
  operationId: getDateToBlock
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /{address}/function
  method: post
  operationId: runContractFunction
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /web3/version
  method: get
  operationId: web3ApiVersion
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /info/endpointWeights
  method: get
  operationId: endpointWeights
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /resolve/{address}/reverse
  method: get
  operationId: resolveAddress
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /resolve/{domain}
  method: get
  operationId: resolveDomain
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /resolve/{address}/domain
  method: get
  operationId: resolveAddressToDomain
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /resolve/ens/{domain}
  method: get
  operationId: resolveENSDomain
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /{token0_address}/{token1_address}/price
  method: get
  operationId: getPairPrice
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /{pair_address}/reserves
  method: get
  operationId: getPairReserves
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /{token0_address}/{token1_address}/pairAddress
  method: get
  operationId: getPairAddress
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /market-data/erc20s/top-tokens
  method: get
  operationId: getTopERC20TokensByMarketCap
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /market-data/erc20s/top-movers
  method: get
  operationId: getTopERC20TokensByPriceMovers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /market-data/nfts/top-collections
  method: get
  operationId: getTopNFTCollectionsByMarketCap
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /market-data/nfts/hottest-collections
  method: get
  operationId: getHottestNFTCollectionsByTradingVolume
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /market-data/global/market-cap
  method: get
  operationId: getTopCryptoCurrenciesByMarketCap
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /market-data/global/volume
  method: get
  operationId: getTopCryptoCurrenciesByTradingVolume
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /contracts-review
  method: post
  operationId: reviewContracts
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /wallets/{address}/defi/summary
  method: get
  operationId: getDefiSummary
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/defi/{protocol}/positions
  method: get
  operationId: getDefiPositionsByProtocol
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/defi/positions
  method: get
  operationId: getDefiPositionsSummary
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/chains
  method: get
  operationId: getWalletActiveChains
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/stats
  method: get
  operationId: getWalletStats
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/stats
  method: get
  operationId: getNFTCollectionStats
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/floor-price
  method: get
  operationId: getNFTFloorPriceByContract
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/{token_id}/floor-price
  method: get
  operationId: getNFTFloorPriceByToken
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /nft/{address}/floor-price/historical
  method: get
  operationId: getNFTHistoricalFloorPriceByContract
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/{address}/stats
  method: get
  operationId: getTokenStats
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /discovery/tokens
  method: post
  operationId: getFilteredTokens
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /discovery/tokens/rising-liquidity
  method: get
  operationId: getRisingLiquidityTokens
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /discovery/tokens/buying-pressure
  method: get
  operationId: getBuyingPressureTokens
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /discovery/tokens/solid-performers
  method: get
  operationId: getSolidPerformersTokens
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /discovery/tokens/experienced-buyers
  method: get
  operationId: getExperiencedBuyersTokens
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /discovery/tokens/risky-bets
  method: get
  operationId: getRiskyBetsTokens
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /discovery/tokens/blue-chip
  method: get
  operationId: getBlueChipTokens
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /discovery/tokens/top-gainers
  method: get
  operationId: getTopGainersTokens
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /discovery/tokens/top-losers
  method: get
  operationId: getTopLosersTokens
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /discovery/tokens/trending
  method: get
  operationId: getTrendingTokens
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /discovery/token
  method: get
  operationId: getDiscoveryToken
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/profitability/summary
  method: get
  operationId: getWalletProfitabilitySummary
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/profitability
  method: get
  operationId: getWalletProfitability
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/{address}/top-gainers
  method: get
  operationId: getTopProfitableWalletPerToken
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /tokens/search
  method: get
  operationId: searchTokens
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /entities/search
  method: get
  operationId: searchEntities
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /entities/{entityId}
  method: get
  operationId: getEntity
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /entities/categories
  method: get
  operationId: getEntityCategories
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /entities/categories/{categoryId}
  method: get
  operationId: getEntitiesByCategory
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /pairs/{address}/ohlcv
  method: get
  operationId: getPairCandlesticks
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /pairs/{address}/stats
  method: get
  operationId: getPairStats
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/{token_address}/pairs
  method: get
  operationId: getTokenPairs
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/{token_address}/pairs/stats
  method: get
  operationId: getAggregatedTokenPairStats
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/exchange/{exchangeName}/new
  method: get
  operationId: getNewTokensByExchange
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/exchange/{exchangeName}/bonding
  method: get
  operationId: getBondingTokensByExchange
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/exchange/{exchangeName}/graduated
  method: get
  operationId: getGraduatedTokensByExchange
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /erc20/{tokenAddress}/bondingStatus
  method: get
  operationId: getTokenBondingStatus
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/swaps
  method: get
  operationId: getSwapsByWalletAddress
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /wallets/{address}/insight
  method: get
  operationId: getWalletInsight
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /pairs/{address}/swaps
  method: get
  operationId: getSwapsByPairAddress
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /pairs/{address}/snipers
  method: get
  operationId: getSnipersByPairAddress
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /volume/chains
  method: get
  operationId: getVolumeStatsByChain
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /volume/categories
  method: get
  operationId: getVolumeStatsByCategory
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /volume/timeseries
  method: get
  operationId: getTimeSeriesVolume
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /volume/timeseries/{categoryId}
  method: get
  operationId: getTimeSeriesVolumeByCategory
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /tokens/analytics/timeseries
  method: post
  operationId: getTimeSeriesTokenAnalytics
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /tokens/trending
  method: get
  operationId: getTrendingTokensV2
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /tokens/{tokenAddress}/analytics
  method: get
  operationId: getTokenAnalytics
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /tokens/{tokenAddress}/score
  method: get
  operationId: getTokenScore
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /tokens/{tokenAddress}/score/historical
  method: get
  operationId: getHistoricalTokenScore
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /tokens/analytics
  method: post
  operationId: getMultipleTokenAnalytics
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required

Work with this as data

Every access contract here is available over the APIs.io API and to AI agents over MCP. Agentic Access is not yet its own endpoint on the v1 API. Reach it through catalog search and the tag graph, or the MCP server.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for agentic access

3 MCP tools reach this
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
Search the catalog
curl "https://apis.io/api/v1/search?q=moralis-agentic-access&limit=10"
Everything under a tag
curl "https://apis.io/api/v1/tags/moralis-agentic-access"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.