### GET /api/services/{id}/vps/os-templates Source: https://nodesty.com/api/_openapi Retrieves a list of available operating system templates that can be installed on a Virtual Private Server (VPS). ```APIDOC ## GET /api/services/{id}/vps/os-templates ### Description Get available OS templates for a VPS. ### Method GET ### Endpoint /api/services/{id}/vps/os-templates ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Header Parameters - **Authorization** (string) - Required - Personal Access Token (e.g., "PAT ") ### Response #### Success Response (200) - **id** (integer) - OS version ID - **name** (string) - OS version name #### Response Example (200) ```json [ { "id": 1, "name": "Debian 9.5" }, { "id": 2, "name": "Ubuntu 20.04 LTS" } ] ``` #### Error Response (404) - **message** (string) - Error message #### Response Example (404) ```json { "message": "VPS not found" } ``` ``` -------------------------------- ### GET /api/services/{id}/dedicated/os-templates Source: https://nodesty.com/api/_openapi Retrieve a list of available operating system templates that can be installed on a dedicated server. ```APIDOC ## GET /api/services/{id}/dedicated/os-templates ### Description Retrieve a list of available OS templates. ### Method GET ### Endpoint /api/services/{id}/dedicated/os-templates ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Query Parameters #### Request Body (None) ### Request Example (None) ### Response #### Success Response (200) - **id** (integer) - OS version ID - **name** (string) - OS version name #### Response Example ```json [ { "id": 1, "name": "Debian 9.5" } ] ``` #### Error Response (404) - **message** (string) - Description of the error (e.g., "Dedicated server not found") ``` -------------------------------- ### GET /api/services/os-templates Source: https://nodesty.com/api/_openapi Retrieves a list of available OS templates for dedicated servers. This can be used to determine which operating systems can be installed on a dedicated server. ```APIDOC ## GET /api/services/os-templates ### Description Get available OS templates for a dedicated server. ### Method GET ### Endpoint /api/services/os-templates ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **message** (string) - Description of the OS template (e.g., "Ubuntu 20.04 LTS") #### Response Example { "content": [ { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" } } } } } ], "summary": "Get OS Templates", "description": "Get available OS templates for a dedicated server" } ``` -------------------------------- ### Get OS Templates Source: https://nodesty.com/api/_openapi Retrieves a list of available OS templates for dedicated servers. This endpoint is useful for determining which operating systems can be installed on a server. ```shell GET https://api.nodesty.com/api/services/os-templates Header: Authorization: PAT ``` -------------------------------- ### Get OS Templates for Dedicated Server (GET) Source: https://nodesty.com/api/_openapi Retrieves a list of available operating system templates for a dedicated server. Requires a service ID and Authorization token. Returns OS templates with their IDs and names. ```json { "openapi": "3.1.0", "info": { "title": "API Docs | Nodesty", "description": "API Documentation for Nodesty." }, "servers": [ { "url": "https://nodesty.com", "description": "Local Development Server", "variables": {} } ], "paths": { "/api/services/{id}/dedicated/os-templates": { "get": { "tags": [ "Dedicated Server" ], "parameters": [ { "in": "header", "name": "Authorization", "description": "Personal Access Token", "schema": { "type": "string", "example": "PAT " }, "required": true }, { "in": "path", "name": "id", "description": "Service ID", "required": true, "schema": { "type": "string", "example": "1" } } ], "responses": { "200": { "description": "List of available OS templates", "content": { "application/json": { "schema": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "integer", "description": "OS version ID", "example": 1 }, "name": { "type": "string", "description": "OS version name", "example": "Debian 9.5" } } } } } } }, "404": { "description": "Dedicated" } } } } } } ``` -------------------------------- ### GET /api/services/{id}/dedicated/tasks Source: https://nodesty.com/api/_openapi Retrieves a list of tasks associated with a dedicated server. Each task includes its description, start time, and last update time. ```APIDOC ## GET /api/services/{id}/dedicated/tasks ### Description Get dedicated server tasks. ### Method GET ### Endpoint /api/services/{id}/dedicated/tasks ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **action** (string) - Description of the task action (e.g., "Server reboot initiated") - **startedAt** (integer) - Unix timestamp when the task started - **updatedAt** (integer) - Unix timestamp when the task was last updated #### Response Example ```json [ { "action": "Server reboot initiated", "startedAt": 1625251200000, "updatedAt": 1625254800000 } ] ``` ``` -------------------------------- ### GET /api/services/{id}/dedicated/info Source: https://nodesty.com/api/_openapi Get general information about a dedicated server, including its status, available actions, and hardware specifications. ```APIDOC ## GET /api/services/{id}/dedicated/info ### Description Get information about a dedicated server. ### Method GET ### Endpoint /api/services/{id}/dedicated/info ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Query Parameters #### Request Body (None) ### Request Example (None) ### Response #### Success Response (200) - **dedicatedId** (string) - Unique identifier for the dedicated server - **status** (boolean) - Current status of the dedicated server - **availableActions** (array) - List of available actions for the dedicated server - **mainboard** (string) - Model of the mainboard - **ram** (integer) - Amount of RAM in GB - **disk** (integer) - Total disk space in GB - **cpu** (object) - CPU details: - **model** (string) - Model of the CPU - **speed** (integer) - Base speed of the CPU in MHz - **turboSpeed** (integer) - Turbo speed of the CPU in MHz - **cores** (integer) - Number of CPU cores - **threads** (integer) - Number of CPU threads #### Response Example ```json { "dedicatedId": "1", "status": true, "availableActions": [ "setPowerOn", "setPowerOff", "setPowerReset" ], "mainboard": "ASUS ROG Strix X570-E Gaming", "ram": 128, "disk": 1000, "cpu": { "model": "AMD Ryzen 9 5950X", "speed": 3500, "turboSpeed": 4900, "cores": 16, "threads": 32 } } ``` #### Error Response (404) - **message** (string) - Description of the error (e.g., "Dedicated server not found") ``` -------------------------------- ### VPS Action API Source: https://nodesty.com/api/_openapi Perform actions such as starting, stopping, resetting, or shutting down a Virtual Private Server (VPS). ```APIDOC ## POST /api/services/{id}/vps/action ### Description Perform an action on a VPS. ### Method POST ### Endpoint /api/services/{id}/vps/action ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Header Parameters - **Authorization** (string) - Required - Personal Access Token. Example: "PAT " #### Request Body - **action** (string) - Required - Action to perform on the VPS. Enum: "start", "shutdown", "reset", "stop". Example: "start" ### Request Example ```json { "action": "start" } ``` ### Response #### Success Response (204) - Action executed successfully. #### Error Response (404) - **message** (string) - VPS not found. #### Response Example ```json { "message": "VPS not found" } ``` ``` -------------------------------- ### Get Dedicated Server Hardware Components (GET) Source: https://nodesty.com/api/_openapi Retrieves a list of hardware components for a specific dedicated server. Requires a service ID and a valid Authorization token. Returns component details like name, model, value, and unit. ```json { "openapi": "3.1.0", "info": { "title": "API Docs | Nodesty", "description": "API Documentation for Nodesty." }, "servers": [ { "url": "https://nodesty.com", "description": "Local Development Server", "variables": {} } ], "paths": { "/api/services/{id}/dedicated/hardware": { "get": { "tags": [ "Dedicated Server" ], "parameters": [ { "in": "header", "name": "Authorization", "description": "Personal Access Token", "schema": { "type": "string", "example": "PAT " }, "required": true }, { "in": "path", "name": "id", "description": "Service ID", "required": true, "schema": { "type": "string", "example": "1" } } ], "responses": { "200": { "description": "List of hardware components for the dedicated server", "content": { "application/json": { "schema": { "type": "array", "items": { "type": "object", "properties": { "component": { "type": "string", "description": "Hardware component name", "example": "CPU Model" }, "model": { "type": "string", "description": "Model of the hardware component", "example": "AMD Ryzen 9 9950X" }, "value": { "type": "integer", "description": "Value of the hardware component", "example": 5000 }, "valueSuffix": { "type": "string", "description": "Unit of the value", "example": " MHz" } } } } } } }, "404": { "description": "Dedicated server not found", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" } } } } } } }, "summary": "Get Hardware Components", "description": "Retrieve hardware components of a dedicated server" } } } } ``` -------------------------------- ### GET /api/services/{id}/dedicated/hardware Source: https://nodesty.com/api/_openapi Retrieve a list of hardware components and their details for a specific dedicated server. ```APIDOC ## GET /api/services/{id}/dedicated/hardware ### Description Retrieve hardware components of a dedicated server. ### Method GET ### Endpoint /api/services/{id}/dedicated/hardware ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Query Parameters #### Request Body (None) ### Request Example (None) ### Response #### Success Response (200) - **component** (string) - Hardware component name - **model** (string) - Model of the hardware component - **value** (integer) - Value of the hardware component - **valueSuffix** (string) - Unit of the value #### Response Example ```json [ { "component": "CPU Model", "model": "AMD Ryzen 9 9950X", "value": 5000, "valueSuffix": " MHz" } ] ``` #### Error Response (404) - **message** (string) - Description of the error (e.g., "Dedicated server not found") ``` -------------------------------- ### GET /api/services/{id}/mail/info Source: https://nodesty.com/api/_openapi Get information about the mail hosting service. ```APIDOC ## GET /api/services/{id}/mail/info ### Description Get information about the mail hosting service. ### Method GET ### Endpoint /api/services/{id}/mail/info ### Parameters #### Path Parameters - **id** (string) - Required - Service ID ### Response #### Success Response (200) - Description: Information about the mail hosting service ``` -------------------------------- ### Get VPS Tasks Source: https://nodesty.com/api/_openapi Retrieves a list of tasks associated with a specific Virtual Private Server (VPS). Requires a valid personal access token for authentication. The response includes the action performed, status, and timestamps for task start and end. ```openapi { "/api/services/{id}/tasks": { "get": { "tags": [ "User" ], "parameters": [ { "in": "header", "name": "Authorization", "description": "Personal Access Token", "required": true, "schema": { "type": "string", "example": "PAT " } }, { "in": "path", "name": "id", "description": "Service ID", "required": true, "schema": { "type": "string", "example": "1" } } ], "responses": { "200": { "description": "List of VPS tasks", "content": { "application/json": { "schema": { "type": "array", "items": { "type": "object", "properties": { "action": { "type": "string", "description": "Action of the task", "example": "qmshutdown" }, "status": { "type": "string", "description": "Status of the task", "example": "OK" }, "startedAt": { "type": "integer", "description": "Unix timestamp when the task started", "example": 1625251200000 }, "endedAt": { "type": "integer", "description": "Unix timestamp when the task ended or null if not ended", "nullable": true, "example": 1625254800000 } } } } } } }, "404": { "description": "VPS not found", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" } } } } } } }, "summary": "Get Tasks", "description": "Get VPS tasks" } } } ``` -------------------------------- ### Get Backups Source: https://nodesty.com/api/_openapi Retrieves a list of available backups for a specified VPS. Each backup entry includes the filename, notes, and creation timestamp. ```APIDOC ## GET /api/services/{id}/vps/backups ### Description Get VPS backups. ### Method GET ### Endpoint /api/services/{id}/vps/backups ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Header Parameters - **Authorization** (string) - Required - Personal Access Token (e.g., PAT ) ### Response #### Success Response (200) - Content: Array of backup objects - **file** (string) - Name of the backup file (e.g., "backup-pool:backup/vm/2702/2025-08-09T18:11:41Z") - **notes** (string) - Notes about the backup (e.g., "Backup created before major update") - **createdAt** (integer) - Unix timestamp when the backup was created (e.g., 1754763101000) #### Error Response (404) - Description: VPS not found - Content: {"message": "string"} ``` -------------------------------- ### Get Dedicated Server Information (GET) Source: https://nodesty.com/api/_openapi Retrieves detailed information about a dedicated server, including its ID, status, available actions, mainboard, RAM, disk space, and CPU details. Requires a service ID and Authorization token. ```json { "openapi": "3.1.0", "info": { "title": "API Docs | Nodesty", "description": "API Documentation for Nodesty." }, "servers": [ { "url": "https://nodesty.com", "description": "Local Development Server", "variables": {} } ], "paths": { "/api/services/{id}/dedicated/info": { "get": { "tags": [ "Dedicated Server" ], "parameters": [ { "in": "header", "name": "Authorization", "description": "Personal Access Token", "schema": { "type": "string", "example": "PAT " }, "required": true }, { "in": "path", "name": "id", "description": "Service ID", "required": true, "schema": { "type": "string", "example": "1" } } ], "responses": { "200": { "description": "Information about the dedicated server", "content": { "application/json": { "schema": { "type": "object", "properties": { "dedicatedId": { "type": "string", "description": "Unique identifier for the dedicated server", "example": "1" }, "status": { "type": "boolean", "description": "Current status of the dedicated server", "example": true }, "availableActions": { "type": "array", "description": "List of available actions for the dedicated server", "items": { "type": "string", "enum": [ "setPowerOn", "setPowerOff", "setPowerReset" ] } }, "mainboard": { "type": "string", "description": "Model of the mainboard", "example": "ASUS ROG Strix X570-E Gaming" }, "ram": { "type": "integer", "description": "Amount of RAM in GB", "example": 128 }, "disk": { "type": "integer", "description": "Total disk space in GB", "example": 1000 }, "cpu": { "type": "object", "properties": { "model": { "type": "string", "description": "Model of the CPU", "example": "AMD Ryzen 9 5950X" }, "speed": { "type": "integer", "description": "Base speed of the CPU in MHz", "example": 3500 }, "turboSpeed": { "type": "integer", "description": "Turbo speed of the CPU in MHz", "example": 4900 }, "cores": { "type": "integer", "description": "Number of CPU cores", "example": 16 }, "threads": { "type": "integer", "description": "Number of CPU threads", "example": 32 } } } } } } } }, "404": { "description": "Dedicated server not found", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" } } } } } } }, "summary": "Get Information", "description": "Get information about a dedicated server" } } } } ``` -------------------------------- ### GET /api/services/{id}/firewall/{ip}/rules Source: https://nodesty.com/api/_openapi Get nShield rules for a specific IP address on a VPS or Dedicated Server. ```APIDOC ## GET /api/services/{id}/firewall/{ip}/rules ### Description Get nShield rules for a specific IP address on a VPS or Dedicated Server. ### Method GET ### Endpoint /api/services/{id}/firewall/{ip}/rules ### Parameters #### Path Parameters - **id** (string) - Required - Service ID - **ip** (string) - Required - IP Address ### Response #### Success Response (200) - **id** (integer) - Rule ID - **protocol** (string) - Protocol used by the rule - **service** (string) - Service associated with the rule - **port** (integer) - Port number for the rule #### Error Response (404) - **message** (string) - Description: Service or IP not found ``` -------------------------------- ### GET /api/services/{id}/dedicated/reinstall-status Source: https://nodesty.com/api/_openapi Checks the status of a dedicated server's reinstallation process. It returns whether the process is completed and the current step. ```APIDOC ## GET /api/services/{id}/dedicated/reinstall-status ### Description Get dedicated server reinstall status. ### Method GET ### Endpoint /api/services/{id}/dedicated/reinstall-status ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **completed** (boolean) - Whether the reinstall process is completed - **step** (integer) - Current step of the reinstall process (1, 2, or 3) #### Response Example { "completed": true, "step": 1 } ``` -------------------------------- ### Get VPS Backups Source: https://nodesty.com/api/_openapi Retrieves a list of available backups for a given VPS. Requires the service ID and an authorization token. Returns backup file names, notes, and creation timestamps. ```openapi GET /api/services/{id}/vps/backups Parameters: - in: header name: Authorization description: Personal Access Token required: true schema: type: string example: PAT - in: path name: id description: Service ID required: true schema: type: string example: "1" Responses: 200: description: List of VPS backups content: application/json: schema: type: array items: type: object properties: file: type: string description: Name of the backup file example: backup-pool:backup/vm/2702/2025-08-09T18:11:41Z notes: type: string description: Notes about the backup example: Backup created before major update createdAt: type: integer description: Unix timestamp when the backup was created example: 1754763101000 404: description: VPS not found content: application/json: schema: type: object properties: message: type: string Summary: Get Backups Description: Get VPS backups ``` -------------------------------- ### Get Dedicated Server Reinstall Status Source: https://nodesty.com/api/_openapi Fetches the current status of a dedicated server's reinstallation process. It indicates whether the process is completed and the current step. ```shell GET https://api.nodesty.com/api/services/{id}/dedicated/reinstall-status Header: Authorization: PAT Path Parameter: id (Service ID) ``` -------------------------------- ### Get Graphs Source: https://nodesty.com/api/_openapi Retrieves usage statistics graphs for a VPS, including network traffic and RAM usage. The data is returned as an array of objects, each representing a time point with corresponding metrics. ```APIDOC ## GET /api/services/{id}/vps/graphs ### Description Get VPS usage statistics graphs. ### Method GET ### Endpoint /api/services/{id}/vps/graphs ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Header Parameters - **Authorization** (string) - Required - Personal Access Token (e.g., PAT ) ### Response #### Success Response (200) - Content: Array of graph data objects - **netOut** (integer) - Network outbound traffic in bytes (e.g., 12345) - **netIn** (integer) - Network inbound traffic in bytes (e.g., 12345) - **ramUsage** (integer) - RAM usage in bytes (e.g., 123) ``` -------------------------------- ### POST /api/services/{id}/dedicated/reinstall Source: https://nodesty.com/api/_openapi Initiates the reinstallation of a dedicated server with a new operating system. Requires the service ID, the new OS ID, and a new root password. ```APIDOC ## POST /api/services/{id}/dedicated/reinstall ### Description Reinstall a dedicated server with a new OS. ### Method POST ### Endpoint /api/services/{id}/dedicated/reinstall ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Query Parameters None #### Request Body - **password** (string) - Required - New root password for the dedicated server - **osId** (integer) - Required - ID of the new OS to install ### Request Example ```json { "password": "StrongPassword123!", "osId": 1 } ``` ### Response #### Success Response (204) - No content, indicates successful initiation. #### Response Example None (204 No Content) ``` -------------------------------- ### Create Backup Source: https://nodesty.com/api/_openapi Creates a new backup for the specified VPS. The request is processed asynchronously. ```APIDOC ## POST /api/services/{id}/vps/backups ### Description Create a new backup for the VPS. ### Method POST ### Endpoint /api/services/{id}/vps/backups ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Header Parameters - **Authorization** (string) - Required - Personal Access Token (e.g., PAT ) ### Response #### Success Response (204) - Description: VPS backup request received and is being processed #### Error Response (404) - Description: VPS not found - Content: {"message": "string"} ``` -------------------------------- ### Get VPS OS Templates (Nodesty API) Source: https://nodesty.com/api/_openapi Retrieves a list of available OS templates for a VPS. Requires a 'PAT ' in the Authorization header and the Service ID in the path. Returns a list of OS objects, each with an ID and name. ```json { "/api/services/{id}/vps/os-templates": { "get": { "tags": [ "VPS" ], "parameters": [ { "in": "header", "name": "Authorization", "description": "Personal Access Token", "schema": { "type": "string", "example": "PAT " }, "required": true }, { "in": "path", "name": "id", "description": "Service ID", "required": true, "schema": { "type": "string", "example": "1" } } ], "responses": { "200": { "description": "List of available OS templates", "content": { "application/json": { "schema": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "integer", "description": "OS version ID", "example": 1 }, "name": { "type": "string", "description": "OS version name", "example": "Debian 9.5" } } } } } } }, "404": { "description": "VPS not found", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" } } } } } } } }, "summary": "Get OS Templates", "description": "Get available OS templates for a VPS" } } ``` -------------------------------- ### Get Firewall Attack Logs Source: https://nodesty.com/api/_openapi Retrieves attack logs for a specific IP address associated with a VPS or Dedicated Server. It provides details about the attack, including start and end times, vectors, and peak traffic. ```shell GET https://api.nodesty.com/api/services/{id}/firewall/{ip}/attack-logs Header: Authorization: PAT Path Parameter: id (Service ID) Path Parameter: ip (IP Address) ``` -------------------------------- ### POST /api/services/{id}/vps/reinstall Source: https://nodesty.com/api/_openapi Reinstalls a Virtual Private Server (VPS) with a specified operating system template and sets a new root password. ```APIDOC ## POST /api/services/{id}/vps/reinstall ### Description Reinstall a VPS with a new OS. ### Method POST ### Endpoint /api/services/{id}/vps/reinstall ### Parameters #### Path Parameters - **id** (string) - Required - Service ID #### Header Parameters - **Authorization** (string) - Required - Personal Access Token (e.g., "PAT ") #### Request Body - **password** (string) - Required - New root password for the VPS - **osId** (integer) - Required - ID of the new OS to install ### Request Example ```json { "password": "StrongPassword123!", "osId": 1 } ``` ### Response #### Success Response (204) VPS reinstallation initiated successfully. #### Error Response (404) - **message** (string) - Error message #### Response Example (404) ```json { "message": "VPS not found" } ``` ``` -------------------------------- ### Reinstall VPS (Nodesty API) Source: https://nodesty.com/api/_openapi Reinstalls a VPS with a new operating system. Requires a 'PAT ' in the Authorization header, the Service ID in the path, and a JSON request body containing the new 'password' and 'osId'. Returns a 204 on success. ```json { "/api/services/{id}/vps/reinstall": { "post": { "tags": [ "VPS" ], "parameters": [ { "in": "header", "name": "Authorization", "description": "Personal Access Token", "schema": { "type": "string", "example": "PAT " }, "required": true }, { "in": "path", "name": "id", "description": "Service ID", "required": true, "schema": { "type": "string", "example": "1" } } ], "responses": { "204": { "description": "VPS reinstallation initiated successfully" }, "404": { "description": "VPS not found", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" } } } } } } }, "summary": "Reinstall", "description": "Reinstall a VPS with a new OS", "requestBody": { "description": "Reinstall VPS with a new OS", "content": { "application/json": { "schema": { "type": "object", "properties": { "password": { "type": "string", "description": "New root password for the VPS", "example": "StrongPassword123!" }, "osId": { "type": "integer", "description": "ID of the new OS to install", "example": 1 } }, "required": [ "password", "osId" ] } } }, "required": true } } } } ``` -------------------------------- ### GET /api/services/{id}/firewall/{ip}/stats Source: https://nodesty.com/api/_openapi Get nShield statistics for a specific IP address on a VPS or Dedicated Server. ```APIDOC ## GET /api/services/{id}/firewall/{ip}/stats ### Description Get nShield statistics for a specific IP address on a VPS or Dedicated Server. ### Method GET ### Endpoint /api/services/{id}/firewall/{ip}/stats ### Parameters #### Path Parameters - **id** (string) - Required - Service ID - **ip** (string) - Required - IP Address ### Response #### Success Response (200) - **timestamp** (integer) - Unix timestamp of the traffic data - **totalPassTraffic** (string) - Total traffic that passed through the nShield - **totalDropTraffic** (string) - Total traffic that was dropped by the nShield #### Error Response (404) - **message** (string) - Description: Service or IP not found ``` -------------------------------- ### Create VPS Backup Source: https://nodesty.com/api/_openapi Initiates the creation of a new backup for a specified VPS. Requires the service ID and an authorization token. The server processes the backup request. ```openapi POST /api/services/{id}/vps/backups Parameters: - in: header name: Authorization description: Personal Access Token required: true schema: type: string example: PAT - in: path name: id description: Service ID required: true schema: type: string example: "1" Responses: 204: description: VPS backup request received and is being processed 404: description: VPS not found content: application/json: schema: type: object properties: message: type: string Summary: Create Backup Description: Create a new backup for the VPS ``` -------------------------------- ### Restore VPS Backup Source: https://nodesty.com/api/_openapi Restore a VPS from a specific backup file. ```APIDOC ## POST /api/services/{id}/vps/backups/{file}/restore ### Description Restore a VPS from a specific backup file. ### Method POST ### Endpoint /api/services/{id}/vps/backups/{file}/restore ### Parameters #### Path Parameters - **id** (string) - Required - Service ID - **file** (string) - Required - The name of the backup file to restore from. #### Header Parameters - **Authorization** (string) - Required - Personal Access Token. Example: "PAT " ### Response #### Success Response (204) - Backup restore initiated successfully. #### Error Response (404) - **message** (string) - VPS or backup file not found. #### Response Example ```json { "message": "VPS or backup file not found" } ``` ``` -------------------------------- ### Perform VPS Action Source: https://nodesty.com/api/_openapi Allows performing actions such as starting, stopping, resetting, or shutting down a Virtual Private Server (VPS). Requires an 'Authorization' header with a Personal Access Token and specifies the service ID and the desired action in the request body. ```http POST /api/services/{id}/vps/action Headers: Authorization: PAT Body: { "action": "start" } Responses: 204 No Content (Action executed successfully) 404 Not Found (VPS not found) ``` -------------------------------- ### GET /api/users/@me Source: https://nodesty.com/api/_openapi Retrieves information about the currently authenticated user. ```APIDOC ## GET /api/users/@me ### Description Get the current user information. ### Method GET ### Endpoint /api/users/@me ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **id** (string) - Unique identifier for the user - **username** (string) - The user's username - **displayName** (string) - The user's display name - **email** (string) - The user's email address - **avatarUrl** (string) - URL to the user's avatar - **lastLogin** (integer) - Unix timestamp of the user's last login - **createdAt** (integer) - Unix timestamp of the user's creation date - **phoneNumber** (string) - User's phone number in international format - **tckn** (string) - User's TCKN (Turkish Identification Number) - **birthYear** (string) - User's birth year - **banned** (boolean) - Whether the user is banned - **currentSessionId** (string) - ID of the user's current session - **totpEnabled** (boolean) - Whether TOTP (Authentication App) is enabled for the user - **stats** (object) - User statistics - **activeServices** (integer) - Number of active services for the user - **unpaidInvoices** (integer) - Number of unpaid invoices for the user - **balance** (number) - User's account balance - **activeTickets** (integer) - Number of active support tickets for the user - **companyName** (string, nullable) - User's company name, if applicable #### Response Example ```json { "id": "user_123", "username": "john_doe", "displayName": "John Doe", "email": "john.doe@example.com", "avatarUrl": "https://example.com/avatar.png", "lastLogin": 1678886400000, "createdAt": 1678800000000, "phoneNumber": "+1 1234567890", "tckn": "12345678901", "birthYear": "1990", "banned": false, "currentSessionId": "abcdef123456", "totpEnabled": true, "stats": { "activeServices": 5, "unpaidInvoices": 2, "balance": 150.75, "activeTickets": 1 }, "companyName": "Example Corp" } ``` ``` -------------------------------- ### Restore VPS Backup Source: https://nodesty.com/api/_openapi Initiates the restoration of a VPS backup. Requires the service ID and an authorization token. ```openapi POST /api/services/{id}/vps/restore-backup Parameters: - in: header name: Authorization description: Personal Access Token required: true schema: type: string example: PAT - in: path name: id description: Service ID required: true schema: type: string example: "1" Responses: 204: description: VPS backup restore initiated successfully 404: description: VPS not found content: application/json: schema: type: object properties: message: type: string Summary: Restore Backup Description: Restore a backup for the VPS ``` -------------------------------- ### GET /api/users/@me/invoices Source: https://nodesty.com/api/_openapi Retrieves a list of all invoices for the current user. ```APIDOC ## GET /api/users/@me/invoices ### Description Get the current user invoices. ### Method GET ### Endpoint /api/users/@me/invoices ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **id** (integer) - Unique identifier for the invoice - **dueDate** (integer) - Unix timestamp of the invoice due date - **datePaid** (integer, nullable) - Unix timestamp of the invoice payment date, null if not paid - **subTotal** (number) - Subtotal amount of the invoice - **total** (number) - Total amount of the invoice - **status** (string) - Status of the invoice (e.g., "Unpaid", "Paid") - **appliedBalance** (number) - Balance applied to the invoice #### Response Example ```json [ { "id": 1, "dueDate": 1700000000000, "datePaid": null, "subTotal": 100, "total": 120, "status": "Unpaid", "appliedBalance": 20 }, { "id": 2, "dueDate": 1702778400000, "datePaid": 1702778400000, "subTotal": 50, "total": 60, "status": "Paid", "appliedBalance": 0 } ] ``` ```