@ads-vdh/qnamaker-api

An unofficial node wrapper for the Microsoft QnAMaker API

Usage no npm install needed!

<script type="module">
  import adsVdhQnamakerApi from 'https://cdn.skypack.dev/@ads-vdh/qnamaker-api';
</script>

README

Provides a wrapper around the Cognitive Services APIs for QnaMaker

Installation

Install on npm

npm install @ads-vdh/qnamaker-api --save

Usage

Initialize the Client:

let qnaMakerApi = require("@ads-vdh/qnamaker-api");

let client = qnaMakerApi({
  endpoint: endpoint,
  apiKey: ocpApimSubscriptionKey,
  kbId: kbId, // optional (sets default for each method)
});

Knowledge Base Methods:

let knowledgeBases = await client.knowledgeBase.listAll();
let knowledgeBase = await client.knowledgeBase.download(kbId);
let kbDetails = await client.knowledgeBase.getDetails(kbId);

await client.knowledgeBase.publish(kbId);
await client.knowledgeBase.replace(kbId, qnaList);
await client.knowledgeBase.replace(kbId, qnaUpdates);

Alterations Methods:

let alterations = await client.alterations.get();
await client.alterations.replace(alterations);

Recommendations

Store your environment variables in a file named .env that looks something like this:

Endpoint=https://***.cognitiveservices.azure.com
kbId=***
OcpApimSubscriptionKey=***

Then use the dot-env package to read them in like this:

require("dotenv").config();

which should then make the environment variables available like this:

let client = qnaMakerApi({
  endpoint: process.env.Endpoint,
  apiKey: process.env.OcpApimSubscriptionKey,
  kbId: process.env.kbId,
});