Skip to main content

Cross-chain swap, bridge & fiat on-ramp SDK — 90+ chains across EVM, Solana, Bitcoin, NEAR, Sui, Tron, TON. Anonymous-tier ready (no API key required).

Project description

hypermid

PyPI version PyPI downloads Python versions License

Cross-chain swap, bridge & fiat on-ramp in one SDK. 90+ chains across EVM, Solana, Bitcoin, NEAR, Sui, Tron, TON, XRP and Doge. Multi-ecosystem wallet balances. Anonymous tier — no API key required to start.

pip install hypermid
from hypermid import Hypermid

hm = Hypermid()                        # no key, no signup
chains = hm.get_chains()
print(len(chains.chains))              # → 89

Or async:

import asyncio
from hypermid import AsyncHypermid

async def main():
    async with AsyncHypermid() as hm:
        chains = await hm.get_chains()
        print(len(chains.chains))

asyncio.run(main())

Why Hypermid

  • One SDK, every ecosystem — EVM + Solana + Bitcoin + NEAR + Sui + Tron + TON + XRP + Doge through a single client. No per-chain branching in your code.
  • Zero-setup integration — anonymous tier works out of the box. Sign up only when you need partner fee splits or higher rate limits.
  • Routed across the best providers — LI.FI, NEAR Intents and Hypermid SuperSwap (PulseChain native) routed automatically per pair, with USDC bridge fallback.
  • Built-in fiat on-ramp — RampNow integration, same SDK.
  • Multi-chain balancesget_balances(address) returns priced holdings + dust classification across every ecosystem the address touches.
  • Sync + async — both APIs ship in the same package (Hypermid, AsyncHypermid). Type-checked with pydantic v2.

Quick start — a swap end-to-end

from hypermid import Hypermid

hm = Hypermid()

# 1. Quote
quote = hm.get_quote(
    from_chain=1,
    from_token="0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",  # USDC on Ethereum
    from_amount="1000000",                                     # 1 USDC (6 decimals)
    to_chain=8453,
    to_token="0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",    # USDC on Base
    from_address="0xYourWallet",
    to_address="0xYourWallet",
)

# 2. Execute (returns the on-chain tx to sign + submit)
exe = hm.execute(
    from_chain=1,
    from_token="0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
    from_amount="1000000",
    to_chain=8453,
    to_token="0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    from_address="0xYourWallet",
    to_address="0xYourWallet",
)

# 3. Status (once your wallet submits the tx)
status = hm.get_status(tx_hash="0x...", chain_id=1)

Wallet balances across every ecosystem

hm = Hypermid()
b = hm.get_balances("0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045")
print(f"Total: ${b.total_balance_usd}")          # → Total: $25058.33
print(f"Chains with holdings: {len(b.balances)}") # → 61

Webhook verification

from hypermid import verify_webhook_signature

ok = verify_webhook_signature(
    payload=request.body,
    signature=request.headers["X-Hypermid-Signature"],
    timestamp=request.headers["X-Hypermid-Timestamp"],
    secret=os.environ["HYPERMID_WEBHOOK_SECRET"],
)
if not ok:
    return Response(status=401)

Authentication

The API is open by default — every endpoint works without authentication, so you can integrate, test, and ship without a signup.

An API key is only needed if you're a partner with negotiated terms (custom fee splits, fee discounts, volume tiers, higher rate limits, webhook events scoped to your traffic):

from hypermid import Hypermid, HypermidConfig
import os

hm = Hypermid(HypermidConfig(api_key=os.environ["HYPERMID_API_KEY"]))

Apply for a partner account at partner.hypermid.io.

Documentation

Full reference: https://docs.hypermid.io

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hypermid-1.0.0.tar.gz (10.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hypermid-1.0.0-py3-none-any.whl (12.9 kB view details)

Uploaded Python 3

File details

Details for the file hypermid-1.0.0.tar.gz.

File metadata

  • Download URL: hypermid-1.0.0.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for hypermid-1.0.0.tar.gz
Algorithm Hash digest
SHA256 8487e864fbb8f0f6a80a92afcbcef3c8748a8bf9cecead8d8dbaebe0a4a74391
MD5 5b8c3cede198cc163bac51b5c4091181
BLAKE2b-256 e06efaeaacf5039048e92cf3a0f326fc52f1facbd0aeac8fb6bb569ed78f3605

See more details on using hashes here.

File details

Details for the file hypermid-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: hypermid-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 12.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for hypermid-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cb0103ef598c27948ba0fdbfba401c645deb9da3895d1750a528cad5559ad247
MD5 868d830d6b937ecd265b4958a1e8bce8
BLAKE2b-256 3bd0dd68c82e4bad022c5311a29e238011c6f1b1b0b1d39907961a726522fba9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page