mirror of
https://github.com/JetSprow/J-Board-Lite.git
synced 2026-05-01 01:14:10 +05:30
docs: update lite deployment and feature docs
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
openapi: 3.1.0
|
||||
info:
|
||||
title: J-Board API
|
||||
version: 0.2.0
|
||||
description: Current J-Board Route Handlers. Node provisioning uses 3x-ui; probe API only accepts latency and trace uploads.
|
||||
title: J-Board Lite API
|
||||
version: 0.3.0
|
||||
description: Current J-Board Lite Route Handlers. Node provisioning uses 3x-ui; the Agent API accepts latency, route trace, and Xray access log uploads.
|
||||
servers:
|
||||
- url: https://your-domain.com
|
||||
security: []
|
||||
@@ -11,8 +11,10 @@ tags:
|
||||
- name: Public
|
||||
- name: Payment
|
||||
- name: Admin
|
||||
- name: Probe
|
||||
- name: Agent
|
||||
- name: Subscription
|
||||
- name: Wallet
|
||||
- name: Support
|
||||
paths:
|
||||
/api/auth/register:
|
||||
post:
|
||||
@@ -82,6 +84,14 @@ paths:
|
||||
get:
|
||||
tags: [Payment]
|
||||
summary: List enabled payment providers
|
||||
parameters:
|
||||
- name: target
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
enum: [order, wallet]
|
||||
description: Use wallet to exclude balance payment from recharge flows.
|
||||
responses:
|
||||
'200':
|
||||
description: Providers
|
||||
@@ -200,10 +210,10 @@ paths:
|
||||
description: SQL file
|
||||
/api/agent/latency:
|
||||
post:
|
||||
tags: [Probe]
|
||||
summary: Upload carrier latency probe results
|
||||
tags: [Agent]
|
||||
summary: Upload carrier latency results
|
||||
security:
|
||||
- probeToken: []
|
||||
- agentToken: []
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
@@ -218,13 +228,13 @@ paths:
|
||||
schema:
|
||||
$ref: '#/components/schemas/OkResponse'
|
||||
'401':
|
||||
description: Invalid probe token
|
||||
description: Invalid agent token
|
||||
/api/agent/trace:
|
||||
post:
|
||||
tags: [Probe]
|
||||
tags: [Agent]
|
||||
summary: Upload carrier route trace results
|
||||
security:
|
||||
- probeToken: []
|
||||
- agentToken: []
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
@@ -239,7 +249,24 @@ paths:
|
||||
schema:
|
||||
$ref: '#/components/schemas/OkResponse'
|
||||
'401':
|
||||
description: Invalid probe token
|
||||
description: Invalid agent token
|
||||
/api/agent/node-access:
|
||||
post:
|
||||
tags: [Agent]
|
||||
summary: Upload aggregated Xray access log events
|
||||
security:
|
||||
- agentToken: []
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/NodeAccessUpload'
|
||||
responses:
|
||||
'200':
|
||||
description: Accepted
|
||||
'401':
|
||||
description: Invalid agent token
|
||||
/api/subscription/{id}:
|
||||
get:
|
||||
tags: [Subscription]
|
||||
@@ -264,7 +291,7 @@ paths:
|
||||
type: string
|
||||
/api/support/attachments/{id}:
|
||||
get:
|
||||
tags: [Subscription]
|
||||
tags: [Support]
|
||||
summary: Download or preview support attachment
|
||||
security:
|
||||
- cookieAuth: []
|
||||
@@ -282,13 +309,99 @@ paths:
|
||||
responses:
|
||||
'200':
|
||||
description: Attachment file
|
||||
/api/subscription/all:
|
||||
get:
|
||||
tags: [Subscription]
|
||||
summary: Download aggregate subscription content
|
||||
security:
|
||||
- cookieAuth: []
|
||||
responses:
|
||||
'200':
|
||||
description: Subscription text
|
||||
content:
|
||||
text/plain:
|
||||
schema:
|
||||
type: string
|
||||
/api/notifications:
|
||||
get:
|
||||
tags: [Subscription]
|
||||
summary: List current user notifications
|
||||
security:
|
||||
- cookieAuth: []
|
||||
responses:
|
||||
'200':
|
||||
description: Notifications
|
||||
/api/wallet/recharge/{id}:
|
||||
get:
|
||||
tags: [Wallet]
|
||||
summary: Get current user's wallet recharge order
|
||||
security:
|
||||
- cookieAuth: []
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
responses:
|
||||
'200':
|
||||
description: Recharge order
|
||||
/api/wallet/recharge/payment/create:
|
||||
post:
|
||||
tags: [Wallet]
|
||||
summary: Create external payment parameters for a wallet recharge order
|
||||
security:
|
||||
- cookieAuth: []
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/CreateWalletRechargePaymentRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Payment created
|
||||
'400':
|
||||
description: Invalid recharge or payment provider
|
||||
/api/wallet/recharge/query/{tradeNo}:
|
||||
get:
|
||||
tags: [Wallet]
|
||||
summary: Query wallet recharge payment by trade number
|
||||
security:
|
||||
- cookieAuth: []
|
||||
parameters:
|
||||
- name: tradeNo
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
responses:
|
||||
'200':
|
||||
description: Recharge payment state
|
||||
/api/wallet/redeem-card:
|
||||
post:
|
||||
tags: [Wallet]
|
||||
summary: Redeem a balance or subscription recharge card
|
||||
security:
|
||||
- cookieAuth: []
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/RedeemRechargeCardRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Redeemed
|
||||
'400':
|
||||
description: Invalid, used, or expired card
|
||||
components:
|
||||
securitySchemes:
|
||||
cookieAuth:
|
||||
type: apiKey
|
||||
in: cookie
|
||||
name: next-auth.session-token
|
||||
probeToken:
|
||||
agentToken:
|
||||
type: http
|
||||
scheme: bearer
|
||||
parameters:
|
||||
@@ -336,7 +449,25 @@ components:
|
||||
type: string
|
||||
provider:
|
||||
type: string
|
||||
channel:
|
||||
type: string
|
||||
required: [orderId, provider]
|
||||
CreateWalletRechargePaymentRequest:
|
||||
type: object
|
||||
properties:
|
||||
rechargeId:
|
||||
type: string
|
||||
provider:
|
||||
type: string
|
||||
channel:
|
||||
type: string
|
||||
required: [rechargeId, provider]
|
||||
RedeemRechargeCardRequest:
|
||||
type: object
|
||||
properties:
|
||||
code:
|
||||
type: string
|
||||
required: [code]
|
||||
LatencyUpload:
|
||||
type: object
|
||||
properties:
|
||||
@@ -383,3 +514,38 @@ components:
|
||||
type: integer
|
||||
required: [carrier, hops]
|
||||
required: [traces]
|
||||
NodeAccessUpload:
|
||||
type: object
|
||||
properties:
|
||||
events:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
clientEmail:
|
||||
type: string
|
||||
sourceIp:
|
||||
type: string
|
||||
inboundTag:
|
||||
type: string
|
||||
network:
|
||||
type: string
|
||||
enum: [tcp, udp]
|
||||
targetHost:
|
||||
type: string
|
||||
targetPort:
|
||||
type: integer
|
||||
action:
|
||||
type: string
|
||||
connectionCount:
|
||||
type: integer
|
||||
uniqueTargetCount:
|
||||
type: integer
|
||||
firstSeenAt:
|
||||
type: string
|
||||
format: date-time
|
||||
lastSeenAt:
|
||||
type: string
|
||||
format: date-time
|
||||
required: [clientEmail, sourceIp, inboundTag, network, action, connectionCount, uniqueTargetCount]
|
||||
required: [events]
|
||||
|
||||
Reference in New Issue
Block a user