Psykotic Docs Download

For providers

Integration

What Psykotic sends and reads when it fetches a subscription.

This page is for server owners and providers who want Psykotic to work smoothly with their panel.

Response format

The subscription body can be a Base64-encoded list of keys or a plain list with one key per line. Supported schemes: vless, vmess, trojan, ss, hysteria2 / hy2.

Headers the app reads

HeaderUsage
profile-titleSubscription name shown in the app
subscription-userinfoupload=…; download=…; total=…; expire=… — traffic and expiry
http
HTTP/1.1 200 OK profile-title: My Server subscription-userinfo: upload=0; download=2147483648; total=107374182400; expire=1798761600

HWID and device headers

For panels with device limits (Remnawave and compatible), Psykotic sends these headers with every subscription request:

HeaderValue
x-hwidDevice ID (see below)
x-device-osOperating system, e.g. iOS, Android, Windows
x-ver-osOS version
x-device-modelDevice model
User-AgentPsykotic/x.y.z

On phones the HWID is a SHA-256 hash of the system app identifier (identifierForVendor on iOS, ANDROID_ID on Android), so reinstalling the app doesn’t take a new slot. On desktop it’s a random ID created on first launch. The raw identifier never leaves the device.

These headers go only to the subscription URL the user added. Psykotic Products LTD does not receive them.

Update interval

The app refreshes subscriptions in the background every 12 hours.

Updated 9 November 2026