Skip to main content
Skip table of contents

Downloads and release notes

This document provides comprehensive information about the introduction and concepts around Nexthink Chatbot SDK, its API and use cases. The information contained herein is subject to change without notice and is not guaranteed to be error-free. If you find any errors, please report them to us via Nexthink Support Portal. This document is intended for readers with a detailed understanding of Nexthink technology.

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

Last Release

Version: 2.1.3


Release notes

Version 2.1.3

November 15, 2023

  • Better support for installations in Nexthink Appliances based on Oracle Linux 8.

Version 2.1.2

November 7, 2023

  • Fixed security vulnerabilities in third-party dependencies.

Version 2.1.1

November 6, 2023

  • Fixed security vulnerabilities in third-party dependencies.

Version 2.1.0

October 16, 2023

  • Support for installations in Nexthink Appliances based on Oracle Linux 8

Version 2.0.0

February 8, 2022

  • TLS 1 and TLS 1.1 are not supported anymore and restricted the list of cyphers to those that are secure.

Version: 1.2.0

April 17, 2021

  • Proxy support (with None or Basic authentication). New configuration variables on the .env file:




  • Changes in topics

    • Updated topics l1_device_checklist, app_outlook_issues, pc_slow and device_bad_health

  • Other changes

    • Added a restart script that provides a cleaner way to restart the Chatbot Adapter while storing relevant logs.

    • Support script also gathers the historical logs stored by the previous script.

    • Some other minor bug fixes and code improvements

Version 1.1.0

April 30, 2020

  • Improvements in remote actions handling

    • Chatbot adapter now uses the newest version (v2) of the Portal API to trigger remote actions targeting specific Engines.

      • Nexthink version 6.26 is required to use this functionality (API v2 is available from that release).

      • In versions 6.25 and earlier legacy API v1 is used.

    • Better response codes with a more granular description of errors

      • Nexthink version 6.26 is required to use this functionality (API v2 is available from that release).

    • Bugfix for a race condition that prevented proper retrieval of the status of a remote action

    • Some other minor bug fixes and code improvements

  • Changes in the install/update process

    • During the update, new interactive option to keep existing remote actions and topics YAML configuration files

    • New interactive option to automatically discover Engines during the installation/update, with the information provided by the Engine list API in the Portal

      • Nexthink version 6.24 or later is required to use this functionality.

  • Improvements in troubleshooting

    • Added support script that gathers relevant information for better debugging and analysis

    • Console output of the install/update/uninstall processes is stored in log files.

  • Changes in topics

    • Removed diagnoses from topics pc_slow, app_outlook_issues and device_bad_health

Version 1.0.2

December 19, 2019

  • Changes related to user activity

    • All devices are included in the cache and therefore available on the SDK if the last_seen NXQL field is newer than the period configured for USER_ACTIVITY_PERIOD.

    • The new configuration file, discovery.yaml. The discovery query can be configured to filter users by user_activity or execution.

    • All the times returned by the chatbot adapter contain the timezone information (ISO8601 format):

    • 1.0.1 - 2019-12-18T21:28:43

    • 1.0.2 - 2019-12-18T21:28:43-01:00

  • Fields can be compared with other fields in the topic condition. Before it was only possible to compare them with values.

  • Contains operator allowed wildcards ("*" and "?")

Version 1.0.1

October 10, 2019

  • Performance improvements in the Discovery process

  • Added new configuration variables for USER_ACTIVITY_PERIOD (30 days by default) and for POSTGRES_PASSWORD (a default value was provided, but now a new value is randomly generated upon installation).

  • Some minor code improvements and better error handling

  • Added scripts for update and for uninstallation. Additionally, installation and update processes now roll back to the previous state if something goes wrong.

  • Bugfix on script parsing the cached fields during installation. Cached fields file syntax has also changed.

  • Topics now moved into their own directory /topics:
    /config/outlook_issues.yaml -> /config/topics/outlook_issues.yaml

Version 1.0.0

July 24, 2019

  • Lowered throttling limits for Engines and Portal

  • Optimized deletion in the Discovery process

  • Added distinct (!=) operator for numeric values

  • Timeouts for topic and discovery requests are now customizable

  • Cleaning of topics to reduce the number of cached fields

  • Bugfixes properly showing/handling some error messages

Version 0.8.0

