Skip to main content
Use /maker-status as your self-test loop: poll it until the response returns ok: true. Bebop only enables a maker in production once /maker-status passes. The endpoint reports:
  • Connection status for each WebSocket (levels, quotes, trades).
  • Levels currently streamed per pair.
  • Balances and allowances for every token you stream.
  • Results from a rotating set of test quote requests drawn from your streamed tokens.
A status: ok response means the integration is healthy. Otherwise the payload pinpoints what failed and includes the expected signable_message on signature tests.

Test types

TestWhat it validatesCommon fix if it fails
ONE_TO_ONEBaseline quote for a single taker token → single maker token.Ensure your maker is streaming pricing and has approvals + inventory on the settlement contract.
ONE_TO_ONE_WITH_FEEFee applied correctly; reference_price stays pre-fee.Subtract fee_native from maker_amount; set reference_price to your pre-fee price. See Quotes › Responding.
ONE_TO_MANYSplit quote: one taker token → multiple maker tokens.Support multi-token response shape.
ONE_TO_MANY_WITH_FEEMulti-leg fee allocation by taker-amount ratio.Split fee proportionally across legs. See Fees › Splitting fees across multi-token trades.
MANY_TO_ONESplit quote: multiple taker tokens → one maker token.Support multi-token response shape.
MIDDLE_TOKEN_SIGNING_ONLYSignature construction for a 121 quote routed as MultiOrder via a middle token.Preserve per-leg token and amount lists in the signable message; compare against signable_message in the response. See Signing › Middle-token routing.
Base URL
https://api.bebop.xyz
Endpoint
GET /pmm/{chain_name}/v3/maker-status

Query parameters

NameTypeRequiredDescription
makerstringYesThe maker identifier as per your credentials (e.g. maker-rfqt-test).
size_usdnumberNoNotional trade size in USD for the quote tests. Default: 100.

Headers

NameTypeRequiredDescription
AuthorizationstringYesBearer <API_KEY> as per your credentials.

Example

curl -X GET "https://api.bebop.xyz/pmm/ethereum/v3/maker-status?maker=maker-rfqt-test" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

{
  "ok": false,
  "enabled": false,
  "emoji": "🧙‍♂️🧪T",
  "maker_address": "0x..",
  "connections": {
    "levels_client": "CONNECTED",
    "quotes_client": "CONNECTED",
    "trades_client": "DISCONNECTED"
  },
  "levels": {
    "USDC/USDT": {
      "base_address": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
      "quote_address": "0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9",
      "asks_amount_total": "2,169,235.86623",
      "asks_amount_total_usd": "2.17M",
      "bids_amount_total": "633,731.13163",
      "bids_amount_total_usd": "632.78K",
      "price": 0.9999500499999999,
      "last_update": "2025-08-05 20:43:53 +0000"
    }
  },
  "token_info": {
    "0xaf88d065e77c8cC2239327C5EDb3A432268e5831": {
      "allowance": 1.157920892373162e+77,
      "balance": 500000000,
      "allowance_decimal": "115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,000,000,000,000,000,000,000",
      "balance_decimal": "500",
      "router_limit": "499.5"
    }
  },
  "quotes": [
    {
      "test_type": "ONE_TO_ONE",
      "request": "50.011 USDC <-> USDT",
      "success": true,
      "quote_id": "121-216493590260357491556760020260958997180",
      "sell_tokens": {
        "0xaf88d065e77c8cC2239327C5EDb3A432268e5831": {
          "amount": "50011402",
          "decimals": 6,
          "priceUsd": 0.999772,
          "symbol": "USDC",
          "price": 0.9989000908232887,
          "priceBeforeFee": 0.9989000908232887
        }
      },
      "buy_tokens": {
        "0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9": {
          "amount": "49956394",
          "decimals": 6,
          "priceUsd": 0.999812,
          "symbol": "USDT",
          "minimumAmount": "49956394",
          "price": 1.0011011203090439,
          "priceBeforeFee": 1.0011011203090439,
          "amountBeforeFee": "49956394"
        }
      },
      "total_sell_amount_usd": "50.000",
      "total_buy_amount_usd": "49.947",
      "delta_from_levels_bps": [0]
    }
  ]
}