openapi: 3.0.1 info: title: # Title of API version: # Version of API servers: - url: / # The "url: " prefix is required paths: /api/login: post: tags: - Login requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: username: type: string password: type: string securitycode: type: string expire: type: string permission: type: string required: - username - password responses: '200': description: Success '/api/list/{table}': get: tags: - List summary: List records from a table parameters: - name: table in: path required: true schema: type: string - name: page in: query required: false schema: type: string - name: start in: query required: false schema: type: string responses: '200': description: Success '/api/view/{table}/{key}': get: tags: - View summary: View a record from a table parameters: - name: table in: path required: true schema: type: string - name: key in: path required: true schema: type: string responses: '200': description: Success '/api/add/{table}': post: tags: - Add summary: Add a record to a table parameters: - name: table in: path required: true schema: type: string requestBody: required: true description: '*Note: Enter values as JSON, e.g. {"name1": "value1", "name2": "value2", ... }, make sure you double quote the field names.' content: application/json: schema: type: object responses: '200': description: Success '/api/delete/{table}/{key}': get: tags: - Delete summary: Delete a record from a table parameters: - name: table in: path required: true schema: type: string - name: key in: path required: true schema: type: string responses: '200': description: Success '/api/delete/{table}': post: tags: - Delete summary: Delete multiple records from a table parameters: - name: table in: path required: true schema: type: string requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object properties: key_m[]: type: array items: type: string encoding: # Don't percent-encode reserved characters in the values of "bar" and "baz" fields key_m[]: allowReserved: true responses: '200': description: Success '/api/edit/{table}/{key}': post: tags: - Edit summary: Edit a record in a table parameters: - name: table in: path required: true schema: type: string - name: key in: path required: true schema: type: string requestBody: required: true description: '*Note: Enter values as JSON, e.g. {"name1": "value1", "name2": "value2", ... }, make sure you double quote the field names.' content: application/json: schema: type: object responses: '200': description: Success '/api/file/{table}/{field}/{key}': get: tags: - File summary: Get file(s) info from a table by primary key parameters: - name: table in: path required: true schema: type: string - name: field in: path required: true schema: type: string - name: key in: path required: true schema: type: string responses: '200': description: Success '/api/file/{table}/{fn}': get: tags: - File summary: Get a file from a table by encrypted file path parameters: - name: table in: path required: true schema: type: string - name: fn in: path required: true schema: type: string responses: '200': description: Success '/api/export/search': get: tags: - Export summary: Search export log parameters: - name: limit in: query required: false schema: type: string - name: type in: query required: false schema: type: string - name: tablename in: query required: false schema: type: string - name: filename in: query required: false schema: type: string - name: datetime in: query required: false schema: type: string - name: output in: query required: false schema: type: string responses: '200': description: Success '/api/export/{id}': get: tags: - Export summary: Get Exported file parameters: - name: id in: path required: true schema: type: string - name: filename in: query required: false schema: type: string responses: '200': description: Success '/api/export/{type}/{table}': get: tags: - Export summary: Export records from a table parameters: - name: type in: path required: true schema: type: string - name: table in: path required: true schema: type: string - name: key in: query required: false schema: type: string - name: page in: query required: false schema: type: string - name: recperpage in: query required: false schema: type: string - name: filename in: query required: false schema: type: string - name: save in: query required: false schema: type: string - name: output in: query required: false schema: type: string responses: '200': description: Success '/api/permissions/{userlevel}': get: tags: - Permissions summary: Get permissions of a user level parameters: - name: userlevel in: path required: true schema: type: string responses: '200': description: Success post: tags: - Permissions summary: Update permissions of a user level parameters: - name: userlevel in: path required: true schema: type: string requestBody: required: true description: '*Note: Enter values as JSON, e.g. {"name1": value1, "name2": value2, ... }, make sure you double quote the table names.' content: application/json: schema: type: object responses: '200': description: Success /api/register: post: tags: - Register summary: Register a new user requestBody: required: true description: '*Note: Enter values as JSON, e.g. {"name1": "value1", "name2": "value2", ... }, make sure you double quote the field names.' content: application/json: schema: type: object responses: '200': description: Success /api/upload: post: tags: - Upload summary: Upload file(s) requestBody: content: multipart/form-data: schema: type: object properties: files[]: type: array items: type: string format: binary encoding: files[]: allowReserved: true responses: '200': description: Success components: securitySchemes: Bearer: type: apiKey description: '*Note: Login to get your the JWT token first, then enter "Bearer <JWT Token>" below, e.g.
Bearer 123456abcdef' name: X-Authorization # PHP in: header security: - Bearer: []