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

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.1.0.tar.gz (11.0 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.1.0-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for hypermid-1.1.0.tar.gz
Algorithm Hash digest
SHA256 0395a808e90a81985700c21815f8580632fccdf8bea058f32d10f3390489600e
MD5 944305e5d96b9b44426fdb4fe3e69acb
BLAKE2b-256 fb5baae18c8e309ba6d6384414984dcebf75357de493b9cf59052fb222375b0d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hypermid-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.2 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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 07402bb2e9e8260e625375dabce6e984c0c3cd92af9ac256720dbc131e46391c
MD5 7156dfe0e5f42b5bcb0c5481c5d556d2
BLAKE2b-256 5784adda068a1f47a368f62603a9d946f00f4fc7911532cb54a738494efe1458

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