agiprolabs/claude-trading-skills

helius-api

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

First seen Mar 21, 2026

Installation

$ npx skills add agiprolabs/claude-trading-skills --skill helius-api

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from agiprolabs/claude-trading-skills · top by installs.

npx skills add agiprolabs/claude-trading-skills

Browse all from agiprolabs/claude-trading-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 350
License LICENSE.md
Default branch main
Open issues 3
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 7,941 B
  • docs SUMMARY.md 3,768 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 329 installs

SKILL.md

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 — free tier available (1M credits/mo, no card required).

export HELIUS_API_KEY="your-api-key"

2. Install Dependencies

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

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

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

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

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

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
ADDLIQUIDITY / REMOVELIQUIDITY LP operations
NFTSALE / NFTMINT / NFT_LISTING NFT marketplace
STAKESOL / UNSTAKESOL Staking
CREATEORDER / FILLORDER 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

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

# 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.

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