# Safe Multisig API
> Inspect any Safe (formerly Gnosis Safe) multisig smart wallet, keyless. For any Safe address on any supported chain it returns the multisig configuration — the owner signers, the signature threshold (the M-of-N), the current nonce, the enabled modules, guard and contract version — and the Safe token balances (native + ERC-20, with symbols and amounts). The multisig-inspection layer for DAO treasuries, security, due-diligence, wallet and dashboard tooling. Live, nothing stored. Backed by the open Safe Transaction Service.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/safe-api/..."
```

## Pricing
- **Free** (Free) — 3,500 calls/Mo, 3 req/s
- **Starter** ($10/Mo) — 90,000 calls/Mo, 8 req/s
- **Pro** ($35/Mo) — 560,000 calls/Mo, 20 req/s
- **Business** ($104/Mo) — 3,700,000 calls/Mo, 50 req/s

## Endpoints

### Safe

#### `GET /v1/balances` — The Safe native + ERC-20 token balances

**Parameters:**
- `chain` (query, required, string) — Chain short code or numeric id Example: `eth`
- `address` (query, required, string) — Safe address Example: `0x0DA0C3e52C977Ed3cBc641fF02DD271c3ED55aFe`
- `limit` (query, optional, string) — Max tokens (1-200, default 50) Example: `50`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/safe-api/v1/balances?chain=eth&address=0x0DA0C3e52C977Ed3cBc641fF02DD271c3ED55aFe&limit=50"
```

**Response:**
```json
{
    "data": {
        "note": "Native and ERC-20 token balances held by the Safe. balance is human-readable; balance_raw is the integer base-unit amount.",
        "chain": "eth",
        "count": 11,
        "source": "Safe",
        "tokens": [
            {
                "name": "Ether",
                "symbol": "ETH",
                "balance": 0.682961,
                "decimals": 18,
                "balance_raw": "682960961506566725",
                "token_address": null
            },
            {
                "name": "1INCH Token",
                "symbol": "1INCH",
                "balance": 728.7256,
                "decimals": 18,
                "balance_raw": "728725600000000000000",
                "token_address": "0x111111111117dC0aa78b770fA6A738034120C302"
            },
            {
                "name": "Bankless DAO",
                "symbol": "BANK",
                "balance": 37422.03,
                "decimals": 18,
                "balance_raw": "37422030000000000000000",
                "token_address": "0x2d94AA3e47d9D5024503Ca8491fcE9A2fB4DA198"
            },
            {
                "name": "CoW Protocol Token",
                "symbol": "COW",
                "balance": 484395.201156,
                "decimals": 18,
                "balance_raw": "484395201155981443455776",
                "token_address": "0xDEf1CA1fb7FBcDC777520aa7f396b4E015F497aB"
            },
            {
                "name": "CoW Protocol Virtual Tok
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/safe` — Multisig configuration: owners, threshold, nonce, modules, version

**Parameters:**
- `chain` (query, required, string) — Chain short code (eth, pol, base, arb1, oeth, gno) or numeric id (1, 137, 8453) Example: `eth`
- `address` (query, required, string) — Safe address (0x + 40 hex) Example: `0x0DA0C3e52C977Ed3cBc641fF02DD271c3ED55aFe`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/safe-api/v1/safe?chain=eth&address=0x0DA0C3e52C977Ed3cBc641fF02DD271c3ED55aFe"
```

**Response:**
```json
{
    "data": {
        "note": "threshold of owner_count signatures are required to execute a transaction (an M-of-N multisig).",
        "chain": "eth",
        "guard": null,
        "nonce": 8,
        "owners": [
            "0xE4Df0cdC9eF7e388eA906226010bBD1B9A6fFeD9",
            "0xA1cf7F847eCD82459ce05a218EaA38a9D92E7b6b",
            "0xD68f1A882f3F9ffddaBd4D30c4F8Dfca1f9e51Ba",
            "0xFcf00B0fEdBc8f2F35a3B8d4B858d5805f2Bb05D",
            "0x8fd960F1B9D68BAD2B97bD232FB75CC1f186B064"
        ],
        "source": "Safe",
        "address": "0x0DA0C3e52C977Ed3cBc641fF02DD271c3ED55aFe",
        "modules": [
            "0x0d70332CEB7F3C94b061cda48327891E3449A9E1"
        ],
        "version": "1.3.0",
        "threshold": 3,
        "master_copy": "0xd9Db270c1B5E3Bd161E8c8503c55cEABeE709552",
        "owner_count": 5,
        "fallback_handler": "0xf48f2B2d2a534e402487b3ee7C18c33Aec0Fe5e4"
    },
    "meta": {
        "timestamp": "2026-06-14T08:04:15.892Z",
        "request_id": "afea64e0-d705-4511-83c8-05195e580497"
    },
    "status": "ok",
    "message": "Safe retrieved successfully",
    "success": true
}
```

### Meta

#### `GET /v1/meta` — Service metadata & live sample

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/safe-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "note": "Both endpoints take a chain (short code eth, pol, base, arb1, oeth, gno, bnb, avax... or a numeric chain id like 1, 137, 8453) and a Safe address (0x + 40 hex). Returns 404 if the address is not a Safe on that chain.",
        "sample": {
            "address": "0x0DA0C3e52C977Ed3cBc641fF02DD271c3ED55aFe",
            "threshold": 3,
            "owner_count": 5
        },
        "source": "Safe Transaction Service open API (api.safe.global), live",
        "service": "safe-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/safe": "Multisig configuration: owners, threshold, nonce, modules, version (chain, address).",
            "GET /v1/balances": "The Safe's native + ERC-20 token balances (chain, address)."
        },
        "description": "Inspect any Safe (formerly Gnosis Safe) multisig smart wallet, keyless. For any Safe address on any supported chain: the owner signers, the signature threshold (the M-of-N), the current nonce, enabled modules, guard and contract version, plus the Safe's native and ERC-20 token balances. The multisig-inspection layer for DAO treasuries, security, due-diligence, wallet and dashboard tooling. Live, nothing stored beyond a short cache. Backed by the open Safe Transaction Service.",
        "upstream_status": "ok"
    },
    "meta": {
        "timestamp": "2026-06-14T08:04:15.981Z",
        "request_id": "e73d96ea-4629-4866-80bc-f75e4742797c"
    },
    "status": 
…(truncated, see openapi.json for full schema)
```


---
Marketplace page: https://www.oanor.com/api/safe-api
OpenAPI spec: https://www.oanor.com/api/safe-api/openapi.json
