ProxyHubb Docs

Provider nodes

Registration, heartbeats, capability lease, listings, and tunnel health.

After the CLI / daemon is running, the control plane tracks the node via registration, heartbeats, and an optional capability lease. Listings should only be sold when infrastructure is healthy.

Lifecycle

  1. Install CLI / download config
  2. Enroll — provider token → auth → register node (or reuse node_id)
  3. Open tunnel to gateway :3128 (yamux)
  4. Fetch / renew capability lease when required
  5. Heartbeats keep status online
  6. Publish listings tied to the healthy node

Control API (authenticated provider)

MethodPathPurpose
POST/v1/provider/authExchange provider token → JWT ({ "token" })
POST/v1/provider/gateway-tokenEdge gateway JWT
POST/v1/provider/nodesCreate node (may auto-draft a listing)
GET/PUT/DELETE/v1/provider/nodes, /v1/provider/nodes/{id}CRUD
POST/v1/provider/nodes/{id}/heartbeatHeartbeat
GET/v1/provider/nodes/{id}/connectConnect metadata
GET/POST/…/v1/provider/tokens*Mint / rotate / revoke tokens
POST/v1/provider/leaseCapability lease for tunnel AUTH frames

Create node body

json
{
  "name": "home-fiber-1",
  "ip_address": "203.0.113.10",
  "country": "US",
  "city": "Austin",
  "connection_type": "residential"
}

409 if the same IP is already registered for the user.

Capability lease

http
POST /v1/provider/lease
Authorization: Bearer <provider-jwt>
Content-Type: application/json
 
{
  "connection_type": "residential",
  "max_connections": 500,
  "max_bandwidth_mbps": 100,
  "available_ports": [80, 443],
  "client_version": "1.0.0",
  "features": []
}

Response includes token, expires_at, expires_in, renew_after_secs, and a lease object. The agent attaches the lease to tunnel capability frames.

When REQUIRE_PROVIDER_LEASE=true (typical production), nodes without a valid lease are not admitted to serve traffic.

Checklist

StepWhere
TokenProvider → Tokens
Setup / config downloadProvider → Setup / CLI
Start tunnelLocal proxyhubb-cli start / provider-node
Online statusProvider → Nodes
ListingsMarketplace → Manage
Earnings / claimsProvider dashboard

Ports

RoleEndpoint
Provider tunnelproxy.proxyhubb.com:3128
Buyer CONNECT / SOCKS5proxy.proxyhubb.com:8090

Common errors

SymptomFix
Offline after startHeartbeat failing — check daemon logs, API URL, token
409 on create nodeIP already registered — reuse node_id
Admitted but no trafficListing unpublished / unhealthy; check lease if required
Lease rejectedRefresh via POST /v1/provider/lease; bump client_version

Install details: Provider CLI.