IOTA
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.
9 APIs
8 Features
BlockchainDistributed LedgerWeb3DeFiCryptocurrencyMoveTangle
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_getAllCo...
Core read-oriented JSON-RPC methods for the IOTA blockchain. Includes iota_getChainIdentifier to retrieve the genesis checkpoint digest, iota_getCheckpoint and iota_getCheckpoin...
Advanced indexer-exclusive JSON-RPC methods for the IOTA blockchain. Provides address metrics via iotax_getAllEpochAddressMetrics and iotax_getLatestAddressMetrics, epoch data v...
Governance and staking JSON-RPC methods for the IOTA blockchain. Includes iotax_getCommitteeInfo to retrieve committee data for specific epochs, iotax_getLatestIotaSystemState t...
Move language introspection JSON-RPC methods for the IOTA blockchain. Provides iota_getMoveFunctionArgTypes to retrieve function argument types for a Move function, iota_getNorm...
Transaction construction JSON-RPC methods for the IOTA blockchain. Includes methods for building unsigned transactions such as unsafe_transferObject, unsafe_transferIota, unsafe...
Transaction execution and simulation JSON-RPC methods for the IOTA blockchain. Provides iota_executeTransactionBlock to submit a signed transaction to the network and return res...
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 sta...
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-compat...
JSON-RPC 2.0 over HTTP
Standard JSON-RPC 2.0 protocol over HTTP POST to IOTA full nodes and indexers
GraphQL RPC
GraphQL interface as an alternative to JSON-RPC for flexible on-chain data queries
Three Network Environments
Mainnet (production), Testnet (testing), and Devnet (development) environments with faucets
Move Smart Contracts
Asset-oriented Move programming language for type-safe, resource-oriented smart contracts
EVM Layer 2
Ethereum-compatible EVM Layer 2 chain enabling Solidity contract deployment and tooling reuse
No Authentication Required
Public endpoints are open and require no API key for development and testing use
Cursor-based Pagination
All list endpoints support cursor-based pagination for efficient data traversal
BCS Binary Encoding
Binary Canonical Serialization (BCS) support alongside JSON for efficient data transfer
DeFi Application Backend
Query coin balances, object states, and submit transactions for decentralized finance apps on IOTA
Supply Chain Traceability
Track real-world assets and product lifecycle data on the IOTA distributed ledger
Digital Identity
Manage decentralized identifiers (DIDs) and verifiable credentials on-chain
Real-World Asset Tokenization
Tokenize and manage traditional financial assets bridged to IOTA using Move smart contracts
Blockchain Analytics
Query checkpoints, transaction blocks, and events for real-time analytics and data pipelines
Wallet Development
Check coin balances, fetch transaction history, build and submit signed transactions
Smart Contract Development
Introspect Move modules, deploy packages, and interact with on-chain programs via Move Utils
EVM dApp Migration
Deploy existing Solidity smart contracts on IOTA EVM Layer 2 using standard Ethereum tooling
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
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
maintainers:
- FN: Kin Lane
email: [email protected]