> ## Documentation Index
> Fetch the complete documentation index at: https://www.helius.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# SDK Helius TypeScript pour Agents

> Guide complet du SDK Helius TypeScript pour agents IA — méthodes Solana sécurisées pour l'API DAS, transactions, Sender, webhooks, et compression ZK.

Le [SDK Helius TypeScript](https://github.com/helius-labs/helius-sdk) fournit des méthodes sécurisées pour toutes les API Helius, ce qui en fait le moyen le plus rapide pour les agents d'interagir avec Solana.

* **Package** : `helius-sdk` (npm / pnpm / yarn)
* **Version** : 2.x (utilise `@solana/kit`, non `@solana/web3.js`)
* **Runtime** : Tout environnement d'exécution JavaScript — navigateurs, Deno, Bun, environnements edge (Cloudflare Workers, Vercel Edge), Node.js 20+
* **TypeScript** : 5.8+ (définitions de types complètes incluses)
* **Licence** : ISC

## Installation

```bash theme={"system"}
npm install helius-sdk
```

## Démarrage Rapide

```typescript theme={"system"}
import { createHelius } from "helius-sdk";

const helius = createHelius({
  apiKey: "YOUR_API_KEY",
  network: "mainnet", // or "devnet"
});

// Get all NFTs and tokens owned by a wallet
const assets = await helius.getAssetsByOwner({
  ownerAddress: "86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY",
  page: 1,
  limit: 50,
});

// Get transaction history (with token account activity)
const txs = await helius.getTransactionsForAddress([
  "86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY",
  { limit: 100, transactionDetails: "full", filters: { tokenAccounts: "balanceChanged" } },
]);

// Send a transaction via Helius Sender (ultra-low latency)
const sig = await helius.tx.sendTransactionWithSender({
  instructions: [transferInstruction],
  signers: [walletSigner],
  region: "US_EAST",
});
```

## Options du Client

```typescript theme={"system"}
const helius = createHelius({
  apiKey: "YOUR_API_KEY",       // Required for webhooks, enhanced txs, wallet API
  network: "mainnet",           // "mainnet" (default) or "devnet"
  baseUrl: "https://custom..",  // Override RPC URL (optional)
  rebateAddress: "wallet",      // Wallet for RPC rebates (optional)
  userAgent: "my-agent/1.0",   // Sent as X-Helius-Client header (optional)
});
```

## Espaces de Noms

Toutes les méthodes sont accessibles via le client `helius`. Les méthodes de l'API DAS et les méthodes RPC standard de Solana sont disponibles directement sur `helius.*`. Les autres fonctionnalités sont organisées en espaces de noms :

| Espace de Noms | Accès                                                                 | Objectif                                                         |
| -------------- | --------------------------------------------------------------------- | ---------------------------------------------------------------- |
| API DAS        | `helius.getAsset()`, `helius.getAssetsByOwner()`, etc.                | Interroger les NFTs, tokens, actifs compressés                   |
| RPC V2         | `helius.getTransactionsForAddress()`, `helius.getProgramAccountsV2()` | RPC amélioré avec pagination et filtres                          |
| Transactions   | `helius.tx.*`                                                         | Transactions intelligentes et Helius Sender                      |
| Amélioré       | `helius.enhanced.*`                                                   | Analyser les transactions en format lisible                      |
| Webhooks       | `helius.webhooks.*`                                                   | Créer et gérer des abonnements webhook                           |
| WebSockets     | `helius.ws.*`                                                         | Flux de données blockchain en temps réel                         |
| Staking        | `helius.stake.*`                                                      | Staker SOL au validateur Helius                                  |
| Compression ZK | `helius.zk.*`                                                         | Comptes et preuves compressés                                    |
| API Wallet     | `helius.wallet.*`                                                     | Soldes, historique, recherches d'identité                        |
| RPC Standard   | `helius.getBalance()`, `helius.getSlot()`, etc.                       | Toutes les méthodes RPC standard de Solana via proxy             |
| RPC Brut       | `helius.raw`                                                          | Accès direct au client Rpc sous-jacent `@solana/kit`             |
| Auth           | `import { makeAuthClient } from "helius-sdk/auth/client"`             | Inscription des agents et gestion des clés API (import autonome) |

## Inscription Programmée (Module Auth)

Le module d'authentification est un import autonome — il n’est pas sur le principal `HeliusClient`. Utilisez-le pour les flux d'inscription des agents programmés.

```typescript theme={"system"}
import { makeAuthClient } from "helius-sdk/auth/client";

const auth = makeAuthClient();

// Hosted-link signup (returns a paymentUrl the user opens in a browser):
const link = await auth.signup({
  secretKey: keypair.secretKey,
  plan: "agent",
  email: "you@example.com",
  firstName: "Ada",
  lastName: "Lovelace",
});
// link: { kind: "payment_required", jwt, refId, walletAddress, paymentLink: { paymentUrl, ... } }

// Or pay USDC directly from the local keypair and provision in one call:
const result = await auth.signupAndPay({
  secretKey: keypair.secretKey,
  plan: "agent",
  email: "you@example.com",
  firstName: "Ada",
  lastName: "Lovelace",
});
// result.kind: "completed" | "pending" | "expired" | "failed" | "already_subscribed" | "upgrade_required"
// On "completed": result has { jwt, walletAddress, projectId, apiKey, endpoints, txSignature }
```

## Approfondissements

<CardGroup cols={2}>
  <Card title="Meilleures Pratiques" icon="lightbulb" href="/docs/fr/agents/typescript-sdk/best-practices">
    Modèles recommandés, pagination, erreurs communes et gestion des erreurs
  </Card>

  <Card title="Référence API" icon="book" href="/docs/fr/agents/typescript-sdk/api-reference">
    Liste complète des méthodes pour chaque espace de noms
  </Card>
</CardGroup>

## Ressources

<CardGroup cols={2}>
  <Card title="Dépôt GitHub" icon="github" href="https://github.com/helius-labs/helius-sdk">
    Code source, exemples, et suivi des problèmes
  </Card>

  <Card title="Exemples de Code" icon="code" href="https://github.com/helius-labs/helius-sdk/tree/main/examples">
    Exemples fonctionnels pour chaque méthode organisés par espace de noms
  </Card>

  <Card title="Docs API SDK (TypeDoc)" icon="book" href="https://helius-labs.github.io/helius-sdk/">
    Documentation complète de l'API générée à partir du code source
  </Card>

  <Card title="Guide de Migration (1.x à 2.x)" icon="arrow-right" href="https://github.com/helius-labs/helius-sdk/blob/main/MIGRATION.md">
    Mise à niveau de @solana/web3.js à @solana/kit
  </Card>
</CardGroup>
