fix(api): correct service and application OpenAPI schemas

This commit is contained in:
Andras Bacsai committed 2026-07-15 12:29:20 +02:00
1 parent 05dc2c65f6
commit 64667574f6
4 files changed
+1255 -44

No files matched your search

+757 -21
View File
@@ -12731,6 +12731,76 @@
"bearerAuth": []
}
]
},
"post": {
"tags": [
"Service applications"
],
"summary": "Get service application logs",
"description": "Get Docker logs for a single compose service container.",
"operationId": "post-service-application-logs-by-service-and-app-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "app_uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "lines",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "Logs.",
"content": {
"application\/json": {
"schema": {
"properties": {
"logs": {
"type": "string"
}
},
"type": "object"
}
}
}
},
"400": {
"$ref": "#\/components\/responses\/400"
},
"401": {
"$ref": "#\/components\/responses\/401"
},
"404": {
"$ref": "#\/components\/responses\/404"
},
"501": {
"description": "Swarm not supported."
}
},
"security": [
{
"bearerAuth": []
}
]
}
},
"\/services\/{uuid}\/applications\/{app_uuid}\/start": {
@@ -12812,6 +12882,84 @@
"bearerAuth": []
}
]
},
"post": {
"tags": [
"Service applications"
],
"summary": "Start or redeploy service application container",
"description": "Runs docker compose up for a single compose service (no-deps), optionally pulling the image and rebuilding.",
"operationId": "post-start-service-application-by-service-and-app-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "app_uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "force",
"in": "query",
"required": false,
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "latest",
"in": "query",
"required": false,
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "Deploy request queued.",
"content": {
"application\/json": {
"schema": {
"properties": {
"message": {
"type": "string"
}
},
"type": "object"
}
}
}
},
"400": {
"$ref": "#\/components\/responses\/400"
},
"401": {
"$ref": "#\/components\/responses\/401"
},
"404": {
"$ref": "#\/components\/responses\/404"
},
"501": {
"description": "Swarm not supported."
}
},
"security": [
{
"bearerAuth": []
}
]
}
},
"\/services\/{uuid}\/applications\/{app_uuid}\/restart": {
@@ -12873,6 +13021,66 @@
"bearerAuth": []
}
]
},
"post": {
"tags": [
"Service applications"
],
"summary": "Restart service application container",
"description": "Restarts a single compose service container.",
"operationId": "post-restart-service-application-by-service-and-app-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "app_uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Restart queued.",
"content": {
"application\/json": {
"schema": {
"properties": {
"message": {
"type": "string"
}
},
"type": "object"
}
}
}
},
"400": {
"$ref": "#\/components\/responses\/400"
},
"401": {
"$ref": "#\/components\/responses\/401"
},
"404": {
"$ref": "#\/components\/responses\/404"
},
"501": {
"description": "Swarm not supported."
}
},
"security": [
{
"bearerAuth": []
}
]
}
},
"\/services\/{uuid}\/applications\/{app_uuid}\/stop": {
@@ -12934,6 +13142,550 @@
"bearerAuth": []
}
]
},
"post": {
"tags": [
"Service applications"
],
"summary": "Stop service application container",
"description": "Stops a single compose service container.",
"operationId": "post-stop-service-application-by-service-and-app-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "app_uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Stop queued.",
"content": {
"application\/json": {
"schema": {
"properties": {
"message": {
"type": "string"
}
},
"type": "object"
}
}
}
},
"400": {
"$ref": "#\/components\/responses\/400"
},
"401": {
"$ref": "#\/components\/responses\/401"
},
"404": {
"$ref": "#\/components\/responses\/404"
},
"501": {
"description": "Swarm not supported."
}
},
"security": [
{
"bearerAuth": []
}
]
}
},
"\/services\/{uuid}\/databases": {
"get": {
"tags": [
"Service databases"
],
"summary": "List service databases",
"description": "List compose databases for a single service.",
"operationId": "list-service-databases-by-service-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"description": "Service UUID.",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Service databases.",
"content": {
"application\/json": {
"schema": {
"type": "array",
"items": {
"type": "object"
}
}
}
}
},
"401": {
"$ref": "#\/components\/responses\/401"
},
"404": {
"$ref": "#\/components\/responses\/404"
}
},
"security": [
{
"bearerAuth": []
}
]
}
},
"\/services\/{uuid}\/databases\/{database_uuid}": {
"get": {
"tags": [
"Service databases"
],
"summary": "Get service database",
"description": "Get a compose database by service UUID and database UUID.",
"operationId": "get-service-database-by-service-and-database-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"description": "Service UUID.",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "database_uuid",
"in": "path",
"description": "Service database UUID.",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Service database.",
"content": {
"application\/json": {
"schema": {
"type": "object"
}
}
}
},
"401": {
"$ref": "#\/components\/responses\/401"
},
"404": {
"$ref": "#\/components\/responses\/404"
}
},
"security": [
{
"bearerAuth": []
}
]
},
"patch": {
"tags": [
"Service databases"
],
"summary": "Update service database",
"description": "Update mutable fields for a compose service database.",
"operationId": "patch-service-database-by-service-and-database-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"description": "Service UUID.",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "database_uuid",
"in": "path",
"description": "Service database UUID.",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application\/json": {
"schema": {
"properties": {
"human_name": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"image": {
"type": "string"
},
"exclude_from_status": {
"type": "boolean"
},
"is_log_drain_enabled": {
"type": "boolean"
},
"is_public": {
"type": "boolean"
},
"public_port": {
"type": [
"integer",
"null"
],
"maximum": 65535,
"minimum": 1
},
"public_port_timeout": {
"type": [
"integer",
"null"
],
"minimum": 1
}
},
"type": "object",
"additionalProperties": false
}
}
}
},
"responses": {
"200": {
"description": "Updated service database.",
"content": {
"application\/json": {
"schema": {
"type": "object"
}
}
}
},
"400": {
"$ref": "#\/components\/responses\/400"
},
"401": {
"$ref": "#\/components\/responses\/401"
},
"404": {
"$ref": "#\/components\/responses\/404"
},
"422": {
"$ref": "#\/components\/responses\/422"
}
},
"security": [
{
"bearerAuth": []
}
]
}
},
"\/services\/{uuid}\/databases\/{database_uuid}\/logs": {
"get": {
"tags": [
"Service databases"
],
"summary": "Get service database logs",
"description": "Get Docker logs for a compose database container.",
"operationId": "get-service-database-logs-by-service-and-database-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "database_uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "lines",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "Logs.",
"content": {
"application\/json": {
"schema": {
"properties": {
"logs": {
"type": "string"
}
},
"type": "object"
}
}
}
},
"400": {
"$ref": "#\/components\/responses\/400"
},
"401": {
"$ref": "#\/components\/responses\/401"
},
"404": {
"$ref": "#\/components\/responses\/404"
},
"501": {
"description": "Swarm not supported."
}
},
"security": [
{
"bearerAuth": []
}
]
}
},
"\/services\/{uuid}\/databases\/{database_uuid}\/start": {
"post": {
"tags": [
"Service databases"
],
"summary": "Start or redeploy service database container",
"description": "Run docker compose up for a single compose database.",
"operationId": "start-service-database-by-service-and-database-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "database_uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "force",
"in": "query",
"required": false,
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "latest",
"in": "query",
"required": false,
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "Deploy request queued.",
"content": {
"application\/json": {
"schema": {
"properties": {
"message": {
"type": "string"
}
},
"type": "object"
}
}
}
},
"400": {
"$ref": "#\/components\/responses\/400"
},
"401": {
"$ref": "#\/components\/responses\/401"
},
"404": {
"$ref": "#\/components\/responses\/404"
},
"501": {
"description": "Swarm not supported."
}
},
"security": [
{
"bearerAuth": []
}
]
}
},
"\/services\/{uuid}\/databases\/{database_uuid}\/restart": {
"post": {
"tags": [
"Service databases"
],
"summary": "Restart service database container",
"description": "Restart a compose database container.",
"operationId": "restart-service-database-by-service-and-database-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "database_uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Restart queued.",
"content": {
"application\/json": {
"schema": {
"properties": {
"message": {
"type": "string"
}
},
"type": "object"
}
}
}
},
"400": {
"$ref": "#\/components\/responses\/400"
},
"401": {
"$ref": "#\/components\/responses\/401"
},
"404": {
"$ref": "#\/components\/responses\/404"
},
"501": {
"description": "Swarm not supported."
}
},
"security": [
{
"bearerAuth": []
}
]
}
},
"\/services\/{uuid}\/databases\/{database_uuid}\/stop": {
"post": {
"tags": [
"Service databases"
],
"summary": "Stop service database container",
"description": "Stop a compose database container.",
"operationId": "stop-service-database-by-service-and-database-uuid",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "database_uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Stop queued.",
"content": {
"application\/json": {
"schema": {
"properties": {
"message": {
"type": "string"
}
},
"type": "object"
}
}
}
},
"400": {
"$ref": "#\/components\/responses\/400"
},
"401": {
"$ref": "#\/components\/responses\/401"
},
"404": {
"$ref": "#\/components\/responses\/404"
},
"501": {
"description": "Swarm not supported."
}
},
"security": [
{
"bearerAuth": []
}
]
}
},
"\/services": {
@@ -13338,26 +14090,6 @@
"type": "string",
"description": "The service description."
},
"project_uuid": {
"type": "string",
"description": "The project UUID."
},
"environment_name": {
"type": "string",
"description": "The environment name."
},
"environment_uuid": {
"type": "string",
"description": "The environment UUID."
},
"server_uuid": {
"type": "string",
"description": "The server UUID."
},
"destination_uuid": {
"type": "string",
"description": "The destination UUID."
},
"instant_deploy": {
"type": "boolean",
"description": "The flag to indicate if the service should be deployed instantly."
@@ -15514,7 +16246,7 @@
"nullable": true,
"description": "Password for HTTP Basic Authentication"
},
"": {
"settings": {
"$ref": "#\/components\/schemas\/ApplicationSetting"
}
},
@@ -16568,6 +17300,10 @@
"name": "Service applications",
"description": "Service applications"
},
{
"name": "Service databases",
"description": "Service databases"
},
{
"name": "Services",
"description": "Services"