openapi: 3.2.0 info: title: Nextron Systems Info API version: 1.0.0 description: 'Operations tagged info across 2 of this provider''s published API definitions: nextron-systems-thunderstorm-openapi.yaml, nextron-systems-thunderstorm-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: http://localhost:8080/api/v1 description: Local THOR instance tags: - name: Info description: Endpoints to retrieve information about the running THOR instance paths: /queueHistory: get: summary: Retrieve a history of how many asynchronous requests were queued tags: - Info operationId: queueHistory parameters: - $ref: '#/components/parameters/AggregationPeriod' - $ref: '#/components/parameters/HistoryLimit' responses: '200': $ref: '#/components/responses/QueueHistory' '400': $ref: '#/components/responses/BadRequest' servers: - url: http://localhost:8080/api/v1 description: Local THOR instance /sampleHistory: get: summary: Retrieve a history of how many samples were scanned description: Retrieve a history of how many samples were scanned. tags: - Info operationId: sampleHistory parameters: - $ref: '#/components/parameters/AggregationPeriod' - $ref: '#/components/parameters/HistoryLimit' responses: '200': $ref: '#/components/responses/SampleHistory' '400': $ref: '#/components/responses/BadRequest' servers: - url: http://localhost:8080/api/v1 description: Local THOR instance /info: get: summary: Receive static information about the running THOR instance description: Receive static information about the running THOR instance. tags: - Info operationId: info responses: '200': description: Map with values to running version, rate limitation, ... content: application/json: schema: $ref: '#/components/schemas/ThunderstormInfo' '500': $ref: '#/components/responses/InternalServerError' servers: - url: http://localhost:8080/api/v1 description: Local THOR instance /status: get: summary: Receive live information about the running THOR instance description: Receive live information about the running THOR instance. tags: - Info operationId: status responses: '200': description: Map with values to scan times, scanned samples, wait times, ... content: application/json: schema: $ref: '#/components/schemas/ThunderstormStatus' servers: - url: http://localhost:8080/api/v1 description: Local THOR instance components: schemas: ThunderstormStatus: description: Live information about the running THOR instance type: object properties: scanned_samples: description: Total number of samples that have been scanned type: integer format: int64 example: 18686305 queued_async_requests: description: Number of asynchronous requests currently in queue type: integer format: int64 example: 0 avg_scan_time_milliseconds: description: Average time in milliseconds to scan a sample type: integer format: int64 example: 21 avg_wait_time_milliseconds: description: Average wait time in milliseconds before processing type: integer format: int64 example: 0 required: - scanned_samples - queued_async_requests - avg_scan_time_milliseconds - avg_wait_time_milliseconds example: scanned_samples: 18686305 queued_async_requests: 0 avg_scan_time_milliseconds: 21 avg_wait_time_milliseconds: 0 ThunderstormInfo: description: Information about the Thunderstorm service instance, including version details, configuration, and license information. type: object properties: version_info: $ref: '#/components/schemas/ThunderstormVersionInfo' arguments: description: Command-line arguments used to start the underlying THOR instance. type: array items: type: string example: - --config - /opt/nextron/thunderstorm/config/custom-thor.yml license_expiration: description: Expiration date and time of the license in ISO 8601 format. type: string format: date-time example: '2026-07-08T00:00:00Z' license_owner: description: Name of the license owner. type: string example: admin scan_speed_limitation: description: Scan speed limitation in bytes per second. A value of 0 indicates no limitation. type: integer format: int64 example: 0 threads: description: Number of threads used for scanning. type: integer format: int64 example: 16 required: - version_info - arguments - license_expiration - license_owner - scan_speed_limitation - threads example: version_info: thor: 10.8.0 build: '2026-01-07 04:02:31' signatures: 2026/01/12-160550 sigma: r2025-12-01-18-g6d581764e arguments: - --config - /opt/nextron/thunderstorm/config/custom-thor.yml license_expiration: '2026-07-08T00:00:00Z' license_owner: admin scan_speed_limitation: 0 threads: 16 Error: description: Error with message type: object properties: message: description: Error message describing the problem type: string required: - message TimestampMap: description: Map of timestamps to integer values type: object additionalProperties: type: integer format: int64 example: 2026-01-21 06:45: 0 2026-01-21 07:00: 9165 2026-01-21 07:15: 49023 2026-01-21 07:30: 61685 2026-01-21 07:45: 54932 ThunderstormVersionInfo: description: Version information for various components of the Thunderstorm service. type: object properties: thor: description: Version of the THOR scanner engine. type: string example: 10.8.0 build: description: Build timestamp of the THOR scanner. type: string example: '2026-01-07 04:02:31' signatures: description: Version/timestamp of the signature database. type: string example: 2026/01/12-160550 sigma: description: Version identifier of the Sigma rules. type: string example: r2025-12-01-18-g6d581764e responses: SampleHistory: description: Returns a JSON Map with each time mapped to the samples scanned from the last time mentioned to that time content: application/json: schema: $ref: '#/components/schemas/TimestampMap' InternalServerError: description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' BadRequest: description: Invalid parameters given content: application/json: schema: $ref: '#/components/schemas/Error' QueueHistory: description: A JSON Map with each time mapped to the queue length (estimated) from the last time mentioned to that time. content: application/json: schema: $ref: '#/components/schemas/TimestampMap' parameters: AggregationPeriod: description: Aggregate this many minutes per value (default 1). name: aggregate in: query schema: type: integer format: int64 minimum: 0 HistoryLimit: description: Give a history for the last this many minutes (default infinite). name: limit in: query schema: type: integer format: int64 minimum: 0 x-refined-from: - nextron-systems-thunderstorm-openapi.yaml - nextron-systems-thunderstorm-openapi.yml