Skip to content
Logo

Mure API

This documentation covers the Mure Protocol v2 API. Looking for the v1 docs? They live at v1.docs.mure.app.

Mure is an intent-based protocol for on-chain finance. Instead of assembling transactions, estimating gas, and comparing bridge routes yourself, you describe the outcome you want — a transfer, a same-chain swap, a cross-chain bridge, or a combination — and Mure resolves the optimal execution path.

Mure calls these outcomes meta-intents: a single request can express a desired end state without prescribing every intermediate step. The protocol handles routing, quoting, fee estimation, and transaction construction; the caller only submits the resulting transaction.

What Mure does today

Transfers, swaps, and bridges

The /transfers endpoint is the entry point for value movement. It moves one asset from a source address to a destination, either on the same chain or across chains. For cross-chain movement, Mure aggregates bridge providers and selects the best available route automatically.

Mure also handles same-chain swaps: specify a different input and output asset — for example, sending USDC and receiving ETH — and the transfer pipeline routes through available liquidity, settling both legs as a single intent. Both modes support programmable calldata forwarding, so a transfer can deliver tokens and encoded instructions to a recipient contract in one transaction.

Transfer, swap, and bridge share the same intent lifecycle and the same simulate-before-submit flow. You learn one model and use it for all three.

Accounts and privacy

Every endpoint accepts addresses in the readable CAIP-10 format: a portable format that bundles a CAIP-2 chain identifier and a wallet address as a single string (for example, eip155:1:0x3164ed5B9D37Ac9619aC5895CA33F308aB02a053 for an Ethereum address). A single identifier tells you the chain and the account, so you reduce the set of parameters.

The protocol's authorizer key signs every intent and produces a cryptographically valid transaction that anyone can submit. The wallet that broadcasts the transaction to the network never needs to match the asset source. In practice, an institution can custody assets at one address while a separate operational wallet submits transactions, or a service provider can sponsor gas for users without ever touching the users' funds. Read more in Unified Entrypoint.

Developer on-ramp

The @mure/sdk wraps the protocol into a single TypeScript call. A developer configures a wallet adapter, creates a client, and calls transfer. The SDK handles API intent creation and on-chain transaction submission in one round trip, with the option to break it into two steps for quote selection.

Base URL

https://api.mure.app/v2

Authentication

All requests need an API key in the x-api-key header. Keys start with sk_test_ (testnet) or sk_live_ (mainnet).

GET /transfers
x-api-key: sk_test_a1b2c3...

Read Authentication for how to get a key, environment binding, errors, and rate limits.

Conventions

  • All timestamps are ISO 8601 (UTC).
  • All amounts are strings to preserve precision.
  • Chain identifiers follow CAIP-2 format (e.g. eip155:1).
  • Fees are expressed in basis points (bps) where applicable.
  • Errors return a structured problem object conforming to RFC 9457.

Endpoint Summary

MethodPathDescription
POST/transfersSubmit a new transfer, swap, or bridge intent.
GET/transfersList transfer intents.
GET/transfers/:idGet a transfer intent by ID.
GET/tokensGet a list of all supported token aliases.
GET/healthHealth check.

SDK

Prefer a TypeScript client? The @mure/sdk package wraps the API and a blockchain adapter into one interface. Start with the Getting Started guide or browse the Client and Adapters references.