add auto swagger

update documentation - still only a temporary solution
This commit is contained in:
Code002Lover Arch Laptop 2023-04-20 10:02:10 +02:00
parent 1ab0379b64
commit 5fd6cbcfe5
23 changed files with 10811 additions and 6176 deletions

143
package-lock.json generated
View File

@ -24,6 +24,7 @@
"newrelic": "^9.11.0",
"sharp": "^0.30.7",
"spdy": "^4.0.2",
"swagger-autogen": "^2.23.1",
"uglify-js": "^3.17.4",
"unsafe_encrypt": "^1.0.4",
"ws": "^8.12.1"
@ -735,6 +736,14 @@
"node": ">=4.0.0"
}
},
"node_modules/deepmerge": {
"version": "4.3.1",
"resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
"integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/denque": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz",
@ -1045,6 +1054,11 @@
"resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
"integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow=="
},
"node_modules/fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
},
"node_modules/function-bind": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
@ -1084,6 +1098,25 @@
"resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
"integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw=="
},
"node_modules/glob": {
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
"dependencies": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^3.1.1",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
},
"engines": {
"node": "*"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/handle-thing": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz",
@ -1257,6 +1290,15 @@
}
]
},
"node_modules/inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
"dependencies": {
"once": "^1.3.0",
"wrappy": "1"
}
},
"node_modules/inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
@ -1328,6 +1370,17 @@
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
"integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA=="
},
"node_modules/json5": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
"integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
"bin": {
"json5": "lib/cli.js"
},
"engines": {
"node": ">=6"
}
},
"node_modules/lodash.camelcase": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz",
@ -1712,6 +1765,14 @@
"tslib": "^2.0.3"
}
},
"node_modules/path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/path-to-regexp": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
@ -2261,6 +2322,28 @@
"node": ">=8"
}
},
"node_modules/swagger-autogen": {
"version": "2.23.1",
"resolved": "https://registry.npmjs.org/swagger-autogen/-/swagger-autogen-2.23.1.tgz",
"integrity": "sha512-tOAb5cOGNPduIHKoOxndCRy2Mrg7xV3O1RerrWExrDxeSTjXhA350pyJd7VUDY6ZO9gbZ34Bjlc5CXkleUgvAQ==",
"dependencies": {
"acorn": "^7.4.1",
"deepmerge": "^4.2.2",
"glob": "^7.1.7",
"json5": "^2.2.3"
}
},
"node_modules/swagger-autogen/node_modules/acorn": {
"version": "7.4.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
"integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
"bin": {
"acorn": "bin/acorn"
},
"engines": {
"node": ">=0.4.0"
}
},
"node_modules/tar-fs": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
@ -3075,6 +3158,11 @@
"resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
"integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA=="
},
"deepmerge": {
"version": "4.3.1",
"resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
"integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A=="
},
"denque": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz",
@ -3320,6 +3408,11 @@
"resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
"integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow=="
},
"fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
},
"function-bind": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
@ -3353,6 +3446,19 @@
"resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
"integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw=="
},
"glob": {
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
"requires": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^3.1.1",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
}
},
"handle-thing": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz",
@ -3477,6 +3583,15 @@
"resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
"integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
},
"inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
"requires": {
"once": "^1.3.0",
"wrappy": "1"
}
},
"inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
@ -3536,6 +3651,11 @@
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
"integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA=="
},
"json5": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
"integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg=="
},
"lodash.camelcase": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz",
@ -3836,6 +3956,11 @@
"tslib": "^2.0.3"
}
},
"path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg=="
},
"path-to-regexp": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
@ -4249,6 +4374,24 @@
"has-flag": "^4.0.0"
}
},
"swagger-autogen": {
"version": "2.23.1",
"resolved": "https://registry.npmjs.org/swagger-autogen/-/swagger-autogen-2.23.1.tgz",
"integrity": "sha512-tOAb5cOGNPduIHKoOxndCRy2Mrg7xV3O1RerrWExrDxeSTjXhA350pyJd7VUDY6ZO9gbZ34Bjlc5CXkleUgvAQ==",
"requires": {
"acorn": "^7.4.1",
"deepmerge": "^4.2.2",
"glob": "^7.1.7",
"json5": "^2.2.3"
},
"dependencies": {
"acorn": {
"version": "7.4.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
"integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A=="
}
}
},
"tar-fs": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",

View File

