mirrored listing x402 eip155:8453eip155:137eip155:42161solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp

Plexa /v1/quote — executable swap quote: the realizable fill price at your trade size, not

Plexa /v1/quote — executable swap quote: the realizable fill price at your trade size, not a mid/spot price feed. Returns price impact (bps), worst-case slippage, depth and the per-leg route across Base/Polygon/Arbitrum liquidity, from canonical on-chain quoters. Call it before a swap to see what the fill actually costs. Informational data, not financial advice.

Do you run api.getplexa.com? This listing was mirrored from Coinbase's public Bazaar. Claim it in 30 seconds — no account required — and it becomes verified, permanently overriding the mirrored copy.

Claim this listing
20000 (raw units)
price
49
calls / 30d
3
unique payers
2026-09-17
updated

Provider

api.getplexa.com · discovered, not yet claimed by its owner

Payment (x402 accepts[])

[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "payTo": "0xd993eAfBA87cFfa2ca2CFF5A56EF89034575A7ef",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "20000",
    "maxTimeoutSeconds": 300
  },
  {
    "scheme": "exact",
    "network": "eip155:137",
    "payTo": "0xd993eAfBA87cFfa2ca2CFF5A56EF89034575A7ef",
    "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
    "amount": "20000",
    "maxTimeoutSeconds": 300
  },
  {
    "scheme": "exact",
    "network": "eip155:42161",
    "payTo": "0xd993eAfBA87cFfa2ca2CFF5A56EF89034575A7ef",
    "asset": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
    "amount": "20000",
    "maxTimeoutSeconds": 300
  },
  {
    "scheme": "exact",
    "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
    "payTo": "D6FqEyoFvkgGy4PpJjckHc3xRXhzL6mWQ25gz4rkVLor",
    "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
    "amount": "20000",
    "maxTimeoutSeconds": 300
  }
]

Output schema

