Skip to main content

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 balances — get_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

Release files for hypermid 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hypermid 1.1.0
File Size Uploaded
hypermid-1.1.0.tar.gz 11.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hypermid 1.1.0
File Interpreter ABI Platform
hypermid-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 24.1 kB

Release files / hypermid-1.1.0.tar.gz

Download URL hypermid-1.1.0.tar.gz
Size 11.0 kB
Tags Source
SHA-256 checksum
How to use checksums
0395a808e90a81985700c21815f8580632fccdf8bea058f32d10f3390489600e
BLAKE2b-256 checksum
How to use checksums
fb5baae18c8e309ba6d6384414984dcebf75357de493b9cf59052fb222375b0d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Release files / hypermid-1.1.0-py3-none-any.whl

Download URL hypermid-1.1.0-py3-none-any.whl
Size 13.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
07402bb2e9e8260e625375dabce6e984c0c3cd92af9ac256720dbc131e46391c
BLAKE2b-256 checksum
How to use checksums
5784adda068a1f47a368f62603a9d946f00f4fc7911532cb54a738494efe1458
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page