# Solana Transaction API
> Decode any Solana transaction by its signature, live from public Solana RPC — no key. Where a signatures list just tells you a transaction happened, this tells you what it did: the fee and fee payer, success or failure with the on-chain error, the slot and block time, compute units consumed, the parsed instructions and full program log, and — most usefully — the actual value that moved, decoded into SOL balance changes and SPL-token balance changes per account. A dedicated transfers endpoint extracts just the money movements, and a status endpoint gives a fast confirmation check (processed / confirmed / finalized) for payment flows. Call any endpoint without a signature and it returns a fresh live example transaction. The transaction-decoding layer every Solana wallet, explorer, payment processor and trading bot needs. Live from the chain; short cache only.

## 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/solanatx-api/..."
```

## Pricing
- **Free** (Free) — 5,400 calls/Mo, 3 req/s
- **Starter** ($11/Mo) — 113,000 calls/Mo, 8 req/s
- **Pro** ($38/Mo) — 700,000 calls/Mo, 20 req/s
- **Business** ($106/Mo) — 4,500,000 calls/Mo, 50 req/s

## Endpoints

### Transaction

#### `GET /v1/status` — Fast confirmation status of a signature

**Parameters:**
- `signature` (query, optional, string) — Transaction signature (base58); omit for a fresh live example

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

**Response:**
```json
{
    "data": {
        "note": "Fast confirmation check: confirmation_status is processed / confirmed / finalized. confirmations is null once finalized (rooted).",
        "slot": 426376561,
        "error": null,
        "found": true,
        "source": "public Solana RPC getSignatureStatuses",
        "success": true,
        "finalized": true,
        "signature": "VdVc9ezMiLBVgNjH7HwPYDCsCHDn7HhuSf7auALp4P5MEBQV1QaxEHjhmTbm1JZ3YvtmoHiaLx4ge4fVcgVrQrr",
        "confirmations": null,
        "confirmation_status": "finalized"
    },
    "meta": {
        "timestamp": "2026-06-14T08:04:07.788Z",
        "request_id": "622db5c0-6404-45f3-abd4-df5ce13ac1f3"
    },
    "status": "ok",
    "message": "Status retrieved successfully",
    "success": true
}
```

#### `GET /v1/transfers` — Just the value moved: SOL + SPL-token balance changes

**Parameters:**
- `signature` (query, optional, string) — Transaction signature (base58); omit for a fresh live example

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

**Response:**
```json
{
    "data": {
        "note": "The actual value that moved in this transaction: net SOL balance changes (includes the fee on the fee payer) and net SPL-token balance changes, per account.",
        "slot": 426376561,
        "source": "public Solana RPC getTransaction",
        "success": true,
        "signature": "VdVc9ezMiLBVgNjH7HwPYDCsCHDn7HhuSf7auALp4P5MEBQV1QaxEHjhmTbm1JZ3YvtmoHiaLx4ge4fVcgVrQrr",
        "block_time": 1781424234,
        "sol_transfers": [
            {
                "account": "JD6rVaerbyz6wjQ433nrw6bFTgFrp46MiYmi8EtUAfsG",
                "change_sol": -5.075e-6,
                "change_lamports": -5075
            },
            {
                "account": "v3YN4d7JRhKFcwtex7qNtyg2r5hKYW96Cayb6GivSvY",
                "change_sol": -0.000589057,
                "change_lamports": -589057
            },
            {
                "account": "3YEt7YgiWxg9rRMHBTYku6fvx3DiGEQyfxUdsot9Cq63",
                "change_sol": -0.033873666,
                "change_lamports": -33873666
            },
            {
                "account": "6mQ8xEaHdTikyMvvMxUctYch6dUjnKgfoeib2msyMMi1",
                "change_sol": 0.034462723,
                "change_lamports": 34462723
            }
        ],
        "sol_moved_count": 4,
        "token_transfers": [
            {
                "mint": "So11111111111111111111111111111111111111112",
                "owner": "GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL",
                "decimals": 9,
           
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/tx` — Full decoded transaction: status, fee, instructions, logs, balance changes

**Parameters:**
- `signature` (query, optional, string) — Transaction signature (base58); omit for a fresh live example

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

**Response:**
```json
{
    "data": {
        "logs": [
            "Program ComputeBudget111111111111111111111111111111 invoke [1]",
            "Program ComputeBudget111111111111111111111111111111 success",
            "Program ComputeBudget111111111111111111111111111111 invoke [1]",
            "Program ComputeBudget111111111111111111111111111111 success",
            "Program 3s1rAymURnacreXreMy718GfqW6kygQsLNka1xDyW8pC invoke [1]",
            "Program whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc invoke [2]",
            "Program log: Instruction: Swap",
            "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [3]",
            "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 83 of 76919 compute units",
            "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success",
            "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [3]",
            "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 76 of 74822 compute units",
            "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success",
            "Program data: 4cpJr5MroJbcGr9WO0CNavkhQSCmK9vd3GuD/mVx15m+Fbry9vJxoQFDXX8uAsvUQgAAAAAAAAAAGl4azrmu1EIAAAAAAAAAAAPcDQIAAAAAvNQjAAAAAAAAAAAAAAAAAAAAAAAAAAAAbRcAAAAAAACAAwAAAAAAAA==",
            "Program whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc consumed 27683 of 99830 compute units",
            "Program whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc success",
            "Program CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C invoke 
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Service metadata & endpoints

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

**Response:**
```json
{
    "data": {
        "source": "public Solana RPC (getTransaction jsonParsed / getSignatureStatuses), keyless",
        "service": "solanatx-api",
        "endpoints": {
            "GET /v1/tx": "Full decoded transaction: status, fee, instructions, logs, balance changes (signature=...).",
            "GET /v1/meta": "This document.",
            "GET /v1/status": "Fast confirmation status of a signature (signature=...).",
            "GET /v1/transfers": "Just the value moved: SOL + SPL-token balance changes (signature=...)."
        },
        "description": "Decode any Solana transaction by signature, live from public Solana RPC: fee, fee payer, success/error, slot, block time, compute units, parsed instructions, program log, and the decoded SOL and SPL-token balance changes. A transfers endpoint extracts just the money movements; a status endpoint gives a fast confirmation check. The transaction-decoding layer for Solana wallets, explorers and payment processors. Live, short cache only."
    },
    "meta": {
        "timestamp": "2026-06-14T08:04:08.087Z",
        "request_id": "f7a763ff-2663-474f-a674-19c27d1bcd70"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


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