{
  "bazaar": {
    "info": {
      "input": {
        "body": {
          "chain": "base",
          "sizeUSD": "5000",
          "tokenIn": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "tokenOut": "0x4200000000000000000000000000000000000006"
        },
        "bodyType": "json",
        "method": "POST",
        "type": "http"
      },
      "output": {
        "example": {
          "confidence": "high",
          "depthAtSize": 2.6386839328112384,
          "executablePrice": 0.0005277367865622476,
          "priceImpactBps": 0,
          "route": {
            "dex": "univ3",
            "legs": [
              {
                "dex": "univ3",
                "feePips": 500,
                "pool": "0xd0b53D9277642d899DF5C87A3966A349A798F224",
                "venue": "uniswap-v3"
              }
            ]
          },
          "ts": 1786022127490,
          "validUntil": 1786022130490,
          "worstCaseSlippageBps": 0
        },
        "type": "json"
      }
    },
    "schema": {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "input": {
          "additionalProperties": false,
          "properties": {
            "body": {
              "additionalProperties": false,
              "anyOf": [
                {
                  "required": [
                    "sizeIn"
                  ]
                },
                {
                  "required": [
                    "sizeUSD"
                  ]
                }
              ],
              "examples": [
                {
                  "chain": "base",
                  "sizeUSD": "5000",
                  "tokenIn": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
                  "tokenOut": "0x4200000000000000000000000000000000000006"
                }
              ],
              "properties": {
                "chain": {
                  "description": "Optional, default \"base\". One of: base | polygon | matic | arbitrum | arbitrum-one | arb | eip155:8453 | eip155:137 | eip155:42161 — case-sensitive (see `enum`). This is the chain the QUOTE is computed on; the networks you may PAY on (including Solana) are a separate list in `accepts[]`.",
                  "enum": [
                    "base",
                    "polygon",
                    "matic",
                    "arbitrum",
                    "arbitrum-one",
                    "arb",
                    "eip155:8453",
                    "eip155:137",
                    "eip155:42161"
                  ],
                  "type": "string"
                },
                "sizeIn": {
                  "description": "Trade size as a human amount of tokenIn, e.g. \"1.5\" for 1.5 WETH. A STRING, not a number. At least one of sizeIn / sizeUSD is required; if BOTH are sent, sizeUSD wins and sizeIn is ignored.",
                  "maxLength": 78,
                  "pattern": "^(?:0\\.\\d*[1-9]\\d*|[1-9]\\d*(?:\\.\\d+)?)$",
                  "type": "string"
                },
                "sizeUSD": {
                  "description": "Trade size as a USD notional, e.g. \"5000\". A STRING, not a number; positive, no thousands separator (\"5,000\" is rejected) and no exponent (\"5e3\" is rejected) — see `pattern`. At least one of sizeIn / sizeUSD is required; if BOTH are sent, sizeUSD wins.",
                  "maxLength": 78,
                  "pattern": "^(?:0\\.\\d*[1-9]\\d*|[1-9]\\d*(?:\\.\\d+)?)$",
                  "type": "string"
                },
                "tokenIn": {
                  "description": "ERC-20 being SOLD. 0x + 40 hex (see `pattern`) — a symbol like \"USDC\" is rejected with 400.",
                  "pattern": "^0x[0-9a-fA-F]{40}$",
                  "type": "string"
                },
                "tokenOut": {
                  "description": "ERC-20 being BOUGHT. 0x + 40 hex (see `pattern`) — a symbol like \"WETH\" is rejected with 400.",
                  "pattern": "^0x[0-9a-fA-F]{40}$",
                  "type": "string"
                }
              },
              "required": [
                "tokenIn",
                "tokenOut"
              ],
              "type": "object"
            },
            "bodyType": {
              "enum": [
                "json",
                "form-data",
                "text"
              ],
              "type": "string"
            },
            "method": {
              "enum": [
                "POST"
              ],
              "type": "string"
            },
            "type": {
              "const": "http",
              "type": "string"
            }
          },
          "required": [
            "type",
            "method",
            "bodyType",
            "body"
          ],
          "type": "object"
        },
        "output": {
          "properties": {
            "example": {
              "properties": {
                "confidence": {
                  "description": "Engine confidence: high | medium | low",
                  "type": "string"
                },
                "depthAtSize": {
                  "description": "Realizable output at the requested size, in human units of tokenOut (NOT USD)",
                  "type": "number"
                },
                "executablePrice": {
                  "description": "REALIZABLE fill price for the full requested size — the price the swap actually executes at after price impact, NOT a mid/spot price feed. This is Plexa's core difference from a price oracle. Units: tokenOut PER tokenIn (for USDC→WETH it is WETH per 1 USDC, a small number — not the reciprocal).",
                  "type": "number"
                },
                "priceImpactBps": {
                  "description": "Price impact at this size, in basis points. Null when no defensible mid exists (P16) — impact is derived from the mid.",
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "route": {
                  "description": "Per-leg execution route (dex / pool / fee tier)",
                  "type": "object"
                },
                "worstCaseSlippageBps": {
                  "description": "Worst-case slippage, in basis points. Null when no defensible mid exists (P16).",
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "type": "object"
            },
            "type": {
              "type": "string"
            }
          },
          "required": [
            "type"
          ],
          "type": "object"
        }
      },
      "required": [
        "input"
      ],
      "type": "object"
    }
  },
  "builder-code": {
    "info": {
      "a": "bc_g9x4yzn7"
    },
    "schema": {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "additionalProperties": false,
      "properties": {
        "a": {
          "description": "App builder code",
          "pattern": "^[a-z0-9_]{1,32}$",
          "type": "string"
        },
        "s": {
          "description": "Service builder codes",
          "items": {
            "pattern": "^[a-z0-9_]{1,32}$",
            "type": "string"
          },
          "type": "array"
        },
        "w": {
          "description": "Wallet builder code",
          "pattern": "^[a-z0-9_]{1,32}$",
          "type": "string"
        }
      },
      "type": "object"
    }
  }
}

Use it

curl

curl "https://api.getplexa.com/v1/quote"
# -> 402 Payment Required, accepts[] lists how to pay
# retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid

JavaScript

const res = await fetch("https://api.getplexa.com/v1/quote");
if (res.status === 402) {
  const { accepts } = await res.json();
  // pay one of accepts[] via an x402 client, then retry with the payment header
}

Python

import httpx
res = httpx.get("https://api.getplexa.com/v1/quote")
if res.status_code == 402:
    accepts = res.json()["accepts"]
    # pay one of accepts[] via an x402 client, then retry with the payment header

Machine-readable

Everything on this page is also available as clean JSON at /resources/6296.json, and this resource appears in /discovery/resources and /discovery/search.