July 9, 2019

  • Improvements in configuration

    • Updated topics app_outlook_issues.yaml, device_bad_health.yaml, l1_device_checklist.yaml and pc_slow.yaml

  • Changes in API

    • Changed API key generation endpoint, now use POST instead of GET

    • New endpoint to retrieve the current API key using GET and the username and password

  • Bug fixes

    • Long dynamic field names were truncated and broke the cache for some NXQL queries.

    • Incorrect permission on config directory

    • The cache was not working properly for RA response values.

  • Other changes

    • Added the option to customize CHATBOT_ADAPTER_PORT during the installation and upgrade process

    • Improved concurrency management and protection

    • Improved security for API key validation using constant time response

Version 0.7.1

June 25, 2019

  • Bugfix, the cache was not working properly for dynamic cache fields.

  • The cached data will expire after the third failed attempt (3 hours of no response from the engine by default).

Version 0.7.0

June 19, 2019

  • Chatbot authentication with an API key on custom HTTP header (X-API-Key) instead of login and password. Use endpoint api_key described on the API to generate a token. Only one token is valid at a time.

  • New topic, print Issues

  • Topics versioning

  • Script to automate cached fields configuration

  • Throttling configuration to avoid Engine and Portal overload

  • Now, the topics OneDrive Installation, OneDrive Issues, Outlook Issues and PC slow don't execute the remote actions for diagnosis. The remote actions Get OneDrive Status, Get Outlook Online, Get Startup Impact, Get Battery Status, Get Gpo Startup Impact and Get Hardware And BIOS Information should be configured to be executed periodically.

Version 0.6.0

May 29, 2019

  • Case insensitive user and device search

  • Content pack with the needed remote actions

  • Device fields are cached on the local database to minimize Engine queries. This is configurable by editing the file cached_fields.yaml.

  • When retrieving RA information, queries are grouped to minimize the impact on the Engines.

  • New scripts (all scripts are now under scripts directory):

    • Requirements installer

    • Install and update

    • Log retriever

Version 0.5.0

May 7, 2019

  • Multiengine support, more than one engine can be configured now. Engines configuration is done on the engines.yaml file. Queries are redirected to the appropriate engine without further necessary changes on the API.

  • Improved topic error information. Check OpenAPI for more information regarding the JSON structure. Example:

  "diagnosis_error": {
    "checked_issue": "Check Excel Installation"
    "errors": [
        "code": 1,
        "message": "Error running diagnosis RA, status = failed"
  • Basic data from devices cached on a local database to minimize queries to engines. Refresh frequency default is one hour and it can be configured.

  • Container logs are stored with the local machine time instead of UTC.

  • New time-related fields for devices and users:

  • last_seen indicates the last time that activity on the device was reported.

  • user_last_activity_time is the time of user logon or interaction.

  • New configuration variables on .env file:








Version 0.4.0

April 4, 2019

  • New topic: OneDrive Issues

  • New endpoints to retrieve list of topics (name) and remote actions (id, uid and name):

  • /topics

  • /remote_actions

  • New endpoint to retrieve the status of a remote action:

  • /remote_action/{ra_id}/{device_uid} (GET)

  • Endpoint to execute a remote action updated from /remote_action/run/{ra_uid}/{device_uid} to:

  • /remote_action/{ra_id}/{device_uid} (POST) Note that the parameter is no longer the UID but the id configured on the YAML file.

  • Now the output of the topic diagnosis returns the id and the endpoint of the remote action, for example:

"diagnosis": [
        "condition": "system_drive_free_space < 10000000000",
        "match": true,
        "remediation_ras": [
            "id": "disk_cleanup",
            "endpoint": "/remote_actions/disk_cleanup/fc158e42ac274e7ca8e08114ce07bd3b"

Version 0.3.0

March 28, 2019

  • Outlook topic updated with Get Outlook Online remote action

  • More information about errors when processing a topic

  • New topic: Skype for Business issues

  • New Endpoint to get the status of a RA: /remote_action/result/{device_uid}?name={remote_action_name}

  • Default port for ingress changed from 8080 to 8090

Version 0.2.0

March 13, 2019

  • Installation video

  • Config files syntax is now YAML

  • Multiple config files allowed

  • Configuration for remote actions on a different file (remote_actions.yaml)

  • New topics:

  • PC health check

  • PC slow

  • Device bad health (called device slow before)

  • Improved logging information

  • New endpoint /device to retrieve information from a device

  • Endpoint /user/{user_id}/devices now allows to specify the type of id to use to identify the user.

  • Topics now provide more detail about the diagnosis (detail_level).

Version 0.1.0

March 1, 2019

Initial version with first topic examples

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.