fix(openapi): fleshed out admin routes

v1.18.x
Julian Lam 5 years ago
parent 5bcaf71501
commit bae88e089a

@ -2500,34 +2500,118 @@ paths:
get:
tags:
- admin
summary: /api/admin/advanced/hooks
summary: Get active plugin hooks
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "A JSON object containing all hooks with active listeners"
content:
application/json:
schema:
allOf:
- type: object
properties:
hooks:
type: array
items:
type: object
properties:
hookName:
type: string
description: The name of the hook (also the name used in code)
methods:
type: array
items:
type: object
properties:
id:
type: string
description: Plugin listening to this hook
priority:
type: number
description: Priority level, lower priorities are executed earlier
method:
type: string
description: Stringified method for examination
index:
type: string
description: Internal counter used for DOM element ids
index:
type: string
description: Internal counter used for DOM element ids
count:
type: number
description: The number of listeners subscribed to this hook
- $ref: components/schemas/CommonProps.yaml#/CommonProps
/api/admin/advanced/logs:
get:
tags:
- admin
summary: /api/admin/advanced/logs
summary: Get server-side log output
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "A JSON object containing the server-side log"
content:
application/json:
schema:
allOf:
- type: object
properties:
data:
type: string
description: Output of the server-side log file
- $ref: components/schemas/CommonProps.yaml#/CommonProps
/api/admin/advanced/errors:
get:
tags:
- admin
summary: /api/admin/advanced/errors
summary: Get server-side errors
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "A JSON object containing server-side errors"
content:
application/json:
schema:
allOf:
- type: object
properties:
not-found:
type: array
items:
type: object
properties:
value:
type: string
description: Path to the requested URL that returned a 404
score:
type: number
description: The number of times that URL was requested
analytics:
type: object
properties:
not-found:
type: array
description: 404 responses groups by day, from 6 days ago, to present day
items:
type: number
toobusy:
type: array
description: 503 responses groups by day, from 6 days ago, to present day
items:
type: number
- $ref: components/schemas/CommonProps.yaml#/CommonProps
/api/admin/advanced/errors/export:
get:
tags:
- admin
summary: /api/admin/advanced/errors/export
summary: Export errors (.csv)
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "A CSV file containing server-side errors"
content:
text/csv:
schema:
type: string
format: binary
/api/admin/advanced/cache:
get:
tags:
@ -2631,90 +2715,463 @@ paths:
get:
tags:
- admin
summary: /api/admin/development/info
summary: Get process/system information
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "A JSON object containing process and system information"
content:
application/json:
schema:
allOf:
- type: object
properties:
info:
type: array
items:
type: object
properties:
process:
type: object
properties:
port:
type: array
items:
type: number
pid:
type: number
description: Process id
title:
type: number
description: Executable
version:
type: number
description: NodeBB version
memoryUsage:
type: object
properties:
rss:
type: number
heapTotal:
type: number
heapUsed:
type: number
external:
type: number
humanReadable:
type: number
uptime:
type: number
cpuUsage:
type: object
properties:
user:
type: string
system:
type: string
os:
type: object
properties:
hostname:
type: string
type:
type: string
platform:
type: string
arch:
type: string
release:
type: string
load:
type: string
description: CPU load
git:
type: object
properties:
hash:
type: string
branch:
type: string
stats:
type: object
properties:
onlineGuestCount:
type: number
onlineRegisteredCount:
type: number
socketCount:
type: number
users:
type: object
properties:
categories:
type: number
recent:
type: number
unread:
type: number
topics:
type: number
category:
type: number
topics:
type: array
id:
type: string
infoJSON:
type: string
description: "`info`, but stringified"
port:
type: array
description: An array containing the port numbers configured to be used by NodeBB processes
items:
type: number
nodeCount:
type: number
description: The number of NodeBB application processes currently running
timeout:
type: number
ip:
type: string
loggedIn:
type: boolean
relative_path:
type: string
- $ref: components/schemas/CommonProps.yaml#/CommonProps
/api/admin/users/csv:
get:
tags:
- admin
summary: /api/admin/users/csv
summary: Get users export (.csv)
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "A CSV file containing all registered users"
content:
text/csv:
schema:
type: string
format: binary
/api/admin/analytics:
get:
tags:
- admin
summary: /api/admin/analytics
summary: Get site analytics
parameters:
- in: query
name: units
schema:
type: string
enum: [hours, days]
description: Whether to display dashboard data segmented daily or hourly
- in: query
name: until
schema:
type: number
description: A UNIX timestamp denoting the end of the analytics reporting period
- in: query
name: count
schema:
type: number
description: The number of entries to return (e.g. if `units` is `hourly`, and `count` is `24`, the result set will contain 24 hours' worth of analytics)
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "A JSON object containing analytics data"
content:
application/json:
schema:
type: object
properties:
query:
additionalProperties:
description: The query string passed in
result:
type: object
properties:
uniquevisitors:
type: array
items:
type: number
pageviews:
type: array
items:
type: number
pageviews:registered:
type: array
items:
type: number
pageviews:bot:
type: array
items:
type: number
pageviews:guest:
type: array
items:
type: number
/api/admin/category/uploadpicture:
post:
tags:
- admin
summary: /api/admin/category/uploadpicture
summary: Update category picture (via image upload)
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
cid:
type: number
description: Category identifier whose picture will be set after successful upload
example: 1
files:
type: array
items:
type: string
format: binary
required:
- cid
- files
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "Image uploaded"
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The filename
url:
type: string
description: URL of the uploaded image for use client-side
/api/admin/uploadfavicon:
post:
tags:
- admin
summary: /api/admin/uploadfavicon
summary: Upload favicon
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
files:
type: array
items:
type: string
format: binary
required:
- files
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "Image uploaded"
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The filename
url:
type: string
description: URL of the uploaded image for use client-side
/api/admin/uploadTouchIcon:
post:
tags:
- admin
summary: /api/admin/uploadTouchIcon
summary: Upload Touch Icon
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
files:
type: array
items:
type: string
format: binary
required:
- files
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "Image uploaded"
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The filename
url:
type: string
description: URL of the uploaded image for use client-side
/api/admin/uploadlogo:
post:
tags:
- admin
summary: /api/admin/uploadlogo
summary: Upload site logo
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
files:
type: array
items:
type: string
format: binary
required:
- files
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "Image uploaded"
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The filename
url:
type: string
description: URL of the uploaded image for use client-side
/api/admin/uploadOgImage:
post:
tags:
- admin
summary: /api/admin/uploadOgImage
summary: Upload site-wide Open Graph Image
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
files:
type: array
items:
type: string
format: binary
required:
- files
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "Image uploaded"
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The filename
url:
type: string
description: URL of the uploaded image for use client-side
/api/admin/upload/sound:
post:
tags:
- admin
summary: /api/admin/upload/sound
summary: Upload sound file
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
files:
type: array
items:
type: string
format: binary
required:
- files
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "Sound uploaded"
content:
application/json:
schema:
type: object
properties: {}
/api/admin/upload/file:
post:
tags:
- admin
summary: /api/admin/upload/file
summary: Upload a file
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
folder:
type: string
description: The folder to upload the files to (relative to `public/uploads/`)
files:
type: array
items:
type: string
format: binary
required:
- files
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "File uploaded"
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The filename
url:
type: string
description: URL of the uploaded file for use client-side
/api/admin/uploadDefaultAvatar:
post:
tags:
- admin
summary: /api/admin/uploadDefaultAvatar
summary: Upload default avatar
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
files:
type: array
items:
type: string
format: binary
required:
- files
responses:
"418":
description: "TODO: A proper response needs to be added. It is not really a teapot"
"200":
description: "Image uploaded"
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The filename
url:
type: string
description: URL of the uploaded image for use client-side
/api/config:
get:
tags:

Loading…
Cancel
Save