definitions: gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.AgentDeployConfig: description: Configuration for deploying HellreigN agent to a single server properties: agentLabel: example: production-server-1 type: string authMethod: allOf: - $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.AuthMethod' example: key deployType: allOf: - $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployType' example: docker ip: example: 192.168.1.100 type: string password: example: secret type: string port: example: 22 type: integer sshKey: example: '-----BEGIN OPENSSH PRIVATE KEY-----' type: string user: example: admin type: string required: - agentLabel - authMethod - deployType - ip - user type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.AuthMethod: description: 'SSH authentication method: key or password' enum: - key - password type: string x-enum-varnames: - AuthMethodKey - AuthMethodPassword gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployAgentsRequest: description: Request to deploy HellreigN agents to multiple servers properties: servers: items: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.AgentDeployConfig' minItems: 1 type: array required: - servers type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployResponse: description: Response containing deployment results and registration tokens properties: message: example: Deployment completed type: string results: items: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployResult' type: array type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployResult: description: Result of deploying to a single server properties: agent_label: example: production-server-1 type: string error: example: "" type: string ip: example: 192.168.1.100 type: string success: example: true type: boolean token: example: abc123... type: string type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployType: description: 'Type of deployment: docker or binary' enum: - docker - binary type: string x-enum-varnames: - DeployTypeDocker - DeployTypeBinary gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.LoginRequest: properties: login: type: string password: type: string required: - login - password type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.LoginResponse: properties: is_active: type: boolean last_name: type: string login: type: string name: type: string permission_admin: type: boolean permission_manage_agent: type: boolean permission_view: type: boolean token: type: string type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.RegistrationRequest: properties: label: type: string required: - label type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Script: properties: content: type: string created_at: type: string id: type: integer interpreter_id: type: integer path: type: string updated_at: type: string type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptCreate: properties: content: type: string interpreter_id: type: integer path: type: string required: - interpreter_id - path type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptInterpreter: properties: argv: items: type: string type: array created_at: type: string id: type: integer label: type: string name: type: string updated_at: type: string type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptInterpreterCreate: properties: argv: items: type: string type: array label: type: string name: type: string required: - argv - label - name type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptInterpreterUpdate: properties: argv: items: type: string type: array label: type: string name: type: string type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptTreeNode: properties: children: items: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptTreeNode' type: array content: type: string id: type: integer interpreter_id: type: integer name: type: string type: description: '"folder" or "file"' type: string type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptUpdate: properties: content: type: string interpreter_id: type: integer path: type: string type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenCreate: properties: is_active: type: boolean last_name: type: string login: type: string name: type: string password: type: string permission_admin: type: boolean permission_manage_agent: type: boolean permission_view: type: boolean required: - last_name - login - name - password type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenPasswordReset: properties: new_password: type: string required: - new_password type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenUpdate: properties: last_name: type: string name: type: string type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenUpdatePermissions: properties: is_active: type: boolean permission_admin: type: boolean permission_manage_agent: type: boolean permission_view: type: boolean type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Tokens: properties: id: type: integer is_active: type: boolean last_name: type: string login: type: string name: type: string permission_admin: type: boolean permission_manage_agent: type: boolean permission_view: type: boolean token: type: string type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.UserRegister: properties: last_name: type: string login: type: string name: type: string password: type: string required: - last_name - login - name - password type: object gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_storage.LogEntry: properties: agent: type: string level: type: string message: type: string service: type: string timestamp: type: string type: object internal_handlers.AddJobIn: properties: agent_id: type: string command: type: string interpreter_id: type: integer stdin: type: string required: - agent_id - command type: object internal_handlers.AddJobOut: properties: command: items: type: string type: array id: type: integer wait_url: type: string type: object internal_handlers.AgentInfo: properties: connected_at: description: Time when agent connected (RFC3339-like) example: "2026-04-04 10:30:00" type: string label: description: Human-readable label example: web-server-1 type: string services: description: 'List of services with status (format: "name:status")' example: - nginx:running - redis:up items: type: string type: array token: description: Unique agent identifier example: agent-001 type: string type: object internal_handlers.CheckCmdIn: properties: command: example: bash type: string required: - command type: object internal_handlers.CheckCmdOut: properties: exists: type: boolean type: object internal_handlers.CreateFolderRequest: properties: path: example: deploy/nginx type: string required: - path type: object internal_handlers.DeleteFolderRequest: properties: path: example: deploy/nginx type: string required: - path type: object internal_handlers.InsertLogRequest: properties: agent: type: string level: type: string message: type: string service: type: string timestamp: type: string required: - agent - level - message - service type: object internal_handlers.InsertLogsRequest: properties: logs: items: $ref: '#/definitions/internal_handlers.InsertLogRequest' type: array required: - logs type: object internal_handlers.JobMetricsOut: properties: failed: type: integer pending: type: integer period: type: string success: type: integer total: type: integer type: object internal_handlers.JobResult: properties: command: items: type: string type: array id: type: integer status: type: integer stderr: type: string stdin: type: string stdout: type: string type: object internal_handlers.RegisterRequest: properties: csr: type: string token: type: string required: - csr - token type: object internal_handlers.RegisterResponse: properties: ca_cert: type: string client_cert: type: string type: object internal_handlers.RenameRequest: properties: new_path: example: deploy/nginx-v2 type: string old_path: example: deploy/nginx type: string required: - new_path - old_path type: object internal_handlers.RunScriptIn: properties: agent_id: type: string interpreter_id: type: integer script_text: type: string stdin: type: string required: - agent_id - interpreter_id - script_text type: object internal_handlers.RunStoredScriptIn: properties: stdin: type: string token: type: string required: - token type: object internal_handlers.WaitJobIn: properties: agent_id: type: string required: - agent_id type: object info: contact: {} paths: /agents: get: consumes: - application/json description: Returns a list of all agents currently connected via Collector (log streaming) produces: - application/json responses: "200": description: OK schema: items: $ref: '#/definitions/internal_handlers.AgentInfo' type: array security: - Bearer: [] summary: Get connected agents tags: - agents /agents/deploy: post: consumes: - application/json description: Deploy HellreigN agents to multiple servers using Ansible playbooks. Supports Docker and Binary deployment types. parameters: - description: Deployment configuration for servers in: body name: request required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployAgentsRequest' produces: - application/json responses: "200": description: Deployment results with tokens for each server schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployResponse' "400": description: Invalid request schema: additionalProperties: type: string type: object "500": description: Internal server error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Deploy agents to multiple servers via Ansible tags: - agents /agents/register: post: consumes: - application/json parameters: - description: CSR + token in: body name: request required: true schema: $ref: '#/definitions/internal_handlers.RegisterRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/internal_handlers.RegisterResponse' summary: Register agent tags: - agents /agents/register-token: post: consumes: - application/json parameters: - description: Label in: body name: request required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.RegistrationRequest' produces: - application/json responses: "200": description: OK schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Create registration token tags: - agents /auth/login: post: consumes: - application/json description: Authenticate with login and password, returns a token and permissions parameters: - description: Login credentials in: body name: request required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.LoginRequest' responses: "200": description: OK schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.LoginResponse' "400": description: Bad Request schema: additionalProperties: type: string type: object "401": description: Unauthorized schema: additionalProperties: type: string type: object "403": description: Forbidden schema: additionalProperties: type: string type: object summary: Login tags: - auth /auth/register: post: consumes: - application/json description: Registers a new user with login, password, name, last name. All permissions are set to false. parameters: - description: Registration data in: body name: request required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.UserRegister' responses: "200": description: OK schema: additionalProperties: type: string type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "409": description: Conflict schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Register user tags: - auth /auth/token: delete: description: Deletes the current authenticated user responses: "200": description: OK schema: additionalProperties: type: string type: object "401": description: Unauthorized schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Delete my account tags: - auth post: consumes: - application/json description: Creates a new user with permissions parameters: - description: User data in: body name: request required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenCreate' responses: "200": description: OK schema: additionalProperties: type: string type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "401": description: Unauthorized schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Create user tags: - auth /auth/tokens: get: description: Returns list of all users with their permissions produces: - application/json responses: "200": description: OK schema: items: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Tokens' type: array "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: List users tags: - auth /auth/tokens/:login: delete: description: Deletes a user by their login parameters: - description: Login of the user to delete in: path name: login required: true type: string responses: "200": description: OK schema: additionalProperties: type: string type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Delete user tags: - auth /auth/users/:login: get: description: Returns a user by their login (admin only) parameters: - description: Login of the user in: path name: login required: true type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Tokens' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Get user by login tags: - auth put: consumes: - application/json description: Updates a user's name and last name (admin only) parameters: - description: Login of the user in: path name: login required: true type: string - description: User data to update in: body name: request required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenUpdate' responses: "200": description: OK schema: additionalProperties: type: string type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Update user tags: - auth /auth/users/:login/activate: post: description: Activates a user account by login (admin only) parameters: - description: Login of the user to activate in: path name: login required: true type: string responses: "200": description: OK schema: additionalProperties: type: string type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Activate user tags: - auth /auth/users/:login/deactivate: post: description: Deactivates a user account by login (admin only) parameters: - description: Login of the user to deactivate in: path name: login required: true type: string responses: "200": description: OK schema: additionalProperties: type: string type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Deactivate user tags: - auth /auth/users/:login/password: put: consumes: - application/json description: Resets a user's password to a new value (admin only) parameters: - description: Login of the user in: path name: login required: true type: string - description: New password in: body name: request required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenPasswordReset' responses: "200": description: OK schema: additionalProperties: type: string type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Reset user password tags: - auth /auth/users/:login/permissions: put: consumes: - application/json description: Updates a user's permissions and activation status (admin only) parameters: - description: Login of the user in: path name: login required: true type: string - description: Permissions to update in: body name: request required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenUpdatePermissions' responses: "200": description: OK schema: additionalProperties: type: string type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Update user permissions tags: - auth /auth/users/inactive: get: description: Returns list of all users waiting for activation produces: - application/json responses: "200": description: OK schema: items: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Tokens' type: array "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: List inactive users tags: - auth /auth/validate: get: description: Check if the provided Bearer token is valid and return its permissions produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Tokens' "401": description: Unauthorized schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Validate token tags: - auth /jobs: post: consumes: - application/json description: Sends a command to the specified agent and returns a URL to wait for the result parameters: - description: Job request in: body name: body required: true schema: $ref: '#/definitions/internal_handlers.AddJobIn' produces: - application/json responses: "201": description: Created schema: $ref: '#/definitions/internal_handlers.AddJobOut' summary: Submit a job to an agent tags: - jobs /jobs/{id}/wait: post: consumes: - application/json description: Long-polls for a job result. Returns immediately if the job is already finished. parameters: - description: Job ID in: path name: id required: true type: integer - description: Agent reference in: body name: body required: true schema: $ref: '#/definitions/internal_handlers.WaitJobIn' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/internal_handlers.JobResult' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object summary: Wait for job result tags: - jobs /jobs/check_cmd: post: consumes: - application/json description: Validates that a command binary exists on the system parameters: - description: Command to check in: body name: body required: true schema: $ref: '#/definitions/internal_handlers.CheckCmdIn' responses: "200": description: OK schema: $ref: '#/definitions/internal_handlers.CheckCmdOut' "404": description: Not Found schema: additionalProperties: type: string type: object summary: Check command path tags: - jobs /jobs/metrics: get: description: Returns total, successful, failed, and pending job counts over the given period parameters: - default: 24h description: Time period (e.g. 1h, 24h, 7d) in: query name: period type: string - description: Filter by agent ID in: query name: agent_id type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/internal_handlers.JobMetricsOut' "400": description: Bad Request schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Get job metrics tags: - jobs /logs: get: description: Searches logs with various filters parameters: - description: Log level (INFO, WARNING, ERROR, FATAL) in: query name: level type: string - description: Service name in: query name: service type: string - description: Agent name in: query name: agent type: string - description: Date from (RFC3339) in: query name: date_from type: string - description: Date to (RFC3339) in: query name: date_to type: string - default: 100 description: Limit results in: query name: limit type: integer - default: 0 description: Offset results in: query name: offset type: integer produces: - application/json responses: "200": description: OK schema: items: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_storage.LogEntry' type: array security: - Bearer: [] summary: Search logs tags: - logs post: consumes: - application/json description: Inserts a single log entry into ClickHouse parameters: - description: Log entry in: body name: body required: true schema: $ref: '#/definitions/internal_handlers.InsertLogRequest' produces: - application/json responses: "201": description: Created schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Insert log entry tags: - logs /logs/agents: get: description: Returns list of all unique agent names in logs produces: - application/json responses: "200": description: OK schema: items: type: string type: array security: - Bearer: [] summary: Get distinct agents tags: - logs /logs/batch: post: consumes: - application/json description: Inserts multiple log entries into ClickHouse parameters: - description: Log entries in: body name: body required: true schema: $ref: '#/definitions/internal_handlers.InsertLogsRequest' produces: - application/json responses: "201": description: Created schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Insert log entries (batch) tags: - logs /logs/levels: get: description: Returns list of all unique log levels in logs produces: - application/json responses: "200": description: OK schema: items: type: string type: array security: - Bearer: [] summary: Get distinct log levels tags: - logs /logs/mock: get: description: Returns 100 mock log entries for frontend development (no ClickHouse required) parameters: - description: Filter by level in: query name: level type: string - description: Filter by service in: query name: service type: string - description: Filter by agent in: query name: agent type: string - default: 100 description: Limit results in: query name: limit type: integer - default: 0 description: Offset results in: query name: offset type: integer produces: - application/json responses: "200": description: OK schema: items: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_storage.LogEntry' type: array security: - Bearer: [] summary: Get mock logs tags: - logs /logs/services: get: description: Returns list of all unique service names in logs produces: - application/json responses: "200": description: OK schema: items: type: string type: array security: - Bearer: [] summary: Get distinct services tags: - logs /scripts: post: consumes: - application/json description: Creates a new script with path, content, and interpreter binding parameters: - description: Script data in: body name: body required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptCreate' produces: - application/json responses: "201": description: Created schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Script' security: - Bearer: [] summary: Create script tags: - scripts /scripts/:id: delete: description: Deletes a script by its ID parameters: - description: Script ID in: path name: id required: true type: integer responses: "200": description: OK schema: additionalProperties: type: string type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Delete script tags: - scripts get: description: Returns a script by its ID parameters: - description: Script ID in: path name: id required: true type: integer produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Script' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Get script tags: - scripts put: consumes: - application/json description: Updates a script's path, content, or interpreter parameters: - description: Script ID in: path name: id required: true type: integer - description: Script data in: body name: body required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptUpdate' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Script' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Update script tags: - scripts /scripts/:id/run: post: consumes: - application/json description: Loads a script from storage, resolves interpreter command, and submits it to the agent parameters: - description: Script ID in: path name: id required: true type: integer - description: Agent ID and optional stdin in: body name: body required: true schema: $ref: '#/definitions/internal_handlers.RunStoredScriptIn' produces: - application/json responses: "201": description: Created schema: $ref: '#/definitions/internal_handlers.AddJobOut' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Run script by ID tags: - scripts /scripts/by-path: get: description: Returns a script by its full path (e.g. 'deploy/nginx/restart.sh') parameters: - description: Script path in: query name: path required: true type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Script' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Get script by path tags: - scripts /scripts/folder: delete: consumes: - application/json description: Deletes all scripts that start with the given folder path parameters: - description: Folder path in: body name: body required: true schema: $ref: '#/definitions/internal_handlers.DeleteFolderRequest' produces: - application/json responses: "200": description: Folder deleted with count of deleted scripts schema: additionalProperties: true type: object security: - Bearer: [] summary: Delete folder tags: - scripts post: consumes: - application/json description: Creates a virtual folder by creating a placeholder script with the folder path parameters: - description: Folder path in: body name: body required: true schema: $ref: '#/definitions/internal_handlers.CreateFolderRequest' produces: - application/json responses: "201": description: Folder created schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Create folder tags: - scripts /scripts/interpreters: get: description: Returns all script interpreters available in the system produces: - application/json responses: "200": description: OK schema: items: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptInterpreter' type: array security: - Bearer: [] summary: List interpreters tags: - scripts post: consumes: - application/json description: Registers a new script interpreter with name, label, and argv parameters: - description: Interpreter definition in: body name: body required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptInterpreterCreate' produces: - application/json responses: "201": description: Created schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptInterpreter' security: - Bearer: [] summary: Create interpreter tags: - scripts /scripts/interpreters/:id: delete: description: Removes a script interpreter by ID parameters: - description: Interpreter ID in: path name: id required: true type: integer responses: "204": description: No Content security: - Bearer: [] summary: Delete interpreter tags: - scripts get: description: Returns a script interpreter by ID parameters: - description: Interpreter ID in: path name: id required: true type: integer produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptInterpreter' security: - Bearer: [] summary: Get interpreter tags: - scripts put: consumes: - application/json description: Updates fields of a script interpreter parameters: - description: Interpreter ID in: path name: id required: true type: integer - description: Interpreter fields in: body name: body required: true schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptInterpreterUpdate' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptInterpreter' security: - Bearer: [] summary: Update interpreter tags: - scripts /scripts/rename: post: consumes: - application/json description: Renames a single script or all scripts under a folder prefix parameters: - description: Rename request in: body name: body required: true schema: $ref: '#/definitions/internal_handlers.RenameRequest' produces: - application/json responses: "200": description: Rename result with count of renamed scripts schema: additionalProperties: true type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "409": description: Conflict schema: additionalProperties: type: string type: object security: - Bearer: [] summary: Rename script or folder tags: - scripts /scripts/run: post: consumes: - application/json description: Resolves interpreter argv[] and sends the full command to the agent parameters: - description: Script request in: body name: body required: true schema: $ref: '#/definitions/internal_handlers.RunScriptIn' produces: - application/json responses: "201": description: Created schema: $ref: '#/definitions/internal_handlers.AddJobOut' security: - Bearer: [] summary: Run a script on an agent tags: - scripts /scripts/tree: get: description: Returns a hierarchical tree of all scripts organized by their paths produces: - application/json responses: "200": description: OK schema: items: $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.ScriptTreeNode' type: array security: - Bearer: [] summary: Get script directory tree tags: - scripts securityDefinitions: Bearer: description: Type "Bearer" followed by a space and the JWT token. in: header name: Authorization type: apiKey swagger: "2.0"