IOTA Protocol Weekly - Apr 14, 2026
Apr 14, 2026: Testnet update introduces protocol version 24, Starfish consensus, and major changes to Indexer and REST API.

Protocol version 24 is live on the IOTA testnet with the v1.21.1-beta release. This is a prerelease, so don't use it in production. Key updates include the switch to the Starfish consensus protocol, major changes to the Indexer, and the complete removal of the REST API.
Protocol Updates
- Protocol version 24 is now active on the testnet.
- Starfish consensus is implemented across all networks (#11073).
- RocksDB updated to version 0.24.0 (#11044).
- Added
tx_data_bytesandsigning_digesttoAuthContext, along with a signingIntentrepresentation in the IOTA framework (#11039).
Node Changes
- Authority gRPC metrics renamed for consistency:
inflight_grpc→authority_grpc_inflight_requestsgrpc_requests→authority_grpc_requestsgrpc_request_latency→authority_grpc_request_latency(#11126).
Indexer Updates
- Transaction object changes now include unwrapped objects. A new
run-backfill object-changes-unwrappedcommand is available to populate historical data (#10988). - New
iota_tryGetObjectBeforeVersionJSON-RPC endpoint returns BCS-encoded object bytes if found (#11040). - Pruning mechanism now uses per-table watermarks, allowing independent pruning per table. Retention policies can be configured with the
--pruning-config-pathargument (#10875).- Optimistic indexing now uses object-based dependency checks, making it more resilient to pruning.
--optimistic-pruner-batch-sizeCLI argument deprecated and no longer used.- RPC reads detect pruned data ranges and return appropriate errors.
- More aggressive autovacuuming configured for pruned tables. Ensure sufficient
shm_size(e.g.,2g) for Postgres containers.
- Execution errors now propagate correctly to transaction response
errorsfields (#11116). - Migration required to remove the redundant
objects_ownerindex from the Indexer. Update your Indexer and restart the writer service (#11120). IndexerExecutor::run()is removed as part of theCheckpointReaderV1deprecation. Migrate toIndexerExecutor::run_with_config()usingCheckpointReaderV2. Theremote_store_urlparameter now accepts aRemoteUrlinstead of aString(#11185).
JSON-RPC Updates
- Transaction responses now include unwrapped objects in the
objectChangesfield (#10988). effectiveCommissionRateadded toIotaValidatorSummaryiniotax_getLatestSystemStateV2, aligning with IIP8 (#10473).
GraphQL Updates
effectiveCommissionRatenow available in validator query paths, per IIP8. For protocol versions before 20,effectiveCommissionRate = commissionRate(#10412).- Migration required for the Indexer also affects GraphQL. Update and restart the service (#11120).
CLI Changes
- Deprecated commands removed:
iota start,iota genesis,iota genesis-ceremony, andiota fire-drill(#10866). - TLS enabled for validator connections over gRPC (#10989).
gRPC Changes
- TLS now supported for validator connections (#10989).
REST API Removal
- The REST API is fully removed in this release. All users must transition to gRPC APIs (#10566).
This update brings significant changes to the IOTA testnet, particularly with the adoption of the Starfish consensus protocol and the removal of the REST API. Operators and developers should ensure their nodes and tools are updated to avoid disruptions. For full details, check the release notes.
Sources: v1.21.1-beta, v1.21.0-alpha, v1.20.1
Tagged with:
Written by IOTA Staking Team
Expert in IOTA staking, blockchain technology, and DeFi strategies. Providing actionable insights to help you maximize your staking rewards.
Related Articles

IOTA Protocol Weekly - Apr 21, 2026
Apr 21, 2026: Protocol v24 ships on testnet with Starfish consensus, REST API removal, and new gRPC metrics.

IOTA Protocol Weekly - Apr 28, 2026
Apr 28, 2026: IOTA Protocol v1.22.0-beta introduces protocol version 25, removes zkLogin, updates JSON-RPC, GraphQL, CLI, and gRPC.

IOTA Protocol Weekly - Apr 7, 2026
Apr 7, 2026: Testnet v1.20.0-rc introduces Protocol v23, gRPC migration, and new indexer features. REST API deprecated in v1.21.
