Skip to content

Get Fee Rate (WebSocket)

Retrieve the authenticated wallet's current fee tier, 14-day trading volume, wallet-effective maker/taker rates, and the complete public fee schedule through the trade WebSocket.

Endpoint

ws.send() wss://api.synthetix.io/v1/ws/trade

Request

Request Format

{
  "id": "feerate-1",
  "method": "post",
  "params": {
    "action": "getFeeRate",
    "subAccountId": "1867542890123456789",
    "expiresAfter": 1704153600,
    "signature": {
      "v": 28,
      "r": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
      "s": "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890"
    }
  }
}

Parameters

ParameterTypeRequiredDescription
idstringYesClient-generated request identifier
methodstringYesMust be "post"
params.actionstringYesMust be "getFeeRate"
params.subAccountIdstringYesSubaccount identifier
params.expiresAfterintegerNoOptional expiration timestamp in seconds
params.signatureobjectYesEIP-712 signature using SubAccountAction

Response Format

Success Response

{
  "id": "feerate-1",
  "requestId": "feerate-1",
  "status": 200,
  "timestamp": 1735689900000,
  "result": {
    "status": "success",
    "response": {
      "volume14d": "5500000.00",
      "currentTier": {
        "tierId": "tier_2",
        "tierLevel": 2,
        "tierName": "Tier 2",
        "tierType": "volume",
        "minTradeVolume": "5000000",
        "makerFeeRate": "0.00016",
        "takerFeeRate": "0.0004"
      },
      "makerFeeRate": "0.000144",
      "takerFeeRate": "0.00036",
      "referralDiscountApplied": true,
      "referralDiscount": "0.9",
      "tiers": [
        {
          "tierId": "tier_0",
          "tierLevel": 0,
          "tierName": "Regular User",
          "minTradeVolume": "0",
          "makerFeeRate": "0.0002",
          "takerFeeRate": "0.0005"
        }
      ]
    }
  }
}

Response Fields

See Get Fee Rate (REST) for the full field reference. The result.response object matches the REST response object.

Implementation Notes

  • Uses SubAccountAction EIP-712 signing with action: "getFeeRate"
  • REST equivalent: Get Fee Rate
Error CodeDescriptionRetryable
UNAUTHORIZEDEIP-712 signature validation failedNo
VALIDATION_ERRORRequest validation failedNo
MISSING_REQUIRED_FIELDRequired field is missingNo
INVALID_FORMATField format is invalidNo
INVALID_VALUEInvalid parameter valueNo
RATE_LIMIT_EXCEEDEDToo many requests in time windowYes
INSUFFICIENT_MARGINNot enough margin for tradeNo
ORDER_NOT_FOUNDOrder does not existNo
OPERATION_TIMEOUTOperation timed outYes