How to remove a context variable in Watson Assistant service on IBM Cloud

For those using Watson Assistant on an older API version:

The best is to use context.remove() in the output section. I usually have an extra child node for cleanup.

{
  "output": {
    "text": {},
    "deleted": "<? context.remove('eventName') ?> <? context.remove('queryPredicate') ?>"
  }
}

Because deleted is not part of the context section it won’t be carried forward.

For those on recent API versions of Watson Assistant:

Set the variable to null. Here is the doc on “Deleting a context variable”.

{
  "context": {
    "myvariable": null
  }
}

Setting the variable to null can also be performed in the dialog form when assigning values to variables.

Leave a Comment