The Arkade API layer is composed of two complementary services through which clients interact with the Arkade Operator:
  • ArkService – the primary access point for real-time coordination, batch participation, intent management, and transaction submission. It enables clients to register intents, coordinate multi-party batches, sign with MuSig2, and spend VTXOs without relinquishing control of their funds. Event-driven endpoints like GetEventStream and GetTransactionsStream let clients stay synchronized with network activity.
  • IndexerService – optimized for historical queries, auditing, and VTXO tree navigation. It provides functions for VTXO lifecycle analysis, chain tracing, sweep monitoring, and connector tree exploration. Use it to reconstruct offchain state, audit fund flows, and handle data-rich workflows.
These two core services handle all client interactions including batch processing, VTXO management, transaction submission, and data querying. All endpoints are available over gRPC and REST, follow consistent RESTful conventions with pagination, and use BIP322-compatible signatures for secure proof of ownership. Builders can combine real-time streams with script-level subscriptions for reactive applications, and rely on indexer queries for lifecycle analysis and efficient VTXO tree lookups (GetVtxoTreeLeaves vs. full GetVtxoTree). Batch sweep tracking provides visibility into operator claims and onchain unroll scenarios. The complete interfaces for both services are defined in the protocol buffer specification and are available in the buf.build registry:
TL;DR. Use ArkService for coordination, signing, and settlement and use IndexerService for querying, tracing, and auditing.