aid: iota url: https://raw.githubusercontent.com/api-evangelist/iota/refs/heads/main/apis.yml name: IOTA type: Index image: https://kinlane-productions.s3.amazonaws.com/apis-json/apis-json-logo.jpg tags: - Blockchain - Distributed Ledger - Web3 - DeFi - Cryptocurrency - Move - Tangle description: IOTA is an open-source distributed ledger technology built to bring real-world applications on-chain. It is the first internet-scale programmable blockchain platform powered by the Move programming language with horizontal scaling, feeless transactions, and a unique parallel transaction processing model. IOTA exposes a JSON-RPC 2.0 API over HTTP and a GraphQL RPC for querying objects, checkpoints, transactions, coins, events, and on-chain state on Mainnet, Testnet, and Devnet networks. The platform targets trade and supply chains, decentralized finance, digital identity, real-world asset tokenization, and product lifecycle management. created: '2026-06-14' modified: '2026-06-14' specificationVersion: '0.19' apis: - aid: iota:iota-coin-query-api name: IOTA Coin Query API tags: - Coins - Balances - Tokens - Blockchain humanURL: https://docs.iota.org/iota-api-ref baseURL: https://api.mainnet.iota.cafe:443 properties: - url: https://docs.iota.org/iota-api-ref type: Documentation - url: https://docs.iota.org/iota-api-ref type: APIReference - url: openapi/iota-jsonrpc-openapi.json type: OpenAPI description: Coin and balance-oriented JSON-RPC methods for the IOTA blockchain. Provides iotax_getAllBalances to retrieve total balances across all coin types for an address, iotax_getAllCoins to list all coin objects owned by an address, iotax_getBalance for the balance of a specific coin type, iotax_getCirculatingSupply to retrieve circulating supply summary, iotax_getCoinMetadata for token symbol, decimals and description, iotax_getCoins to list coins of a specific type with pagination, and iotax_getTotalSupply to return the total supply for a given coin type. - aid: iota:iota-read-api name: IOTA Read API tags: - Objects - Checkpoints - Transactions - Events - Blockchain humanURL: https://docs.iota.org/iota-api-ref baseURL: https://api.mainnet.iota.cafe:443 properties: - url: https://docs.iota.org/iota-api-ref type: Documentation - url: https://docs.iota.org/iota-api-ref type: APIReference - url: openapi/iota-jsonrpc-openapi.json type: OpenAPI description: Core read-oriented JSON-RPC methods for the IOTA blockchain. Includes iota_getChainIdentifier to retrieve the genesis checkpoint digest, iota_getCheckpoint and iota_getCheckpoints for checkpoint data with pagination, iota_getObject and iota_multiGetObjects for on-chain object retrieval, iota_getTransactionBlock for individual transaction details, iota_multiGetTransactionBlocks for batch transaction lookup, iota_getEvents to query on-chain events by filter criteria, iota_getProtocolConfig for current protocol configuration, iota_getLatestCheckpointSequenceNumber, iota_getTotalTransactionBlocks, and iota_tryGetPastObject for historical object state. - aid: iota:iota-extended-api name: IOTA Extended API tags: - Epochs - Metrics - Events - Dynamic Fields - Indexer - Blockchain humanURL: https://docs.iota.org/iota-api-ref baseURL: https://indexer.mainnet.iota.cafe:443 properties: - url: https://docs.iota.org/iota-api-ref type: Documentation - url: https://docs.iota.org/iota-api-ref type: APIReference - url: openapi/iota-jsonrpc-openapi.json type: OpenAPI description: Advanced indexer-exclusive JSON-RPC methods for the IOTA blockchain. Provides address metrics via iotax_getAllEpochAddressMetrics and iotax_getLatestAddressMetrics, epoch data via iotax_getCurrentEpoch and iotax_getEpochMetrics, dynamic field access via iotax_getDynamicFieldObject and iotax_getDynamicFields, network metrics, event and transaction queries with rich filtering, IOTA Names (SuiNS-compatible) resolution, and validator APY data. Approximately 18 methods available exclusively through the indexer endpoint rather than full nodes. - aid: iota:iota-governance-read-api name: IOTA Governance Read API tags: - Governance - Validators - Staking - System State - Blockchain humanURL: https://docs.iota.org/iota-api-ref baseURL: https://api.mainnet.iota.cafe:443 properties: - url: https://docs.iota.org/iota-api-ref type: Documentation - url: https://docs.iota.org/iota-api-ref type: APIReference - url: openapi/iota-jsonrpc-openapi.json type: OpenAPI description: Governance and staking JSON-RPC methods for the IOTA blockchain. Includes iotax_getCommitteeInfo to retrieve committee data for specific epochs, iotax_getLatestIotaSystemState to return the full system state object, iotax_getReferenceGasPrice for the current network gas price, iotax_getStakes and iotax_getStakesByIds to query staking positions, iotax_getValidatorsApy for validator annual percentage yields, iotax_getCheckpointSummaryByEpoch, and additional epoch-scoped governance queries totaling 9 methods. - aid: iota:iota-move-utils-api name: IOTA Move Utils API tags: - Move - Smart Contracts - Modules - Introspection - Blockchain humanURL: https://docs.iota.org/iota-api-ref baseURL: https://api.mainnet.iota.cafe:443 properties: - url: https://docs.iota.org/iota-api-ref type: Documentation - url: https://docs.iota.org/iota-api-ref type: APIReference - url: openapi/iota-jsonrpc-openapi.json type: OpenAPI description: Move language introspection JSON-RPC methods for the IOTA blockchain. Provides iota_getMoveFunctionArgTypes to retrieve function argument types for a Move function, iota_getNormalizedMoveFunction for full function structure including visibility and generics, iota_getNormalizedMoveModule to retrieve a normalized Move module, iota_getNormalizedMoveModulesByPackage to list all modules in a package, and iota_getNormalizedMoveStruct for detailed struct representation including fields and abilities. These 5 methods enable smart contract introspection and on-chain ABI discovery. - aid: iota:iota-transaction-builder-api name: IOTA Transaction Builder API tags: - Transactions - Transfer - Staking - Construction - Blockchain humanURL: https://docs.iota.org/iota-api-ref baseURL: https://api.mainnet.iota.cafe:443 properties: - url: https://docs.iota.org/iota-api-ref type: Documentation - url: https://docs.iota.org/iota-api-ref type: APIReference - url: openapi/iota-jsonrpc-openapi.json type: OpenAPI description: Transaction construction JSON-RPC methods for the IOTA blockchain. Includes methods for building unsigned transactions such as unsafe_transferObject, unsafe_transferIota, unsafe_payIota, unsafe_pay, unsafe_payAllIota, unsafe_moveCall for Move function invocations, unsafe_requestAddStake and unsafe_requestWithdrawStake for staking operations, and additional batch transfer and publish methods. These 16 unsafe transaction builder methods produce serialized unsigned transactions requiring subsequent signing and submission via the Write API. - aid: iota:iota-write-api name: IOTA Write API tags: - Transactions - Execution - Simulation - Submit - Blockchain humanURL: https://docs.iota.org/iota-api-ref baseURL: https://api.mainnet.iota.cafe:443 properties: - url: https://docs.iota.org/iota-api-ref type: Documentation - url: https://docs.iota.org/iota-api-ref type: APIReference - url: openapi/iota-jsonrpc-openapi.json type: OpenAPI description: Transaction execution and simulation JSON-RPC methods for the IOTA blockchain. Provides iota_executeTransactionBlock to submit a signed transaction to the network and return results, iota_dryRunTransactionBlock to simulate a transaction without broadcasting and receive full effects and events, iota_devInspectTransactionBlock for development inspection of transaction execution with arbitrary gas budgets, and iotax_estimateGasBudget for gas budget estimation. These 4 methods handle all state-mutating operations on the IOTA network. - aid: iota:iota-graphql-api name: IOTA GraphQL API tags: - GraphQL - Queries - Objects - Transactions - Blockchain humanURL: https://docs.iota.org/developer/references/iota-api baseURL: https://graphql.mainnet.iota.cafe properties: - url: https://docs.iota.org/developer/references/iota-api type: Documentation - url: https://graphql.mainnet.iota.cafe type: APIReference - url: graphql/iota-graphql.md type: GraphQL description: GraphQL RPC interface for the IOTA blockchain, providing an alternative to the JSON-RPC API. Supports querying transaction blocks, objects, checkpoints, events, and on-chain state using GraphQL query syntax. Available on all IOTA networks including Mainnet at graphql.mainnet.iota.cafe, Testnet at graphql.testnet.iota.cafe, and Devnet at graphql.devnet.iota.cafe. Cursor-based pagination is supported for list operations. - aid: iota:iota-evm-json-rpc-api name: IOTA EVM JSON-RPC API tags: - EVM - Ethereum - Smart Contracts - L2 - Blockchain humanURL: https://docs.iota.org/developer/iota-evm/references/json-rpc-spec baseURL: https://json-rpc.evm.testnet.iotaledger.net properties: - url: https://docs.iota.org/developer/iota-evm/references/json-rpc-spec type: Documentation - url: https://docs.iota.org/developer/iota-evm/references/openapi/ethereum-json-rpc type: APIReference - url: openapi/iota-evm-wasp-openapi.yaml type: OpenAPI description: Ethereum-compatible JSON-RPC API for the IOTA EVM Layer 2. Supports standard Ethereum JSON-RPC methods enabling Solidity smart contract deployment and interaction via EVM-compatible tooling including Hardhat, Foundry, and MetaMask. Provides HTTP and WebSocket transports for state queries and event subscriptions. The IOTA EVM is a WASP-based smart contract chain with an Ethereum-compatible interface for cross-chain interoperability and developer migration from EVM ecosystems. common: - type: Website url: https://www.iota.org/ - type: Portal url: https://docs.iota.org/ - type: Documentation url: https://docs.iota.org/ - type: GettingStarted url: https://docs.iota.org/developer/getting-started - type: APIReference url: https://docs.iota.org/iota-api-ref title: IOTA JSON-RPC API Reference - type: Authentication url: https://docs.iota.org/developer/network-overview title: Public endpoints require no API key; load balanced and rate limited - type: SDK url: https://docs.iota.org/developer/ts-sdk/ title: IOTA TypeScript SDK - type: SDK url: https://github.com/iotaledger/iota/tree/develop/crates/iota-sdk title: IOTA Rust SDK - type: SDK url: https://docs.iota.org/developer/references/iota-api title: IOTA GraphQL RPC - type: CLI url: https://docs.iota.org/developer/getting-started title: IOTA CLI - type: GitHubOrganization url: https://github.com/iotaledger - type: GitHubRepository url: https://github.com/iotaledger/iota title: IOTA Core Repository - type: Explorer url: https://explorer.iota.org/ title: IOTA Explorer (Mainnet) - type: Faucet url: https://faucet.testnet.iota.cafe title: IOTA Testnet Faucet - type: Blog url: https://blog.iota.org/ - type: NetworkOverview url: https://docs.iota.org/developer/network-overview title: IOTA Network Overview (Mainnet, Testnet, Devnet) - type: TermsOfService url: https://www.iota.org/privacy-policy - type: PrivacyPolicy url: https://www.iota.org/privacy-policy - type: RateLimits url: rate-limits/iota-rate-limits.yml - type: Plans url: plans/iota-plans.yml - type: FinOps url: finops/iota-finops.yml - type: OpenAPI url: openapi/iota-jsonrpc-openapi.json title: IOTA JSON-RPC OpenAPI 3.0 (75 methods, derived from OpenRPC) - type: OpenAPI url: openapi/iota-evm-wasp-openapi.yaml title: IOTA EVM WASP Node REST API OpenAPI 3.0 (59 paths) - type: OpenRPC url: openapi/iota-openrpc.json title: IOTA JSON-RPC OpenRPC Specification (source) - type: JSONLDContext url: json-ld/iota-context.jsonld title: IOTA JSON-LD Context - type: UseCases data: - name: DeFi Application Backend description: Query coin balances, object states, and submit transactions for decentralized finance apps on IOTA - name: Supply Chain Traceability description: Track real-world assets and product lifecycle data on the IOTA distributed ledger - name: Digital Identity description: Manage decentralized identifiers (DIDs) and verifiable credentials on-chain - name: Real-World Asset Tokenization description: Tokenize and manage traditional financial assets bridged to IOTA using Move smart contracts - name: Blockchain Analytics description: Query checkpoints, transaction blocks, and events for real-time analytics and data pipelines - name: Wallet Development description: Check coin balances, fetch transaction history, build and submit signed transactions - name: Smart Contract Development description: Introspect Move modules, deploy packages, and interact with on-chain programs via Move Utils - name: EVM dApp Migration description: Deploy existing Solidity smart contracts on IOTA EVM Layer 2 using standard Ethereum tooling - type: Features data: - name: JSON-RPC 2.0 over HTTP description: Standard JSON-RPC 2.0 protocol over HTTP POST to IOTA full nodes and indexers - name: GraphQL RPC description: GraphQL interface as an alternative to JSON-RPC for flexible on-chain data queries - name: Three Network Environments description: Mainnet (production), Testnet (testing), and Devnet (development) environments with faucets - name: Move Smart Contracts description: Asset-oriented Move programming language for type-safe, resource-oriented smart contracts - name: EVM Layer 2 description: Ethereum-compatible EVM Layer 2 chain enabling Solidity contract deployment and tooling reuse - name: No Authentication Required description: Public endpoints are open and require no API key for development and testing use - name: Cursor-based Pagination description: All list endpoints support cursor-based pagination for efficient data traversal - name: BCS Binary Encoding description: Binary Canonical Serialization (BCS) support alongside JSON for efficient data transfer - type: GraphQL url: graphql/iota-graphql.md title: IOTA GraphQL RPC Schema and Docs maintainers: - FN: Kin Lane email: kin@apievangelist.com