helius-api

Enhanced Solana RPC with DAS API, parsed transactions, webhooks, and priority fee estimation via Helius

7 stars

Best use case

helius-api is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Enhanced Solana RPC with DAS API, parsed transactions, webhooks, and priority fee estimation via Helius

Teams using helius-api should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/helius-api/SKILL.md --create-dirs "https://raw.githubusercontent.com/agiprolabs/claude-trading-skills/main/skills/helius-api/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/helius-api/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How helius-api Compares

Feature / Agenthelius-apiStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Enhanced Solana RPC with DAS API, parsed transactions, webhooks, and priority fee estimation via Helius

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Helius API — Enhanced Solana RPC

Helius extends standard Solana RPC with parsed transaction history, a unified Digital Asset Standard (DAS) API, webhooks, and priority fee estimation. Essential for wallet analysis, token metadata, and transaction monitoring.

## Quick Start

### 1. Get an API Key

Sign up at [dashboard.helius.dev](https://dashboard.helius.dev) — free tier available (1M credits/mo, no card required).

```bash
export HELIUS_API_KEY="your-api-key"
```

### 2. Install Dependencies

```bash
uv pip install httpx python-dotenv
```

### 3. Two Base URLs

Helius uses different base URLs depending on the API:

| API | Base URL | Protocol |
|-----|----------|----------|
| RPC / DAS / Priority Fees | `https://mainnet.helius-rpc.com/?api-key=KEY` | JSON-RPC 2.0 |
| Enhanced Transactions / Webhooks | `https://api-mainnet.helius-rpc.com/v0/...?api-key=KEY` | REST |

## DAS API (Digital Asset Standard)

Unified interface for querying all Solana digital assets — fungible tokens, NFTs, compressed NFTs, Token-2022.

### Get Asset Metadata

```python
import httpx, os

API_KEY = os.environ["HELIUS_API_KEY"]
RPC_URL = f"https://mainnet.helius-rpc.com/?api-key={API_KEY}"

resp = httpx.post(RPC_URL, json={
    "jsonrpc": "2.0", "id": 1,
    "method": "getAsset",
    "params": {
        "id": "So11111111111111111111111111111111111111112",  # wSOL
        "options": {"showFungible": True}
    }
})
asset = resp.json()["result"]
# asset.content.metadata.name, asset.token_info.decimals, etc.
```

### Get All Assets for a Wallet

```python
resp = httpx.post(RPC_URL, json={
    "jsonrpc": "2.0", "id": 1,
    "method": "getAssetsByOwner",
    "params": {
        "ownerAddress": "WALLET_ADDRESS",
        "page": 1,
        "limit": 100,
        "displayOptions": {
            "showFungible": True,
            "showNativeBalance": True,
            "showZeroBalance": False,
        }
    }
})
assets = resp.json()["result"]["items"]
```

### Search Assets with Filters

```python
resp = httpx.post(RPC_URL, json={
    "jsonrpc": "2.0", "id": 1,
    "method": "searchAssets",
    "params": {
        "ownerAddress": "WALLET_ADDRESS",
        "tokenType": "fungible",      # fungible | nonFungible | all
        "page": 1,
        "limit": 50,
    }
})
```

### All DAS Methods

| Method | Purpose | Credits |
|--------|---------|---------|
| `getAsset` | Single asset metadata | 10 |
| `getAssetBatch` | Up to 1,000 assets | 10 |
| `getAssetsByOwner` | All assets for a wallet | 10 |
| `getAssetsByGroup` | Assets by collection | 10 |
| `getAssetsByCreator` | Assets by creator | 10 |
| `getAssetsByAuthority` | Assets by update authority | 10 |
| `searchAssets` | Multi-criteria filtered search | 10 |
| `getAssetProof` | Merkle proof (compressed NFTs) | 10 |
| `getAssetProofBatch` | Batch proofs | 10 |
| `getSignaturesForAsset` | Tx history for an asset | 10 |
| `getNftEditions` | All editions of a master | 10 |
| `getTokenAccounts` | Token accounts by mint/owner | 10 |

See `references/das_api.md` for complete field documentation.

## Enhanced Transactions API

Transforms raw Solana transactions into human-readable structured data with categorized types and sources.

### Parse a Transaction

```python
API_URL = f"https://api-mainnet.helius-rpc.com/v0/transactions?api-key={API_KEY}"

resp = httpx.post(API_URL, json={
    "transactions": ["SIGNATURE_HERE"],
})
parsed = resp.json()[0]
# parsed["type"]        → "SWAP"
# parsed["source"]      → "JUPITER"
# parsed["description"] → "User swapped 1 SOL for 150 USDC on Jupiter"
# parsed["tokenTransfers"] → [{mint, amount, from, to}, ...]
# parsed["nativeTransfers"] → [{from, to, amount}, ...]
```

### Get Parsed Transaction History for a Wallet

```python
url = f"https://api-mainnet.helius-rpc.com/v0/addresses/{wallet}/transactions"
resp = httpx.get(url, params={
    "api-key": API_KEY,
    "limit": 50,
    "type": "SWAP",  # optional filter
})
history = resp.json()
```

### Transaction Types (151+)

Key types for trading analysis:

| Type | Meaning |
|------|---------|
| `SWAP` | DEX swap |
| `TRANSFER` | Token/SOL transfer |
| `ADD_LIQUIDITY` / `REMOVE_LIQUIDITY` | LP operations |
| `NFT_SALE` / `NFT_MINT` / `NFT_LISTING` | NFT marketplace |
| `STAKE_SOL` / `UNSTAKE_SOL` | Staking |
| `CREATE_ORDER` / `FILL_ORDER` | Limit orders |

### Transaction Sources (50+)

`JUPITER`, `RAYDIUM`, `ORCA`, `MAGIC_EDEN`, `TENSOR`, `MARINADE`, `METEORA`, `PHANTOM`, etc.

See `references/enhanced_transactions.md` for full type/source enums.

## Webhooks

Real-time notifications for on-chain events — no polling required.

### Create a Webhook

```python
url = f"https://api-mainnet.helius-rpc.com/v0/webhooks?api-key={API_KEY}"
resp = httpx.post(url, json={
    "webhookURL": "https://your-server.com/helius-hook",
    "transactionTypes": ["SWAP", "TRANSFER"],
    "accountAddresses": ["WalletAddress1", "WalletAddress2"],
    "webhookType": "enhanced",
    "authHeader": "your-secret-token",
})
webhook_id = resp.json()["webhookID"]
```

### Webhook Types

| Type | Data Format | Filtering |
|------|------------|-----------|
| `enhanced` | Parsed (like Enhanced Transactions API) | By transaction type + account |
| `raw` | Unprocessed transaction data | By account only (lower latency) |
| `discord` | Formatted messages to Discord channel | By transaction type + account |

### Manage Webhooks

```python
# List all
webhooks = httpx.get(f"{url}?api-key={API_KEY}").json()

# Update
httpx.put(f"{url}/{webhook_id}?api-key={API_KEY}", json={
    "webhookURL": "https://new-url.com/hook",
    "transactionTypes": ["SWAP"],
    "accountAddresses": ["NewWallet..."],
    "webhookType": "enhanced",
})

# Delete
httpx.delete(f"{url}/{webhook_id}?api-key={API_KEY}")
```

Up to 100,000 addresses per webhook (via API). 1 credit per event delivered.

## Priority Fee API

Estimate optimal priority fees for transaction landing.

```python
resp = httpx.post(RPC_URL, json={
    "jsonrpc": "2.0", "id": 1,
    "method": "getPriorityFeeEstimate",
    "params": [{
        "accountKeys": ["JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4"],
        "options": {
            "includeAllPriorityFeeLevels": True,
            "recommended": True,
        }
    }]
})
fees = resp.json()["result"]
# fees["priorityFeeEstimate"]  → recommended fee (microlamports/CU)
# fees["priorityFeeLevels"]    → {min, low, medium, high, veryHigh, unsafeMax}
```

| Level | Percentile | Use Case |
|-------|-----------|----------|
| `min` | 0-20th | Non-urgent |
| `low` | 20-40th | Standard transfers |
| `medium` | 40-60th | DEX swaps (recommended default) |
| `high` | 60-80th | Time-sensitive |
| `veryHigh` | 80-95th | Critical timing |
| `unsafeMax` | 100th | Emergency only |

Fee in microlamports/CU. Total priority fee = microlamports/CU × compute units consumed.

## Pricing & Rate Limits

| Plan | Price/mo | Credits | RPC req/s | DAS req/s |
|------|----------|---------|-----------|-----------|
| Free | $0 | 1M | 10 | 2 |
| Developer | $49 | 10M | 50 | 10 |
| Business | $499 | 100M | 200 | 50 |
| Professional | $999 | 200M | 500 | 100 |

**Credit costs**: Standard RPC = 1, DAS = 10, Enhanced Txns = 100, Webhooks = 1/event. Additional credits: $5/million.

## Files

### References
- `references/das_api.md` — Complete DAS API field reference and response schemas
- `references/enhanced_transactions.md` — Transaction types, sources, and response structure
- `references/webhooks.md` — Webhook setup, management, and event handling
- `references/error_handling.md` — Rate limits, error codes, and retry strategies

### Scripts
- `scripts/wallet_analysis.py` — Fetch wallet assets and parsed transaction history
- `scripts/token_lookup.py` — Look up token metadata and holder information via DAS

Related Skills

yield-analysis

7
from agiprolabs/claude-trading-skills

DeFi yield evaluation including fee APR, real vs nominal yield, net APY after costs, and yield sustainability analysis

yellowstone-grpc

7
from agiprolabs/claude-trading-skills

Real-time Solana transaction and account streaming via Yellowstone gRPC (Geyser plugin)

whale-tracking

7
from agiprolabs/claude-trading-skills

Large wallet monitoring, accumulation and distribution detection, and smart money signal generation for Solana tokens

wash-sale-detection

7
from agiprolabs/claude-trading-skills

Wash sale detection under 2025 US crypto rules with 61-day window monitoring, disallowed loss tracking, and safe re-entry countdown

wallet-profiling

7
from agiprolabs/claude-trading-skills

Behavioral classification, performance analysis, and trading style detection for Solana wallets

walk-forward-validation

7
from agiprolabs/claude-trading-skills

Walk-forward validation framework for trading strategies and ML models with time-series-aware splits, overfit detection, and regime-aware validation

volatility-modeling

7
from agiprolabs/claude-trading-skills

Volatility estimation, forecasting, and regime classification using GARCH, EWMA, realized volatility, and volatility cones

vectorbt

7
from agiprolabs/claude-trading-skills

High-performance vectorized backtesting with parameter optimization, portfolio simulation, and rich performance metrics

trading-visualization

7
from agiprolabs/claude-trading-skills

Professional trading charts including candlesticks, equity curves, drawdowns, correlation heatmaps, and return distributions

trade-journal

7
from agiprolabs/claude-trading-skills

Structured trade logging, performance review, behavioral pattern detection, and strategy attribution for systematic improvement

trade-accounting

7
from agiprolabs/claude-trading-skills

Double-entry bookkeeping for trading operations with ledger management, P&L statements, balance sheets, and cash flow reporting

token-holder-analysis

7
from agiprolabs/claude-trading-skills

Token holder distribution, concentration metrics, insider detection, and supply analysis for Solana tokens