3x-ui3x-ui

Xray Settings

Xray configuration template, outbound management, Warp/Nord integration, and config testing. All endpoints under /panel/api/xray.

POST
/panel/api/xray/

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/"
{  "success": true,  "obj": {    "xraySetting": "{...raw xray config...}",    "inboundTags": "[\"in-443-tcp\"]",    "clientReverseTags": "[]",    "outboundTestUrl": "https://www.google.com/generate_204"  }}
GET
/panel/api/xray/getDefaultJsonConfig

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Response Body

application/json

curl -X GET "https://example.com/panel/api/xray/getDefaultJsonConfig"
{  "success": true,  "msg": "string",  "obj": null}
GET
/panel/api/xray/getOutboundsTraffic

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Response Body

application/json

curl -X GET "https://example.com/panel/api/xray/getOutboundsTraffic"
{  "success": true,  "msg": "string",  "obj": null}
GET
/panel/api/xray/getXrayResult

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Response Body

application/json

curl -X GET "https://example.com/panel/api/xray/getXrayResult"
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/update

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/update"
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/warp/{action}

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Path Parameters

action*string

data — return Warp stats (quota, remaining). del — delete Warp data. config — return current Warp config. reg — register a new Warp endpoint (sends privateKey, publicKey). license — set a Warp+ license key (sends license).

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/warp/string"
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/nord/{action}

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Path Parameters

action*string

countries — list available countries. servers — list servers in a country (sends countryId). reg — get NordVPN credentials (sends token). setKey — store NordVPN API key (sends key). data — return current NordVPN connection data. del — delete NordVPN data.

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/nord/string"
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/resetOutboundsTraffic

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/resetOutboundsTraffic" \  -H "Content-Type: application/json" \  -d '{}'
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/testOutbound

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/testOutbound" \  -H "Content-Type: application/json" \  -d '{}'
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/testOutbounds

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/testOutbounds" \  -H "Content-Type: application/json" \  -d '{}'
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/balancerStatus

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/balancerStatus" \  -H "Content-Type: application/json" \  -d '{}'
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/balancerOverride

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/balancerOverride" \  -H "Content-Type: application/json" \  -d '{}'
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/routeTest

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/routeTest" \  -H "Content-Type: application/json" \  -d '{}'
{  "success": true,  "msg": "string",  "obj": null}
GET
/panel/api/xray/outbound-subs

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Response Body

application/json

curl -X GET "https://example.com/panel/api/xray/outbound-subs"
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/outbound-subs

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/outbound-subs"
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/outbound-subs/{id}

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Path Parameters

id*integer

Subscription id.

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/outbound-subs/0"
{  "success": true,  "msg": "string",  "obj": null}
DELETE
/panel/api/xray/outbound-subs/{id}

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Path Parameters

id*integer

Subscription id.

Response Body

application/json

curl -X DELETE "https://example.com/panel/api/xray/outbound-subs/0"
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/outbound-subs/{id}/del

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Path Parameters

id*integer

Subscription id.

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/outbound-subs/0/del"
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/outbound-subs/{id}/refresh

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Path Parameters

id*integer

Subscription id.

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/outbound-subs/0/refresh"
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/outbound-subs/{id}/move

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Path Parameters

id*integer

Subscription id.

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/outbound-subs/0/move"
{  "success": true,  "msg": "string",  "obj": null}
POST
/panel/api/xray/outbound-subs/parse

Authorization

AuthorizationBearer <token>

API token from Settings → Security → API Token. Send as Authorization: Bearer <token>.

In: header

Response Body

application/json

curl -X POST "https://example.com/panel/api/xray/outbound-subs/parse"
{  "success": true,  "msg": "string",  "obj": null}