DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/node-wit package

    6.0.1 • Public • Published

    Wit Node.js SDK npm

    node-wit is the Node.js SDK for


    In your Node.js project, run:

    npm install --save node-wit


    Run in your terminal:

    # Node.js <= 6.x.x, add the flag --harmony_destructuring
    node --harmony_destructuring examples/basic.js <MY_TOKEN>
    # Node.js >= v6.x.x
    node examples/basic.js <MY_TOKEN>

    See examples folder for more examples. Some examples have associated .zip files, do not forget to import those when creating a new app and grab your access token from the Settings section.

    Messenger integration example

    See examples/messenger.js for a thoroughly documented tutorial.


    The Wit module provides a Wit class with the following methods:

    You can also require a library function to test out your bot in the terminal. require('node-wit').interactive

    Wit class

    The Wit constructor takes the following parameters:

    • accessToken - the access token of your Wit instance
    • logger - (optional) the object handling the logging.
    • apiVersion - (optional) the API version to use instead of the recommended one

    The logger object should implement the methods debug, info, warn and error. They can receive an arbitrary number of parameters to log. For convenience, we provide a Logger class, taking a log level parameter


    const {Wit, log} = require('node-wit');
    const client = new Wit({
      accessToken: MY_TOKEN,
      logger: new log.Logger(log.DEBUG) // optional
    console.log(client.message('set an alarm tomorrow at 7am'));


    The Wit message API.

    Takes the following parameters:

    • message - the text you want to extract the information from
    • context - (optional) the object representing the session state


    const client = new Wit({accessToken: 'MY_TOKEN'});
    client.message('what is the weather in London?', {})
    .then((data) => {
      console.log('Yay, got response: ' + JSON.stringify(data));


    Starts an interactive conversation with your bot.


    const {interactive} = require('node-wit');

    See the docs for more information.

    Changing the API version

    On May 13th, 2020, the GET /message API was updated to reflect the new data model: intents, traits and entities are now distinct. We updated the SDK to the latest version: 20200513. You can target a specific version by passing the apiVersion parameter when creating the Wit object.

      "text": "hello",
      "intents": [ {
        "id": "1353535345345",
        "name": "greet",
        "confidence": 0.9753
      } ],
      "entities": [],
      "traits": []

    Running tests

    1. Create a new app in web console using tests/
    2. Copy the Server Access Token from app settings
    3. Run WIT_TOKEN=XXX npm test, where XXX is the Server Access Token


    The license for node-wit can be found in LICENSE file in the root directory of this source tree.


    npm i node-wit

    DownloadsWeekly Downloads






    Unpacked Size

    38.9 kB

    Total Files


    Last publish


    • blandinw
    • oliviervaussy
    • patapizza
    • martinraison
    • catacola
    • stopachka
    • aforaleka
    • chessai