nextcloud_server/apps/updatenotification/openapi.json

347 lines
15 KiB
JSON

{
"openapi": "3.0.3",
"info": {
"title": "updatenotification",
"version": "0.0.1",
"description": "Displays update notifications for Nextcloud, app updates, and provides the SSO for the updater.",
"license": {
"name": "agpl"
}
},
"components": {
"securitySchemes": {
"basic_auth": {
"type": "http",
"scheme": "basic"
},
"bearer_auth": {
"type": "http",
"scheme": "bearer"
}
},
"schemas": {
"App": {
"type": "object",
"required": [
"appId",
"appName"
],
"properties": {
"appId": {
"type": "string"
},
"appName": {
"type": "string"
}
}
},
"OCSMeta": {
"type": "object",
"required": [
"status",
"statuscode"
],
"properties": {
"status": {
"type": "string"
},
"statuscode": {
"type": "integer"
},
"message": {
"type": "string"
},
"totalitems": {
"type": "string"
},
"itemsperpage": {
"type": "string"
}
}
}
}
},
"paths": {
"/ocs/v2.php/apps/updatenotification/api/{apiVersion}/applist/{newVersion}": {
"get": {
"operationId": "api-get-app-list",
"summary": "List available updates for apps",
"description": "This endpoint requires admin access",
"tags": [
"api"
],
"security": [
{
"bearer_auth": []
},
{
"basic_auth": []
}
],
"parameters": [
{
"name": "apiVersion",
"in": "path",
"required": true,
"schema": {
"type": "string",
"enum": [
"v1"
],
"default": "v1"
}
},
{
"name": "newVersion",
"in": "path",
"description": "Server version to check updates for",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "OCS-APIRequest",
"in": "header",
"description": "Required to be true for the API request to pass",
"required": true,
"schema": {
"type": "boolean",
"default": true
}
}
],
"responses": {
"200": {
"description": "Apps returned",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"ocs"
],
"properties": {
"ocs": {
"type": "object",
"required": [
"meta",
"data"
],
"properties": {
"meta": {
"$ref": "#/components/schemas/OCSMeta"
},
"data": {
"type": "object",
"required": [
"missing",
"available"
],
"properties": {
"missing": {
"type": "array",
"items": {
"$ref": "#/components/schemas/App"
}
},
"available": {
"type": "array",
"items": {
"$ref": "#/components/schemas/App"
}
}
}
}
}
}
}
}
}
}
},
"404": {
"description": "New versions not found",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"ocs"
],
"properties": {
"ocs": {
"type": "object",
"required": [
"meta",
"data"
],
"properties": {
"meta": {
"$ref": "#/components/schemas/OCSMeta"
},
"data": {
"type": "object",
"required": [
"appstore_disabled"
],
"properties": {
"appstore_disabled": {
"type": "boolean"
},
"already_on_latest": {
"type": "boolean"
}
}
}
}
}
}
}
}
}
}
}
}
},
"/ocs/v2.php/apps/updatenotification/api/{apiVersion}/changelog/{appId}": {
"get": {
"operationId": "api-get-app-changelog-entry",
"summary": "Get changelog entry for an app",
"description": "This endpoint requires admin access",
"tags": [
"api"
],
"security": [
{
"bearer_auth": []
},
{
"basic_auth": []
}
],
"parameters": [
{
"name": "version",
"in": "query",
"description": "The version to search the changelog entry for (defaults to the latest installed)",
"schema": {
"type": "string",
"nullable": true
}
},
{
"name": "apiVersion",
"in": "path",
"required": true,
"schema": {
"type": "string",
"enum": [
"v1"
],
"default": "v1"
}
},
{
"name": "appId",
"in": "path",
"description": "App to search changelog entry for",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "OCS-APIRequest",
"in": "header",
"description": "Required to be true for the API request to pass",
"required": true,
"schema": {
"type": "boolean",
"default": true
}
}
],
"responses": {
"200": {
"description": "Changelog entry returned",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"ocs"
],
"properties": {
"ocs": {
"type": "object",
"required": [
"meta",
"data"
],
"properties": {
"meta": {
"$ref": "#/components/schemas/OCSMeta"
},
"data": {
"type": "object",
"required": [
"appName",
"content",
"version"
],
"properties": {
"appName": {
"type": "string"
},
"content": {
"type": "string"
},
"version": {
"type": "string"
}
}
}
}
}
}
}
}
}
},
"404": {
"description": "No changelog found",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"ocs"
],
"properties": {
"ocs": {
"type": "object",
"required": [
"meta",
"data"
],
"properties": {
"meta": {
"$ref": "#/components/schemas/OCSMeta"
},
"data": {
"type": "object"
}
}
}
}
}
}
}
}
}
}
}
},
"tags": []
}