@ -11,10 +11,11 @@
"hcaptcha": "^0.1.1",
"html-minifier-terser": "^7.1.0",
"lru-cache": "^7.18.3",
"newrelic": "^9.11.0",
"mysql2": "^3.2.0",
"newrelic": "^9.11.0",
"sharp": "^0.30.7",
"spdy": "^4.0.2",
"swagger-autogen": "^2.23.1",
"uglify-js": "^3.17.4",
"unsafe_encrypt": "^1.0.4",
"ws": "^8.12.1"

View File

@ -155,8 +155,8 @@
"level": 5
},
"ssl": {
"privateKey": "./etc/letsencrypt/live/ipost.rocks/privkey.pem",
"certificate" : "./etc/letsencrypt/live/ipost.rocks/fullchain.pem"
"privateKey": "/etc/letsencrypt/live/ipost.rocks-0002/privkey.pem",
"certificate" : "/etc/letsencrypt/live/ipost.rocks-0002/fullchain.pem"
},
"ports": {
"http": 9999,

36
swagger.cjs Normal file
View File

@ -0,0 +1,36 @@
const fs = require('fs');
const swaggerAutogen = require('swagger-autogen')();
const doc = {
info: {
title: 'IPost API',
description: 'the official IPost.rocks API documentation',
},
host: 'ipost.rocks',
schemes: ['https'],
};
const outputFile = './swagger-output.json';
const endpointsFiles = ['./server.js'];
function pushdirectory(currentpath) {
fs.readdirSync(currentpath, {
withFileTypes: true
}).forEach(dirent => {
if (dirent.isFile()) {
endpointsFiles.push(currentpath + dirent.name);
} else {
pushdirectory(currentpath + dirent.name + "/");
}
});
}
pushdirectory("./routes/");
console.log(endpointsFiles)
/* NOTE: if you use the express Router, you must pass in the
'endpointsFiles' only the root file where the route starts,
such as index.js, app.js, routes.js, ... */
swaggerAutogen(outputFile, endpointsFiles, doc);

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,312 @@
.line-numbers {
margin-right: 1.0em;
}
.content {
padding-bottom: 100px;
}
.column_header_name {
width: 150px;
}
.column_header_path {
width: 350px;
}
.column_header_name .column_header_param_type .column_header_data_type .column_header_return_type {
width: 200px;
}
.expandable {
display: none;
}
.main_content {
margin-top: 80px;
margin-left: 25px;
margin-right: 25px;
}
.model {
float: left;
}
.model-container {
float: left;
width: 500px;
padding: 0px;
}
.model-detail-container {
clear: left;
float: left;
width: 500px;
margin-left: 40px;
}
.model-detail-popup {
box-shadow: rgba(0, 0, 0, 0.2) 0 2px 8px 5px;
border-style: solid;
border-width: 1px;
border-color: black;
padding-left: 10px;
padding-right: 10px;
padding-top: 10px;
padding-bottom: 10px;
background-color: white;
opacity: 0.99;
z-index: 1;
overflow: scroll;
width: 400px;
}
.model-detail-popup .code {
background-color: #E4F5FF;
font-family: monospace;
white-space: pre;
margin: 10px;
overflow: auto;
}
.model-detail-popup h2 {
margin-top: 0px;
padding-top: 0px;
}
.model-detail-popup li {
padding-bottom: 5px;
}
.model-detail-popup .param-reqiured-true {
font-family: monospace;
font-weight: bold;
clear: left;
display: block;
float: left;
width: 100%;
}
.model-detail-popup .param-required-false {
font-family: monospace;
clear: left;
display: block;
float: left;
width: 100%;
}
.model-detail-popup .param-description {
margin-left: 50px;
float: left;
}
.param-enum {
margin-left: 20px;
}
.section-header {
border-bottom: 2px;
font-weight: bold;
font-size: 15px;
padding: 6px 0;
color: rgb(57,57,57);
}
.content {
padding-top: 100px;
}
.content h1 {
font-size: 43px;
text-align: center;
margin-top: 40px;
margin-bottom: 40px;
}
.sidebar {
box-sizing: border-box;
float: left;
display: block;
width: 240px;
overflow: scroll;
position: fixed;
}
.section-box {
border-bottom-style: solid;
border-bottom: 10px;
}
.section-box ul li {
list-style: none;
margin-left: 0px;
}
.non-sidebar {
box-sizing: border-box;
display: block;
margin-left: 240px;
margin-right: 0px;
width: 638px;
}
.non-sidebar h2 {
clear: left;
padding-top: 20px;
}
li.parameter {
list-style: none;
display: block;
padding-left: 1em;
}
.param{
display: block;
}
.param-name {
margin-left: 1em;
}
.param-in {
font-weight: bold;
font-size: 1.1em;
}
.param-type {
margin-left: 1em;
font-style: italic;
}
.param-description {
display: block;
font-family: 'Helvetica Neue', Arial, 'Liberation Sans', FreeSans, sans-serif;
}
.param-optional-flag {
font-style: italic;
}
.section {
font-weight: normal;
clear: left;
}
.section a {
text-decoration: underline;
}
.code {
background-color: #E4F5FF;
font-family: monospace;
white-space: pre;
margin: 10px;
overflow: auto;
width: 600px;
}
.header {
position: fixed;
text-align: left;
background-color: black;
float: left;
top: 0;
width: 100%;
height: 70px auto;
padding-bottom: 20px;
box-shadow: rgba(0, 0, 0, 0.2) 0 2px 8px 5px;
}
.top-bar h1 a {
width: auto;
}
.top-bar h1#logo a {
width: auto;
display: block;
clear: none;
float: left;
background-position: left;;
color: white;
text-decoration: none;
}
.top-bar ul li {
list-style: none;
}
.top-bar h1#logo span {
display: block;
clear: none;
float: left;
padding-top: 10px;
padding-left: 10px;
margin: 0px;
}
.top-bar h1#logo a span.light {
color: #ffc97a;
color: #666666;
padding-left: 0px;
}
.top-bar ul#nav {
float: none;
clear: both;
overflow: hidden;
margin: 0;
padding: 0;
display: block;
float: right;
clear: none;
}
.top-bar ul#nav li {
float: left;
clear: none;
margin: 0;
padding: 2px 10px;
border-right: 1px solid #dddddd;
}
.top-bar ul#nav li:first-child, .top-bar ul#nav li.first {
padding-left: 0;
}
.top-bar ul#nav li:last-child, .top-bar ul#nav li.last {
padding-right: 0;
border-right: none;
}
.top-bar ul#nav li {
border: none;
padding: 0 5px;
}
.top-bar ul#nav li a {
display: block;
padding: 8px 10px 8px 10px;
color: #999999;
text-decoration: none;
}
.top-bar ul#nav li a.strong {
color: white;
}
.top-bar ul#nav li a:active, .top-bar ul#nav li a.active, .top-bar ul#nav li a:hover {
-moz-border-radius: 4px;
-webkit-border-radius: 4px;
-o-border-radius: 4px;
-ms-border-radius: 4px;
-khtml-border-radius: 4px;
border-radius: 4px;
background-image: -webkit-gradient(linear, 0% 100%, 0% 0%, color-stop(0%, #ff5401), color-stop(100%, #ffa014));
background-image: -moz-linear-gradient(bottom, #ff5401 0%, #ffa014 100%);
background-image: linear-gradient(bottom, #ff5401 0%, #ffa014 100%);
color: white;
}
.top-bar ul#nav:hover li {
border-color: #222222;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,70 @@
window.onhashchange = function() {
choose(window.location.href.toString());
}
var selectionImage;
function choose(url) {
var f = url.split("/").slice(-1)[0].split("?")[0];
if(f.match(/#/g) && f.match(/#/g).length > 0) {
f = f.split("#")[0];
}
$('div.non-sidebar').empty();
$('div.non-sidebar').load("operations/" + f + ".html", function(){
goToAnchor();
// rebind the models
$(".model a").on("click", function(e){
e.preventDefault();
var model = $(this).parent().attr("data-model")
var parentOffset = $(this).parent().offset();
var encodedWord = encodeURI(model);
if(!selectionImage) {
selectionImage = $('<div>').attr({
title: 'Model detail',
target: '_blank',
class: 'model-detail-popup'
}).hide();
$('div.model-container').append(selectionImage);
}
selectionImage.load("models/" + encodedWord + ".html")
selectionImage.attr('href',url.replace('{term}',encodeURI(model))).css({
left: e.pageX + 20,
top: e.pageY - 10,
position: "absolute"
}).fadeIn();
})
});
$("body").on("click",function(e) {
var target = $(e.target);
if (target.parents(".model-detail-popup").length == 0 && target.parents('.model').length != 1) {
if(document.querySelector('.model-detail-popup')) {
document.querySelector('.model-detail-popup').style.display = 'none';
}
}
});
}
function goToAnchor() {
var doARead = $($('a')[0]).offset();
var anchorArr = window.location.href.toString().split("#");
if(anchorArr.length > 2) {
var anchor = anchorArr[anchorArr.length-1];
window.scrollTo(0,$('a[name='+anchor+']').offset().top - 80);
}
}
function resize()
{
$(".sidebar").css('height', $(window).height() -60);
$("#content-window").css('height', $(window).height() -60);
}
$(function(){
window.onresize = resize;
resize();
$(window).bind('hashchange', function() {
choose(window.location.href.toString());
});
});

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,12 @@
<h2>Api_changePW_body</h2>
<ul class="parameter">
<li class="param-required-false">newPW : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">currentPW : Object
<br/>
</li>
</ul>

View File

@ -0,0 +1,12 @@
<h2>Api_changeUsername_body</h2>
<ul class="parameter">
<li class="param-required-false">newUsername : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">currentPW : Object
<br/>
</li>
</ul>

View File

@ -0,0 +1,22 @@
<h2>Api_post_body</h2>
<ul class="parameter">
<li class="param-required-false">message : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">pid : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">reply_id : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">receiver : Object
<br/>
</li>
</ul>

View File

@ -0,0 +1,7 @@
<h2>Api_setBio_body</h2>
<ul class="parameter">
<li class="param-required-false">Bio : Object
<br/>
</li>
</ul>

View File

@ -0,0 +1,12 @@
<h2>Api_settings_body</h2>
<ul class="parameter">
<li class="param-required-false">setting : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">value : Object
<br/>
</li>
</ul>

View File

@ -0,0 +1,12 @@
<h2>Authorize_body</h2>
<ul class="parameter">
<li class="param-required-false">application_id : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">application_extra : Object
<br/>
</li>
</ul>

View File

@ -0,0 +1,22 @@
<h2>Dms_post_body</h2>
<ul class="parameter">
<li class="param-required-false">message : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">pid : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">reply_id : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">receiver : Object
<br/>
</li>
</ul>

View File

@ -0,0 +1,17 @@
<h2>Login_body</h2>
<ul class="parameter">
<li class="param-required-false">user : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">pass : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">r : Object
<br/>
</li>
</ul>

View File

@ -0,0 +1,12 @@
<h2>Redeemauthcode_body</h2>
<ul class="parameter">
<li class="param-required-false">authcode : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">auth : Object
<br/>
</li>
</ul>

View File

@ -0,0 +1,17 @@
<h2>Register_body</h2>
<ul class="parameter">
<li class="param-required-false">user : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">pass : Object
<br/>
</li>
</ul>
<ul class="parameter">
<li class="param-required-false">r : Object
<br/>
</li>
</ul>

View File

@ -0,0 +1,717 @@
<div class="main-content">
<h2><a name=""></a></h2>
<p>This is the API</p>
<h2><a name="apiChangePWPost"></a>apiChangePWPost</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/changePW</code>
<h3 class="section">HTTP Method</h3>
<code>POST</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Body: </span>
<span class="param-name">body</span>
<span class="param-type">Api_changePW_body(Api_changePW_body)</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiChangeUsernamePost"></a>apiChangeUsernamePost</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/changeUsername</code>
<h3 class="section">HTTP Method</h3>
<code>POST</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Body: </span>
<span class="param-name">body</span>
<span class="param-type">Api_changeUsername_body(Api_changeUsername_body)</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiDmsConversationsGet"></a>apiDmsConversationsGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/dms/conversations</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="apiDmsEncryptJsGet"></a>apiDmsEncryptJsGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/dms/encrypt.js</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="apiDmsGetDMGet"></a>apiDmsGetDMGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/dms/getDM</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Query: </span>
<span class="param-name">id</span>
<span class="param-type">String</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiDmsPidGet"></a>apiDmsPidGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/dms/pid</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="apiDmsPostPost"></a>apiDmsPostPost</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/dms/post</code>
<h3 class="section">HTTP Method</h3>
<code>POST</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Body: </span>
<span class="param-name">body</span>
<span class="param-type">Dms_post_body(Dms_post_body)</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiGetChannelsGet"></a>apiGetChannelsGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/getChannels</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Header: </span>
<span class="param-name">host</span>
<span class="param-type">String</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiGetFileIconGet"></a>apiGetFileIconGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/getFileIcon/*</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="apiGetPersonalPostsGet"></a>apiGetPersonalPostsGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/getPersonalPosts</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Query: </span>
<span class="param-name">otherperson</span>
<span class="param-type">String</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiGetPostGet"></a>apiGetPostGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/getPost</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Query: </span>
<span class="param-name">id</span>
<span class="param-type">String</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiGetPostsGet"></a>apiGetPostsGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/getPosts/*</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="apiGetPostsGet_1"></a>apiGetPostsGet_1</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/getPosts</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Query: </span>
<span class="param-name">channel</span>
<span class="param-type">String</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiGetPostsLowerThanGet"></a>apiGetPostsLowerThanGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/getPostsLowerThan</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Query: </span>
<span class="param-name">channel</span>
<span class="param-type">String</span>
<p class="param-description"></p>
</li>
<li class="parameter">
<span class="param-in">Query: </span>
<span class="param-name">id</span>
<span class="param-type">String</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiGetalluserinformationGet"></a>apiGetalluserinformationGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/getalluserinformation</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="apiGetotheruserGet"></a>apiGetotheruserGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/getotheruser</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Query: </span>
<span class="param-name">user</span>
<span class="param-type">String</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiGetuserGet"></a>apiGetuserGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/getuser</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="apiPidGet"></a>apiPidGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/pid</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="apiPostPost"></a>apiPostPost</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/post</code>
<h3 class="section">HTTP Method</h3>
<code>POST</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Body: </span>
<span class="param-name">body</span>
<span class="param-type">Api_post_body(Api_post_body)</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiSearchGet"></a>apiSearchGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/search</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Query: </span>
<span class="param-name">type</span>
<span class="param-type">String</span>
<p class="param-description"></p>
</li>
<li class="parameter">
<span class="param-in">Query: </span>
<span class="param-name">selector</span>
<span class="param-type">String</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiSetBioPost"></a>apiSetBioPost</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/setBio</code>
<h3 class="section">HTTP Method</h3>
<code>POST</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Body: </span>
<span class="param-name">body</span>
<span class="param-type">Api_setBio_body(Api_setBio_body)</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="apiSetavatarPost"></a>apiSetavatarPost</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/setavatar</code>
<h3 class="section">HTTP Method</h3>
<code>POST</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="apiSettingsGet"></a>apiSettingsGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/settings</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="apiSettingsPost"></a>apiSettingsPost</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//api/settings</code>
<h3 class="section">HTTP Method</h3>
<code>POST</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Body: </span>
<span class="param-name">body</span>
<span class="param-type">Api_settings_body(Api_settings_body)</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="authorizePost"></a>authorizePost</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//authorize</code>
<h3 class="section">HTTP Method</h3>
<code>POST</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Body: </span>
<span class="param-name">body</span>
<span class="param-type">Authorize_body(Authorize_body)</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="avatarsGet"></a>avatarsGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//avatars/*</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="cssGet"></a>cssGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//css/*</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="get"></a>get</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//*</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Query: </span>
<span class="param-name">id</span>
<span class="param-type">String</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="imagesGet"></a>imagesGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//images/*</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="jsGet"></a>jsGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//js/*</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="loginPost"></a>loginPost</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//login</code>
<h3 class="section">HTTP Method</h3>
<code>POST</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Body: </span>
<span class="param-name">body</span>
<span class="param-type">Login_body(Login_body)</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="logoutGet"></a>logoutGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//logout</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="redeemauthcodePost"></a>redeemauthcodePost</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//redeemauthcode</code>
<h3 class="section">HTTP Method</h3>
<code>POST</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Body: </span>
<span class="param-name">body</span>
<span class="param-type">Redeemauthcode_body(Redeemauthcode_body)</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="registerPost"></a>registerPost</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//register</code>
<h3 class="section">HTTP Method</h3>
<code>POST</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
<li class="parameter">
<span class="param-in">Body: </span>
<span class="param-name">body</span>
<span class="param-type">Register_body(Register_body)</span>
<p class="param-description"></p>
</li>
</ul>
<h2><a name="rootGet"></a>rootGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="userUploadsGet"></a>userUploadsGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//user_uploads/*</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
<h2><a name="usersGet"></a>usersGet</h2>
<hr>
<p></p>
<h3 class="section">URL</h3>
<code>https://ipost.rocks//users/*</code>
<h3 class="section">HTTP Method</h3>
<code>GET</code>
<h3 class="section">Response Type</h3>
<div class="model" data-model=""><a href=""></a></div>
<h3 class="section">Parameters</h3>
<ul>
</ul>
</div>