export default { info: { title: 'NocoBase API - Multi-app manager plugin', }, tags: [], paths: { '/applications:list': { get: { tags: ['applications'], description: 'List all applications', responses: { 200: { description: 'ok', content: { 'application/json': { schema: { $ref: '#/components/schemas/application', }, }, }, }, }, }, }, '/applications:create': { post: { tags: ['applications'], description: 'Update application', requestBody: { required: true, content: { 'application/json': { schema: { $ref: '#/components/schemas/applicationFrom', }, }, }, }, responses: { 200: { description: 'ok', content: { 'application/json': { schema: { $ref: '#/components/schemas/application', }, }, }, }, }, }, }, '/applications:update': { post: { tags: ['applications'], description: 'Update application', parameters: [ { name: 'filterByTk', in: 'query', description: 'application name', required: true, schema: { type: 'string', }, }, ], requestBody: { required: true, content: { 'application/json': { schema: { $ref: '#/components/schemas/applicationFrom', }, }, }, }, responses: { 200: { description: 'ok', content: { 'application/json': { schema: { $ref: '#/components/schemas/application', }, }, }, }, }, }, }, '/applications:destroy': { post: { tags: ['applications'], description: 'Delete application', parameters: [ { name: 'filterByTk', in: 'query', description: 'application name', required: true, schema: { type: 'string', }, }, ], responses: { 200: { description: 'ok', }, }, }, }, }, components: { schemas: { applicationFrom: { allOf: [ { $ref: '#/components/schemas/application', }, { type: 'object', properties: { createdAt: { readOnly: true, }, updatedAt: { readOnly: true, }, status: { readOnly: true, }, }, }, ], }, application: { type: 'object', properties: { name: { type: 'string', example: 'app-1', description: "The application's name", }, displayName: { type: 'string', example: 'first application', description: "The application's display name", }, pinned: { type: 'boolean', example: true, description: '是否在菜单上显示', }, cname: { type: 'string', example: 'app-1.example.com', description: 'custom domain of the application', }, status: { type: 'string', example: 'running', description: 'application status', }, options: { type: 'object', properties: { // standaloneDeployment: { // type: 'boolean', // example: true, // description: '是否为独立部署的子应用', // }, autoStart: { type: 'boolean', example: true, description: '应用是否默认跟随主应用启动', }, }, }, createdAt: { type: 'string', format: 'date-time', description: '创建时间', }, updatedAt: { type: 'string', format: 'date-time', description: '更新时间', }, }, }, }, }, };