Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.arcium.com/llms.txt

Use this file to discover all available pages before exploring further.

Overview

Arcium offers two TS libraries, which provide tools and utilities for interacting with Arcium and the MXEs (MPC eXecution Environments) deployed on it. Client library @arcium-hq/client:
  • Handle secret sharing and encryption of inputs
  • Submit confidential transactions
  • Manage callbacks for computation results
Reader library @arcium-hq/reader:
  • Read MXE data
  • View computations for a given MXE
Generally speaking, the client library is used to build & invoke computations on MXEs and then track their outputs, while the reader library is more so to track the overall network. To get a better idea of its place in the general architecture, we highly recommend taking a look at the computation lifecycle.

Installation

Client library:
npm install @arcium-hq/client
Reader library:
npm install @arcium-hq/reader

API reference

For complete TypeScript SDK documentation and API reference for the client and reader libraries, visit: ts.arcium.com/api

Reclaiming computation rent

Every queued computation allocates a Solana account that holds rent. After the computation lifecycle completes, you should reclaim that rent.

After successful finalization

Once a computation reaches Finalized status (after the callback executes), use claimComputationRent to close the account and reclaim the rent:
import { claimComputationRent } from '@arcium-hq/client';

const sig = await claimComputationRent(
    provider,           // AnchorProvider
    clusterOffset,      // cluster the computation was queued on
    computationOffset,  // BN - the offset used when queueing
);
The signer must be the original payer who queued the computation. Using a different signer will fail with InvalidAuthority.
Computations that remain in Queued status expire after 180 slots (~72 seconds). Expired computations can be reclaimed using the reclaimExpiredComputationFee instruction, which also returns any fees from the fee pool. See the API reference for details.

Using the client

Prefer a more step-by-step approach? Get started with learning how to encrypt inputs for confidential transactions.

What’s next?

Encrypting Inputs

Step-by-step guide to encrypting data for confidential transactions.

Tracking Callbacks

Await and process computation results.

Full API Reference

Complete TypeScript SDK documentation.