Micropayments Protocol

Get your Proxy Access
One Single Request

Purchase SOCKS5 proxy bandwidth with a single HTTP request using MPP (Micropayments Protocol). No accounts. No API keys. Just pay with stable coins on Tempo and get instant proxy credentials back.

Instant Provisioning
🔐 No Account Required
💸 Pay with stable coins

One Request, One Payment, One Proxy

MPP embeds payment directly into HTTP. Your agent pays and receives proxy credentials in a single round-trip — no separate payment step needed.

1

Request

Your agent sends a GET request to the package endpoint. The server responds with a 402 Payment Required challenge containing the payment details.

2

Pay

Your agent submits a stable coins payment on Tempo matching the package price. The MPP client handles the payment flow automatically.

3

Connect

After payment verification, the response includes your SOCKS5 proxy credentials — host, port, username, password. Connect immediately.

Choose Your Bandwidth

Each package gives you a unique SOCKS5 proxy with the specified bandwidth. No expiration date — use it until the bandwidth runs out.

🇺🇸USresidential

1 MB

$0.1
/api/mpp/us_residential_1gb_test
  • US residential & mobile IPs
  • SOCKS5 protocol
  • Unlimited concurrent sessions
  • No expiration date
  • Real-time bandwidth tracking
🇺🇸USresidential

1 GB

$10
/api/mpp/us_residential_1gb
  • US residential & mobile IPs
  • SOCKS5 protocol
  • Unlimited concurrent sessions
  • No expiration date
  • Real-time bandwidth tracking
🇺🇸USresidential

10 GB

$100
/api/mpp/us_residential_10gb
  • US residential & mobile IPs
  • SOCKS5 protocol
  • Unlimited concurrent sessions
  • No expiration date
  • Real-time bandwidth tracking
🇧🇷BRresidential

1 GB

$10
/api/mpp/br_residential_1gb
  • BR residential & mobile IPs
  • SOCKS5 protocol
  • Unlimited concurrent sessions
  • No expiration date
  • Real-time bandwidth tracking
🇧🇷BRresidential

10 GB

$100
/api/mpp/br_residential_10gb
  • BR residential & mobile IPs
  • SOCKS5 protocol
  • Unlimited concurrent sessions
  • No expiration date
  • Real-time bandwidth tracking

Integration Guide

Use the mppx client library or make raw HTTP requests. Each endpoint provisions a proxy for the specified package.

Endpoint

GETProxy Purchase
GET https://proxybase.xyz/api/mpp/{package_id}
ParameterTypeDescription
package_idstringThe package to purchase. Available: us_residential_1gb_test, us_residential_1gb, us_residential_5gb, us_residential_10gb, br_residential_1gb, br_residential_5gb, br_residential_10gb

Payment Flow

The endpoint is gated by MPP. On first request, you receive a 402 Payment Required response with payment instructions. After payment, the response includes your proxy credentials.

402 Response (Payment Challenge)
HTTP/1.1 402 Payment Required
Content-Type: application/json

{
  "method": "tempo",
  "amount": "10",
  "currency": "0x20c0...0000",
  "recipient": "0x2a8d...A9b3"
}
200 Response (After Payment)
HTTP/1.1 200 OK
Content-Type: application/json

{
  "success": true,
  "order_id": "dx8jnk3q",
  "package_id": "us_residential_1gb",
  "proxy": {
    "host": "api.proxybase.xyz",
    "port": 1080,
    "username": "pb_a1b2c3d4e5f6g7h8",
    "password": "9f8e7d6c5b4a3f2e1d0c9b8a7f6e5d4c"
  },
  "bandwidth_bytes": 1073741824,
  "message": "Proxy provisioned successfully. Connect via SOCKS5."
}

Client Example (TypeScript)

Use the mppx client library to handle the payment flow automatically.

Install
npm install mppx
Usage
import { Client } from 'mppx/client'

const client = Client.create()

// Purchase a 1GB US residential proxy
const response = await client.fetch(
  'https://proxybase.xyz/api/mpp/us_residential_1gb'
)

const data = await response.json()
console.log(data.proxy)
// {
//   host: "api.proxybase.xyz",
//   port: 1080,
//   username: "pb_a1b2c3d4e5f6g7h8",
//   password: "9f8e7d6c5b4a..."
// }

Using Your Proxy

Once you receive the credentials, connect via SOCKS5 from any language or tool.

curl
curl --socks5 pb_a1b2c3d4e5f6g7h8:9f8e7d6c@api.proxybase.xyz:1080 \
  https://lemontv.xyz/api/ip
Python
import requests

proxies = {
    "http": "socks5://pb_a1b2c3d4e5f6g7h8:9f8e7d6c@api.proxybase.xyz:1080",
    "https": "socks5://pb_a1b2c3d4e5f6g7h8:9f8e7d6c@api.proxybase.xyz:1080",
}

r = requests.get("https://lemontv.xyz/api/ip", proxies=proxies)
print(r.json())
Node.js
import { SocksProxyAgent } from 'socks-proxy-agent'

const agent = new SocksProxyAgent(
  'socks5://pb_a1b2c3d4e5f6g7h8:9f8e7d6c@api.proxybase.xyz:1080'
)

const res = await fetch('https://lemontv.xyz/api/ip', { agent })
console.log(await res.json())

Server Implementation

For developers building MPP-powered services, here's how ProxyBase implements the payment-gated endpoint using mppx/nextjs:

app/api/mpp/[package_id]/route.js
import { Mppx, tempo } from 'mppx/nextjs'

const mppx = Mppx.create({
  methods: [tempo({
    currency: '0x20c0...0000', // pathUSD on Tempo
    recipient: '0x2a8d...A9b3',
  })],
})

export const GET =
  mppx.charge({ amount: '10' })(
    async () => {
      // Payment verified — provision the proxy
      const result = await provisionProxy(package_id)
      return Response.json({
        proxy: result.proxy,
        bandwidth_bytes: result.bandwidth_bytes,
      })
    }
  )

Ready to Get Started?

Purchase a proxy package right now. No signup required. Just send a request with payment and receive your credentials.