{
  "x402Version": 1,
  "resourceHost": "rt.wave.online",
  "facilitator": "https://gateway.wave.online/v1/x402/facilitator",
  "discovery": "https://gateway.wave.online/.well-known/x402",
  "payments": "https://gateway.wave.online/.well-known/payments.json",
  "supported": "https://gateway.wave.online/v1/x402/facilitator/supported",
  "meter": "wave_realtime_video_minutes",
  "scope": "realtime:write",
  "$comment": "ADVISORY. rt.wave.online is a thin edge: every priced route below is CALLED at the WAVE gateway (https://api.wave.online), which authenticates or charges and only then forwards to this worker — a direct unpaid call to rt is rejected. maxAmountRequired is in ATOMIC units of 6-decimal USDC on Base, so \"3000\" is $0.003. The 402 challenge returned by the route you are calling is the AUTHORITATIVE source of payment terms (payTo, session id, exact amount): plan from this document, pay from the challenge.",
  "accepts": [
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/realtime/join",
      "method": "POST",
      "description": "Mint a RealtimeKit participant join token",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/realtime/turn",
      "method": "POST",
      "description": "Mint short-lived TURN/ICE credentials for raw WebRTC NAT traversal",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/realtime/rooms/{room}/join",
      "method": "POST",
      "description": "Join an SFU room (returns the session offer)",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/realtime/rooms/{room}/publish",
      "method": "POST",
      "description": "Publish local tracks into an SFU room",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/realtime/rooms/{room}/subscribe",
      "method": "POST",
      "description": "Subscribe to remote tracks in an SFU room",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/realtime/rooms/{room}/renegotiate",
      "method": "POST",
      "description": "Renegotiate the peer connection for an SFU room",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/realtime/rooms/{room}/leave",
      "method": "POST",
      "description": "Leave an SFU room and meter the session",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/realtime/agents/bind",
      "method": "POST",
      "description": "Bind a voice agent to a room",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/realtime/agents/info",
      "method": "POST",
      "description": "Inspect a bound voice-agent session",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "5000",
      "resource": "https://api.wave.online/v1/whip/publish",
      "method": "POST",
      "description": "IETF WHIP ingest — publish a stream",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "5000",
      "resource": "https://api.wave.online/v1/whip/resource/{id}",
      "method": "DELETE",
      "description": "IETF WHIP ingest — tear down a publish resource",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/whep/subscribe",
      "method": "POST",
      "description": "IETF WHEP egress — subscribe to a stream",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/whep/resource/{id}",
      "method": "DELETE",
      "description": "IETF WHEP egress — tear down a subscribe resource",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/whep/sources",
      "method": "POST",
      "description": "Register a WHEP playback source",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    },
    {
      "scheme": "exact",
      "protocol": "x402",
      "network": "base",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxAmountRequired": "3000",
      "resource": "https://api.wave.online/v1/whep/sources/{uid}",
      "method": "DELETE",
      "description": "Delete a WHEP playback source",
      "mimeType": "application/json",
      "maxTimeoutSeconds": 60,
      "extra": {
        "decimals": 6,
        "assetSymbol": "USDC",
        "servedBy": "rt.wave.online"
      }
    }
  ]
}