Documentation

The TRDEFI Liquidity API: a public, read-first interface over the live non-custodial liquidity catalogue — and a prepare-only write path for integrators holding a key.

v1 https://yield.trdefi.com the API never signs

✓ Reading is free — no key

Every GET /api/* endpoint is open to anyone: catalogue, positions, stats, quotes, badges. No signup, no key, no account.

🔑 Creating a position needs a key

To initiate a trade — create or swap a position through the API — you need an API key, issued after a short review. It prepares unsigned transactions; your own wallet signs them.

Request API access →

Start here

API reference

The endpoints, the response shape, the rate-limit headers and the error codes. Includes a copy-paste quickstart.

Read · 5 min

Request an API key →

Needed to create or swap a position through the API. Reading never needs one. Keys are issued after a short review.

Write path · key required

OpenAPI 3.1

The machine-readable contract. Import it into Postman, Insomnia, or generate a typed client.

Contract

Method of Statement

What the API is — and what it explicitly is not. Data sources, freshness, the custody model, scope boundaries and the service level we commit to.

Foundation · read first

General Rules

Authentication, rate limits, idempotency and retries, error handling, webhooks, versioning, deprecation and acceptable use.

Operating rules

Overall Scheme

Every endpoint with schemas and examples, the prepare-only write path, the fee, the integration flow and the configuration surface.

Reference · integration

llms.txt

A machine-readable index of this documentation, for AI agents and code assistants.

For agents

Quickstart

# Catalogue totals (no key required)
curl -s https://yield.trdefi.com/api/stats | head -c 400

# Which chains are live right now
curl -s https://yield.trdefi.com/api/chains

# An indicative quote for one strategy — nothing is signed
curl -s "https://yield.trdefi.com/api/quote?hash=<strategyHash>&chain=ethereum&amount=1000000"

# Read your own quota before a burst
curl -sD - -o /dev/null https://yield.trdefi.com/api/stats | grep -i '^ratelimit'

To trade, add a key

Reading needs no credential. Creating a position does — request one above. The write path returns unsigned transactions; your own wallet signs them.

# 1 · prepare (returns UNSIGNED transactions + the fee breakdown)
curl -s -X POST https://yield.trdefi.com/v1/positions \
  -H "Authorization: Bearer $TRDEFI_KEY" \
  -H "Idempotency-Key: $(uuidgen)" -H "Content-Type: application/json" \
  -d '{"chain":"arc","wallet":"0xYourOwnWallet","checkBalances":true,
       "deposits":[{"symbol":"USDC","amount":"1000000"},{"symbol":"EURC","amount":"900000"}]}'

# 2 · sign each transaction with your own wallet, in order, then broadcast
#     — we never sign, never hold a key, never broadcast

# 3 · track it (positionId == the strategyHash from step 1)
curl -s https://yield.trdefi.com/v1/positions/<strategyHash> \
  -H "Authorization: Bearer $TRDEFI_KEY"
The fee is inside the position. Every newly created position carries a 0.05 % protocol fee embedded in the signed order data — the same whether the position is created through the web app or the API. It cannot be removed by the integrator, and positions created before this rule keep their original on-chain terms. Reading data is free and always has been.

The contract in one table

PropertyValue
Base URLhttps://yield.trdefi.com
AuthenticationNone to read. An API key is required only to create a position or swap — it prepares unsigned transactions and can never sign, broadcast or move value. Request one.
Request idX-Request-Id on every response, echoed in the body
Rate limitsRateLimit-Limit, -Remaining, -Reset, -Policy on success and failure; Retry-After on every 429
Errors{ error: { code, message, requestId, retryable, documentation } }
Freshnessmeta.freshnessSeconds on every derived value
VersioningPath-versioned; breaking changes get a new version and a minimum 90-day notice
It cannot move your money, and that is the point. Nothing on this surface can sign, transfer or custody anything — not the read endpoints, and not the write path either: it only ever hands your own wallet a transaction to sign. Every figure describes activity that has already happened on-chain, and each one can be inspected independently in the live catalogue.

Verify it yourself

ClaimWhere to check
Positions and settled volumeyield.trdefi.com/stats.html — each figure maps to on-chain transactions
Which chains and pairs are liveGET /api/chains · GET /api/strategies
The Circle infrastructure we useyield.trdefi.com/circle — documented against its transactions