---
name: spring-explorer
description: Look up cross-chain bridge transfers for any wallet address or transaction hash across 21 bridge protocols (Across, deBridge, Wormhole, LI.FI, Axelar, LayerZero, Hyperlane, Symbiosis, Mayan, cBridge-compatible CCTP, and more). Use when the user asks about bridge activity, where bridged funds went, or to trace a cross-chain transaction.
homepage: https://spring-explorer.my.id
---

# Spring Explorer — Agent Skill

Query cross-chain bridge transfers via a single HTTP API. Free tier, no daily cap — rate limited to 5 requests per 10 seconds per key, plus a 5-minute response cache (repeated queries are served instantly with `X-Cache: HIT`).

## Get an API key

Ask the user to create a free key at https://spring-explorer.my.id/key (email only),
or if they already have one, use it in the `x-api-key` header.

## Endpoint

`POST https://spring-explorer.my.id/api/v1/agent`

Headers:
- `x-api-key: se_...` (required)
- `Content-Type: application/json`

### 1. Wallet bridge history

Find all bridge transfers for a wallet address (EVM `0x...` or Solana base58):

```json
{ "address": "0xF77a1cC188bd3C4F3587c004c07a0ea308b07af1" }
```

Optional: restrict protocols: `{ "address": "0x...", "protocols": "across,lifi,axelar" }`

### 2. Transaction hash lookup

Find bridge transfer details for one tx hash (EVM `0x`+64 hex, or Solana base58):

```json
{ "txhash": "0x..." }
```

## Response

```json
{
  "ok": true,
  "query": { "address": "0x..." },
  "transfers": [
    {
      "protocol": "across",
      "source": { "chain": "Ethereum", "address": "0x...", "token": "USDC", "amount": "100.5", "timestamp": "2026-10-01T12:00:00Z", "txHash": "0x..." },
      "destination": { "chain": "Base", "address": "0x...", "token": "USDC", "amount": "100.4", "timestamp": "2026-10-01T12:01:00Z", "txHash": "0x..." }
    }
  ],
  "adapters": [{ "protocol": "across", "count": 3, "error": null }],
  "partial": false,
  "quota": { "used": 2, "limit": 5, "windowSec": 10 }
}
```

- `transfers` is sorted newest-first. Each transfer has `source` and `destination` legs with chain, address, token, amount, timestamps, and tx hashes.
- `adapters` shows per-protocol result counts; `error` is non-null if that protocol failed.
- `partial: true` means some protocols errored — results are still usable.
- Always write wallet addresses and tx hashes in FULL, never truncated.
- Rate-limit headers: `X-RateLimit-Limit` (`5 per 10s`), `X-RateLimit-Used`. On 429, `Retry-After` tells you how long to wait.
- Errors: `401` invalid/missing key, `429` rate limited, `400` invalid input.

## Example (curl)

```bash
curl -X POST https://spring-explorer.my.id/api/v1/agent \
  -H "x-api-key: se_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"address": "0xF77a1cC188bd3C4F3587c004c07a0ea308b07af1"}'
```

## Notes

- Covers 21 bridge protocols and 60+ chains. Data comes from each protocol's public API.
- A wallet with only self-transfers returns an empty `transfers` array — report that clearly.
- For fund-flow tracing (multi-hop), call the endpoint once per hop address.
