- Published on
Retrieve Freshdesk Knowledge Base Article in Node.js
- Authors
- Name
- Ashik Nesin
- @AshikNesin
Recently, I worked on an AI chatbot project that uses our knowledge base articles (powered by Freshdesk) as a dataset.
For things that are available publicly, it's straightforward. Write a scraper and fetch all relevant articles and content.
However, in our case, we have to train on our internal data as well.
For such cases, using API might be a good choice.
Prerequisites
You will need to have an API key (obviously!) and also know the domain for your Freshdesk account.
Dependencies
Create a new Node.js project
mkdir freshdesk-kb-fetcher && $_
npm init -y; npm pkg set type="module";
And install the required package. In my case, I'll be using axios
for interacting with APIs. You can use fetch itself if it's supported in your environment, like in the latest Node.js or some edge environment.
npm install axios
Code Snippet
import axios from 'axios';
const apiKey = process.env.FRESHDESK_API_KEY; //
const domain = 'your-company-here';
const articleId = 123456;
const fetchSupportTicket = async (articleId) => {
try {
return axios.get(
`https://${domain}.freshdesk.com/api/v2/solutions/articles/${articleId}`,
{
headers: {
"Content-Type": "application/json",
Authorization: `Basic ${Buffer.from(apiKey).toString("base64")}`,
},
},
);
} catch (error) {
// Handle errors
console.log(error);
}
};
Happy fetching data!