{"id":18000,"date":"2017-08-08T18:12:11","date_gmt":"2017-08-08T18:12:11","guid":{"rendered":"http:\/\/developer.kore.ai\/v7-1\/?post_type=docs&#038;p=11765"},"modified":"2021-03-31T07:16:20","modified_gmt":"2021-03-31T06:16:20","slug":"installing-the-botkit-sdk","status":"publish","type":"post","link":"https:\/\/developer.kore.ai\/v7-1\/docs\/bots\/sdks\/installing-the-botkit-sdk\/","title":{"rendered":"Installing the BotKit SDK"},"content":{"rendered":"<section class=\"l-section wpb_row height_auto\"><div class=\"l-section-h i-cf\"><div class=\"g-cols vc_row type_default valign_top\"><div class=\"vc_col-sm-12 wpb_column vc_column_container\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<p>The Kore.ai BotKit SDK runs as <em>Node.js<\/em> application. You can add your own reverse proxy, firewall, and load balancer to meet your functional requirements for availability, scalability, and performance.<br \/>\nThis section provides a high-level overview of BotKit SDK installation and configuration.<br \/>\nFor a detailed end-to-end tutorial on installation and setup using our Kore.ai Sample Bots, see the\u00a0<a href=\"\/v7-1\/docs\/bots\/advanced-topics\/sdks\/kore-ai-botkit-sdk-tutorial\/\">Kore.ai BotKit SDK Tutorial<\/a>.<br \/>\nTo install the BotKit SDK, you will need to:<\/p>\n<ul>\n<li>Register your application on the Kore.ai Bots Platform by creating a bot, and then configuring that bot for the Web\/Mobile channel.<\/li>\n<li>Download and deploy the BotKit SDK libraries.<\/li>\n<li>Configure the <span style=\"color: #0000ff\">config.json<\/span> file.<\/li>\n<\/ul>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h2><span class=\"ez-toc-section\" id=\"Authorization\"><span style=\"font-weight: 400\">Authorization<\/span><\/span><\/h2>\n<p><span style=\"font-weight: 400\">As a prerequisite for BotKit SDK installation, you need to\u00a0register your SDK app with the Kore.ai Bots Platform using\u00a0the Kore.ai Bot Builder tool. <\/span><br \/>\n<span style=\"font-weight: 400\">In Bot Builder you need to create a bot, and then from API Extensions -&gt; BotKit SDK section, register\/create an app for that bot to generate the <strong>ClientID<\/strong> and <strong>Client Secret<\/strong> security credentials used for mutual SSL authentication for communication between your app and the Bots Platform and to authorize API calls from your SDK to the Kore.ai Bots Platform.\u00a0<\/span><br \/>\nIn the <span style=\"color: #0000ff\">config.json<\/span> file in the SDK, you will need to copy the following authentication keys from Bot Builder.<\/p>\n<ul>\n<li><code>appId<\/code> = ClientID<\/li>\n<li><code>appKey<\/code> &#8211; Client Secret<\/li>\n<\/ul>\n<p><span style=\"font-weight: 400\">For more information, see <\/span><a href=\"\/v7-1\/docs\/bots\/kore-web-sdk\/sdk-app-registration\/\"><span style=\"font-weight: 400\">SDK App Registration<\/span><\/a><span style=\"font-weight: 400\">.<\/span><\/p>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h2><span class=\"ez-toc-section\" id=\"Installation_and_Setup\"><span style=\"font-weight: 400\">Installation and Setup<\/span><\/span><\/h2>\n<p><span style=\"font-weight: 400\">The Kore.ai BotKit SDK libraries can be downloaded from the\u00a0Github repository at:<\/span><br \/>\n<a href=\"https:\/\/github.com\/Koredotcom\/BotKit\"><span style=\"font-weight: 400\">https:\/\/github.com\/Koredotcom\/BotKit<\/span><\/a><br \/>\n<span style=\"font-weight: 400\">To configure your SDK, you need to define the following keys in your <span style=\"color: #0000ff\">config.json<\/span> file to get your BotKit up and running.<\/span><\/p>\n<table>\n<thead>\n<tr>\n<th>Key<\/th>\n<th>Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>\"server\": {<\/code><br \/>\n&#8220;port&#8221;:<br \/>\n}<\/td>\n<td>Specifies the port to run the BotKit NodeJS app .<\/td>\n<\/tr>\n<tr>\n<td><code>app\": {<\/code><br \/>\n&#8220;apiPrefix\u201d :<br \/>\n}<\/td>\n<td>Specifies the API path prefix to the NodeJS express route.<\/td>\n<\/tr>\n<tr>\n<td><code>\"credentials\": {<\/code><br \/>\n&#8220;apikey&#8221;:<br \/>\n}<\/td>\n<td>The Client Secret value generated in Kore Bot Builder when registering your SDK app.<\/td>\n<\/tr>\n<tr>\n<td><code>\"credentials\": {<\/code><br \/>\n&#8220;appId&#8221;:<br \/>\n}<code><\/code><\/td>\n<td>The Client ID value generated in Kore Bot Builder when registering your SDK app.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400\">To\u00a0run BotKit SDK, in a <strong>Terminal<\/strong> window, enter:<\/span><br \/>\n<code>node app.js<\/code><\/p>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/section>\n","protected":false},"excerpt":{"rendered":"The Kore.ai BotKit SDK runs as Node.js application. You can add your own reverse proxy, firewall, and load balancer to meet your functional requirements for availability, scalability, and performance. This section provides a high-level overview of BotKit SDK installation and configuration. For a detailed end-to-end tutorial on installation and setup using our Kore.ai Sample Bots,...","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36],"tags":[],"class_list":["post-18000","post","type-post","status-publish","format-standard","hentry","category-sdks"],"_links":{"self":[{"href":"https:\/\/developer.kore.ai\/v7-1\/wp-json\/wp\/v2\/posts\/18000","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/developer.kore.ai\/v7-1\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/developer.kore.ai\/v7-1\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v7-1\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v7-1\/wp-json\/wp\/v2\/comments?post=18000"}],"version-history":[{"count":4,"href":"https:\/\/developer.kore.ai\/v7-1\/wp-json\/wp\/v2\/posts\/18000\/revisions"}],"predecessor-version":[{"id":23096,"href":"https:\/\/developer.kore.ai\/v7-1\/wp-json\/wp\/v2\/posts\/18000\/revisions\/23096"}],"wp:attachment":[{"href":"https:\/\/developer.kore.ai\/v7-1\/wp-json\/wp\/v2\/media?parent=18000"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/developer.kore.ai\/v7-1\/wp-json\/wp\/v2\/categories?post=18000"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/developer.kore.ai\/v7-1\/wp-json\/wp\/v2\/tags?post=18000"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}