PROVIDER PORTAL
Tools for providers
Distribute subscriptions via branded smproxy:// links, track statistics and message your users. All free.
🆔
Provider ID
Your identifier and setting a custom one
📊
Statistics
Active devices and usage
🔔
Messages
Send messages to app inboxes
LINK GENERATORS
Turn a subscription link into smproxy://
One click and the user adds your subscription. Below are working generators (they call provider.smproxy.io).
🔒
Encrypted link
smproxy://crypt1/…Hides the real subscription URL — the user won't see your server address.
📱
Device binding
smproxy://addhw/…The link opens only on the device with the given HWID — anti-sharing protection.
Tools
Build a client link or a routing profile right in the browser — no need to write JSON by hand.
Full API spec and header reference are in the developer documentation.
API — GENERATE PROGRAMMATICALLY
How to generate links from code
The forms above wrap two POST endpoints. Call them directly from your backend or bot to issue links automatically.
POST · form-urlencoded or JSON
Base: https://provider.smproxy.io/public/
🔒
crypto-link
POST /public/crypto-linkREQUEST (cURL)
curl -X POST \
https://provider.smproxy.io/public/crypto-link \
-d 'url=https://example.com/sub/abc123'
… OR JSON
curl -X POST \
https://provider.smproxy.io/public/crypto-link \
-H 'Content-Type: application/json' \
-d '{"url":"https://example.com/sub/abc123"}'
RESPONSE (200)
{
"link": "smproxy://crypt1/BASE64URL…"
}
📱
hwid-link
POST /public/hwid-linkREQUEST (cURL)
curl -X POST \
https://provider.smproxy.io/public/hwid-link \
-d 'url=https://example.com/sub/abc123' \
-d 'hwid=A1B2C3D4-5E6F-…'
… OR JSON
curl -X POST \
https://provider.smproxy.io/public/hwid-link \
-H 'Content-Type: application/json' \
-d '{"url":"https://example.com/sub/abc123",
"hwid":"A1B2C3D4-5E6F-…"}'
RESPONSE (200)
{
"link": "smproxy://addhw/BASE64URL…"
}
Parameters
Field
Description
urlSubscription link (required for both)
hwidDevice identifier — only for
hwid-linkThe body is accepted as both
form-urlencoded and application/json. Errors — { "error": "…" } with a 4xx/5xx code.Node.js example
const res = await fetch(
"https://provider.smproxy.io/public/crypto-link",
{
method: "POST",
headers: {
"Content-Type":
"application/x-www-form-urlencoded"
},
body: new URLSearchParams({
url: "https://example.com/sub/abc"
})
}
);
const { link } = await res.json();