openapi: 3.2.0 info: version: 2.10.0 description: 'Nerve OVDM API to manage: - node configuration - system configuration - system network configuration - workloads - remote connections - dna' title: Nerve Node WORKLOADS LOGS API contact: name: Nerve support email: support@tttech-industrial.com security: - cookieAuth: [] tags: - name: WORKLOADS LOGS paths: /api/workloads/{deviceId}/logs/{name}/events: get: tags: - WORKLOADS LOGS summary: Get the logs of specific docker container through an event stream description: Get logs about general Docker container information, like configuration and when it was started, through an SSE event stream. operationId: get_workload_log_event x-permissions: - WORKLOAD:VIEW_DOCKER_LOGS parameters: - name: deviceId in: path required: true description: Unique identifier of the deployed workload. Device is a term used for workloads. schema: type: string description: Id of the deployed workload pattern: ^\d+$ minLength: 1 maxLength: 1001 - name: name in: path required: true description: Name of the Docker container. schema: type: string description: Docker container name minLength: 2 maxLength: 100 pattern: ^[a-zA-Z0-9][a-zA-Z0-9_-]+$ responses: '200': description: Successfully subscribed to SSE event stream and fetched logs. content: text/event-stream: schema: type: object description: Object containing information about the logs from the Docker container. required: - event - data properties: event: description: Type of event type: string enum: - logs data: description: List of logs, formatted as a stringified JSON array of strings type: string example: '["2024-01-01 00:00:00,000: INFO: **************************************\n", "2024-01-01 00:00:00,000: INFO: *********** Configuration ************\n", ...]' additionalProperties: false '400': description: Bad request content: application/json: schema: oneOf: - type: object description: Validation error. required: - status - message - errors additionalProperties: false properties: status: type: integer description: HTTP status code message: type: string minLength: 1 maxLength: 1001 description: The validation error message errors: type: array minItems: 1 maxItems: 1001 description: Detailed description of what does not match the schema items: type: object properties: path: type: string minLength: 1 maxLength: 1001 description: Specified location within the document where the error occurred message: type: string minLength: 1 maxLength: 1001 description: Error message - type: object description: Description of error associated with status code. required: - status - msg additionalProperties: false properties: status: type: integer description: HTTP status code msg: type: string minLength: 1 maxLength: 1001 description: Error message pattern: .* '404': description: The resource not found content: application/json: schema: type: object description: Description of error associated with status code. required: - status - msg additionalProperties: false properties: status: type: integer description: HTTP status code msg: type: string minLength: 1 maxLength: 1001 description: Error message pattern: .* /api/workloads/{deviceId}/logs/{name}: get: tags: - WORKLOADS LOGS summary: Download logs of a specific Docker container description: Download logs about general Docker container information, like configuration and when it was started, as a plain text file or a zip archive. operationId: get_workload_logs x-permissions: - WORKLOAD:DOWNLOAD_DOCKER_LOGS parameters: - name: deviceId in: path required: true description: Unique identifier of the deployed workload. Device is a term used for workloads. schema: type: string description: Id of the deployed workload pattern: ^\d+$ minLength: 1 maxLength: 1001 - name: name in: path required: true description: Name of the Docker container. schema: type: string description: Docker container name minLength: 2 maxLength: 100 pattern: ^[a-zA-Z0-9][a-zA-Z0-9_-]+$ responses: '200': description: Successfully downloaded log file. content: text/plain: schema: description: Logs are downloaded as a plain text file if they are not archived on the system. type: string application/zip: schema: description: Logs are downloaded as a .zip archive if they are archived on the system. type: string format: binary '400': description: Bad request content: application/json: schema: oneOf: - type: object description: Validation error. required: - status - message - errors additionalProperties: false properties: status: type: integer description: HTTP status code message: type: string minLength: 1 maxLength: 1001 description: The validation error message errors: type: array minItems: 1 maxItems: 1001 description: Detailed description of what does not match the schema items: type: object properties: path: type: string minLength: 1 maxLength: 1001 description: Specified location within the document where the error occurred message: type: string minLength: 1 maxLength: 1001 description: Error message - type: object description: Description of error associated with status code. required: - status - msg additionalProperties: false properties: status: type: integer description: HTTP status code msg: type: string minLength: 1 maxLength: 1001 description: Error message pattern: .* '401': description: You are not authorized to perform this operation content: application/json: schema: oneOf: - type: object description: User not authorized required: - user additionalProperties: false properties: user: type: string description: Not authorized enum: - not authorized - type: object description: User not authorized required: - status - msg additionalProperties: false properties: status: type: integer minimum: 401 maximum: 401 description: HTTP status code msg: type: string description: Error message enum: - Not authorized - not authorized - type: object description: Cookie header is missing in the request required: - status - message - errors additionalProperties: false properties: status: description: HTTP status code type: integer enum: - 401 message: type: string description: The validation error message enum: - '''cookie'' header required' errors: type: array minItems: 1 maxItems: 1001 description: List of errors items: type: object properties: path: type: string minLength: 1 maxLength: 1001 description: Specified location within the document where the error occurred message: type: string minLength: 1 maxLength: 1001 description: Error message examples: not_authorized_usr: value: user: not authorized not_authorized_status: value: status: 401 msg: Not authorized '404': description: The resource not found content: application/json: schema: type: object description: Description of error associated with status code. required: - status - msg additionalProperties: false properties: status: type: integer description: HTTP status code msg: type: string minLength: 1 maxLength: 1001 description: Error message pattern: .* components: securitySchemes: cookieAuth: type: apiKey in: header name: cookie basicAuth: type: http scheme: basic