{"id":18058,"date":"2018-08-24T11:29:43","date_gmt":"2018-08-24T11:29:43","guid":{"rendered":"https:\/\/developer.kore.ai\/v10-1\/?post_type=docs&#038;p=15176"},"modified":"2023-12-05T11:02:14","modified_gmt":"2023-12-05T11:02:14","slug":"apis","status":"publish","type":"post","link":"https:\/\/developer.kore.ai\/v10-1\/docs\/bots\/api-guide\/apis\/","title":{"rendered":"Using XO Platform APIs"},"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\"><div class=\"ult-spacer spacer-6ae870887f728\" data-id=\"6ae870887f728\" data-height=\"10\" data-height-mobile=\"10\" data-height-tab=\"10\" data-height-tab-portrait=\"\" data-height-mobile-landscape=\"\" style=\"clear:both;display:block;\"><\/div>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<p><span style=\"font-weight: 400;\">The XO Platform allows you to develop Virtual Assistants using secured APIs. All key developer activities like creation, import and export, training, and publishing are available using these APIs. Key account management activities like managing XO Platform access, managing admin, and roles can also be performed via secured public APIs. For a complete list of APIs and usage instructions, <\/span><a href=\"https:\/\/developer.kore.ai\/v10-1\/docs\/bots\/api-guide\/api-list\/\"><span style=\"font-weight: 400;\">refer here<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Authentication of the API requests involves the following two steps:<\/span><\/p>\n<ol>\n<li><strong>Create an App<\/strong>: An App helps you create secure authentication credentials to access the XO Platform features. You can associate the app for enabling BotKit, APIs, SDKs, and Channels.<\/li>\n<li><strong>Assign API Scopes to an App<\/strong>: Assigning API scopes to the app allows the app to access the Platform APIs securely:\n<ul>\n<li style=\"list-style-type: disc;\"><strong>XO Platform API Scopes<\/strong>: Developers can assign appropriate API Scopes to the app to access respective Platform features for a virtual assistant.<\/li>\n<li style=\"list-style-type: disc;\"><strong>Bot Admin Console API Scopes<\/strong>: Account administrators can assign API Scopes to the app to access respective features in any virtual assistants built into their accounts on the Platform.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div><\/div><\/div><\/div><\/div><\/section><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\"><div class=\"ult-spacer spacer-6ae8708880267\" data-id=\"6ae8708880267\" data-height=\"20\" data-height-mobile=\"20\" data-height-tab=\"20\" data-height-tab-portrait=\"\" data-height-mobile-landscape=\"\" style=\"clear:both;display:block;\"><\/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=\"Creating_and_Managing_Apps_in_XO_Platform\">Creating and Managing Apps in XO Platform<\/span><\/h2>\n<p>Steps to create a Client App from the XO Platform:<\/p>\n<ol>\n<li style=\"font-weight: 400;\">Go to <b>Deploy<\/b> &gt; <b>APIs &amp; Extensions<\/b> &gt; <b>Manage Apps<\/b>.<br \/>\n<a ref=\"magnificPopup\" href=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717082829\/jwt_token3.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1917\" height=\"519\" class=\"alignnone size-medium wp-image-57915\" src=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717082829\/jwt_token3.png\" alt=\"\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717082829\/jwt_token3.png 1917w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717082829\/jwt_token3-300x81.png 300w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717082829\/jwt_token3-1024x277.png 1024w\" sizes=\"auto, (max-width: 1917px) 100vw, 1917px\" \/><\/a><\/li>\n<li style=\"font-weight: 400;\">If you are creating an app for the first-time, click the <strong>Create App<\/strong> button. Otherwise, click the <strong>New App<\/strong> button.<\/li>\n<li style=\"font-weight: 400;\">On the Create Client App page, enter a <strong>name<\/strong> for the app.<\/li>\n<li>Select <strong>Enforce JTI<\/strong>, <strong>JWE<\/strong>, or both as per your requirements to secure the connections with the Platform:\n<ul>\n<li style=\"list-style-type: disc;\"><strong>Enforce JTI (JWT ID) Claim<\/strong> \u2013 Once enabled, the Platform accepts the requests only from calls with the JTI Claim in the requests and those without JTI Claim are rejected.<\/li>\n<li style=\"list-style-type: disc;\"><strong>Enforce JWE Encryption<\/strong> (Generating JWT token) \u2013 To access the XO Platform\u2019s public APIs, the application making the API request requires authentication. Kore.ai uses the JWT (JSON Web Token) mechanism to handle the authentication. For a quick overview of the JWT token, read <a href=\"https:\/\/jwt.io\/introduction\/\">Introduction to JWT tokens<\/a>.<br \/>\n<a ref=\"magnificPopup\" href=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070411\/add-app-2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-48149\" src=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070411\/add-app-2.png\" alt=\"\" width=\"503\" height=\"510\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070411\/add-app-2.png 838w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070411\/add-app-2-296x300.png 296w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070411\/add-app-2-100x100.png 100w\" sizes=\"auto, (max-width: 503px) 100vw, 503px\" \/><\/a><\/li>\n<\/ul>\n<\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Click <\/span><strong>Next<\/strong><span style=\"font-weight: 400;\"> and <\/span><strong>Done<\/strong><span style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">.<br \/>\nYou are directed to the Manage Apps page, which lists all the apps associated with this virtual assistant.<\/span><\/span>&nbsp;<\/li>\n<li style=\"font-weight: 400;\">Click the app name or anywhere in the row to see the app\u2019s details, such as <strong>Bot Name<\/strong>, <strong>Bot ID<\/strong>, <strong>Client ID<\/strong>, and <strong>Client Secret<\/strong>. Also, the App Usage column lists where this app is used &#8211; Web SDK, BotKit, APIs, WebHook and IVR Channels.\n<div class=\"alert alert-info\"><strong>Note:<\/strong> Use the <strong>Client ID<\/strong> and <strong>Client Secret<\/strong> of the client app from above to generate a JWT token. This token must be passed as a part of each API request for authorization.<\/div>\n<\/li>\n<li>To delete apps, click the <b>Delete<\/b> icon against the respective app.\n<div class=\"alert alert-info\"><strong>Note:<\/strong> Only the Bot Owner can delete an app.<\/div>\n<\/li>\n<\/ol>\n<h2><span class=\"ez-toc-section\" id=\"Creating_and_Managing_Apps_in_Bots_Admin_Console\">Creating and Managing Apps in Bots Admin Console<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Steps to create a Client App from the Bot Admin Console:<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Log in to the Admin Console.<\/span><\/li>\n<li>Go to <strong>Security &amp; Control<\/strong> &gt; <strong>API Scopes<\/strong>.<\/li>\n<li style=\"font-weight: 400;\">On the API Scopes page, click <strong>New<\/strong>.<\/li>\n<li style=\"font-weight: 400;\">Click the <strong>Manage Apps<\/strong> link to create a new app.<br \/>\n<a ref=\"magnificPopup\" href=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717084652\/jwt_token2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1917\" height=\"895\" class=\"alignnone size-medium wp-image-57919\" src=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717084652\/jwt_token2.png\" alt=\"\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717084652\/jwt_token2.png 1917w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717084652\/jwt_token2-300x140.png 300w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717084652\/jwt_token2-1024x478.png 1024w\" sizes=\"auto, (max-width: 1917px) 100vw, 1917px\" \/><\/a><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Click <\/span><strong>New App<\/strong><span style=\"font-weight: 400;\"> and then do the following:<\/span>\n<ul>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Enter a name.<\/span><\/li>\n<li style=\"font-weight: 400;\">Select <strong>Enforce JTI<\/strong>, <strong>JWE<\/strong>, or both as per your requirements.<\/li>\n<\/ul>\n<\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Click<\/span><strong> Save<\/strong><span style=\"font-weight: 400;\">.<\/span><\/li>\n<\/ol>\n<h2><span class=\"ez-toc-section\" id=\"Data_Tables\">Data Tables<\/span><\/h2>\n<p>Access control from the Data Tables module is different from the XO Platform and Bot Admin Console access controls.<\/p>\n<p><span style=\"font-weight: 400;\">You can define apps to securely access the data from data tables and data views.<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">You can create one or more apps, <\/span><a href=\"https:\/\/developer.kore.ai\/v10-1\/docs\/bots\/advanced-topics\/data-as-a-service\/#App_Definition\"><span style=\"font-weight: 400;\">Learn more<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">These apps can be used for:<\/span>\n<ul>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Accessing the data tables and views over public APIs.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Accessing the data tables and views using Service Node.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Accessing the export and import API for the definition of data table and views.<\/span><\/li>\n<\/ul>\n<\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">You can grant this app read, write, and delete permissions to each table and view separately, <\/span><a href=\"https:\/\/developer.kore.ai\/v10-1\/docs\/bots\/advanced-topics\/data-as-a-service\/#Assignments\"><span style=\"font-weight: 400;\">Learn more<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\"><a ref=\"magnificPopup\" href=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070444\/datatable-app.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-48161\" src=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070444\/datatable-app.png\" alt=\"\" width=\"795\" height=\"354\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070444\/datatable-app.png 1922w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070444\/datatable-app-300x134.png 300w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070444\/datatable-app-1024x456.png 1024w\" sizes=\"auto, (max-width: 795px) 100vw, 795px\" \/><\/a><\/span><\/p>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div><\/div><\/div><\/div><\/div><\/section><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\"><div class=\"ult-spacer spacer-6ae87088809be\" data-id=\"6ae87088809be\" data-height=\"10\" data-height-mobile=\"10\" data-height-tab=\"10\" data-height-tab-portrait=\"\" data-height-mobile-landscape=\"\" style=\"clear:both;display:block;\"><\/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=\"Associating_API_Scopes\">Associating API Scopes<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Once you create a client app, you can associate it with API scopes.<\/span><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Adding_API_Scopes_in_the_XO_Platform\">Adding API Scopes in the XO Platform<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Steps to associate API Scopes to a Client App from the XO Platform:<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\">Go to <strong>Deploy<\/strong> &gt; <strong>API &amp; EXTENSIONs<\/strong> &gt; <strong>API Scopes<\/strong> and click <strong>Create API Scope<\/strong>.<br \/>\n<a ref=\"magnificPopup\" href=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717090820\/jwt_token1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1916\" height=\"806\" class=\"alignnone size-medium wp-image-57924\" src=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717090820\/jwt_token1.png\" alt=\"\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717090820\/jwt_token1.png 1916w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717090820\/jwt_token1-300x126.png 300w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717090820\/jwt_token1-1024x431.png 1024w\" sizes=\"auto, (max-width: 1916px) 100vw, 1916px\" \/><\/a><\/li>\n<li style=\"font-weight: 400;\">On the New API Scope Mapping page, from the <strong>App<\/strong> drop-down list, select an existing client app for authentication.<\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">The app\u2019s <strong>Client ID<\/strong> and <strong>Client Secret<\/strong> are displayed on the screen. Copy these values.<br \/>\n<a ref=\"magnificPopup\" href=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717091115\/API_Scopes.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1911\" height=\"912\" class=\"alignnone size-medium wp-image-57927\" src=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717091115\/API_Scopes.png\" alt=\"\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717091115\/API_Scopes.png 1911w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717091115\/API_Scopes-300x143.png 300w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20230717091115\/API_Scopes-1024x489.png 1024w\" sizes=\"auto, (max-width: 1911px) 100vw, 1911px\" \/><\/a><br \/>\n<\/span><\/li>\n<li style=\"font-weight: 400;\">Under the Scopes section, select the appropriate scopes to allow the client app to access the respective APIs. (If appropriate scopes are not selected, then the client apps cannot access the APIs).<\/li>\n<li>Click <strong>Save<\/strong>.<\/li>\n<\/ol>\n<h3><span class=\"ez-toc-section\" id=\"Adding_API_Scopes_in_the_Bots_Admin_Console\"><span style=\"font-weight: 400;\">Adding API Scopes in the Bots Admin Console<\/span><\/span><\/h3>\n<p>Steps to associate API Scopes to a Client App from the Bot Admin Console:<\/p>\n<ol>\n<li style=\"font-weight: 400;\">Log in to the Admin Console.<\/li>\n<li style=\"font-weight: 400;\">Go to <strong>Security &amp; Control<\/strong> &gt; <strong>API Scopes<\/strong>.<\/li>\n<li>On the API Scopes page, click <strong>New<\/strong>.<\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">On the New API Scope Mapping page, from the <\/span><strong>App <\/strong><span style=\"font-weight: 400;\">drop-down list, select an existing client app for authentication.<\/span><\/li>\n<li>Click the<strong> Manage Apps <\/strong><span style=\"font-weight: 400;\">link to create a new app.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Once you select an app, the <strong>Client ID<\/strong> and <strong>Client Secret<\/strong> appear. Copy these values.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Under the Scopes section, select the appropriate Scopes to allow the client app to access the respective APIs.<\/span><a href=\"https:\/\/developer.kore.ai\/v10-1\/docs\/bots\/bot-admin\/security-control\/security-module-overview\/#API_Scopes\"><span style=\"font-weight: 400;\">Learn more<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/li>\n<li>Click <strong>Save<\/strong>. The app and associated scopes are listed on the API Scopes page.<br \/>\n<span style=\"font-weight: 400;\"><a ref=\"magnificPopup\" href=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070421\/admin-scopes.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-48152\" src=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070421\/admin-scopes.png\" alt=\"\" width=\"780\" height=\"334\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070421\/admin-scopes.png 1951w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070421\/admin-scopes-300x128.png 300w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20221005070421\/admin-scopes-1024x438.png 1024w\" sizes=\"auto, (max-width: 780px) 100vw, 780px\" \/><\/a><\/span><\/li>\n<li>If you want to delete an app and its associated API Scope, click the <strong>Delete<\/strong> icon against the respective app.<\/li>\n<\/ol>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div><\/div><\/div><\/div><\/div><\/section><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\"><div class=\"ult-spacer spacer-6ae8708881002\" data-id=\"6ae8708881002\" data-height=\"30\" data-height-mobile=\"30\" data-height-tab=\"30\" data-height-tab-portrait=\"\" data-height-mobile-landscape=\"\" style=\"clear:both;display:block;\"><\/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=\"List_of_Available_API_Scopes\"><span style=\"font-weight: 400;\">List of Available API Scopes<\/span><\/span><\/h2>\n<table>\n<tbody>\n<tr>\n<th><strong>SCOPE<\/strong><\/th>\n<th><strong>DESCRIPTION<\/strong><\/th>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Intent and Entity Detection<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Assign this scope to allow intent and entity detection from an utterance using secured APIs.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">User Engagement Trend<\/span><\/td>\n<td><span style=\"font-weight: 400;\">To retrieve the user engagement trend.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Batch Tests Execution<\/span><\/td>\n<td><span style=\"font-weight: 400;\">To execute Batch Test Suites and get results.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Batch Tests Management<\/span><\/td>\n<td><span style=\"font-weight: 400;\">To create, modify and delete Batch Test Suites and results.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Chat History<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Assign this scope to retrieve chat transcripts of this assistant using secured APIs.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Debug Logs<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Assign this scope to retrieve debug logs of this assistant using secured APIs.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Bot Export<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Export definition of a selected assistant.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Import Variables<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Assign this scope to import variables of this assistant using secured APIs.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Export Variables<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Assign this scope to export variables of this assistant using secured APIs.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Proactive Messages<\/span><\/td>\n<td><span style=\"font-weight: 400;\">To proactively send messages to the end-users via the supported channels.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Train ML<\/span><\/td>\n<td><span style=\"font-weight: 400;\">To match a given utterance against the NL model to identify possible intents and entities present in the utterance.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Train FAQ<\/span><\/td>\n<td><span style=\"font-weight: 400;\">To match a given FAQ against the FAQ model.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Utterances Import<\/span><\/td>\n<td><span style=\"font-weight: 400;\">To import utterances for a task.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Utterances Export<\/span><\/td>\n<td><span style=\"font-weight: 400;\">To export utterances for a task.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Logs History<\/span><\/td>\n<td><span style=\"font-weight: 400;\">To retrieve the change logs for the particular assistant.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Bot Sessions<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Assign this scope to retrieve conversation sessions.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Billing Sessions<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Assign this scope to retrieve billing sessions.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Custom Reports<\/span><\/td>\n<td><span style=\"font-weight: 400;\">To retrieve the data associated with custom widgets and reports.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">RCS Message Events<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Assign this scope for opting in users to RCS Business Messaging channel and sending broadcast messages.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Metrics<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Assign this scope to retrieve Metrics information related to Intents Found, Intents not Found, Failed Tasks, Successful Tasks and Performance Logs.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Manage Knowledge Graph<\/span><\/td>\n<td><span style=\"font-weight: 400;\">To export the complete definition of the Knowledge Graph of this assistant.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">NLP Configurations<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Assign this scope to update the NLP thresholds and configurations.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Update FAQs<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Assign this scope to update the FAQ Responses and FAQ Status.<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div class=\"alert alert-info\"><strong>Note:<\/strong> Once enabled, the API Scopes must be Published. <a href=\"https:\/\/developer.kore.ai\/v10-1\/docs\/bots\/publish\/publishing-bot\/#Publishing_Tasks\">Follow the Publish<\/a> process to ensure that the API Scopes are selected.<\/div>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div><\/div><\/div><\/div><\/div><\/section><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\"><div class=\"ult-spacer spacer-6ae8708881798\" data-id=\"6ae8708881798\" data-height=\"10\" data-height-mobile=\"10\" data-height-tab=\"10\" data-height-tab-portrait=\"\" data-height-mobile-landscape=\"\" style=\"clear:both;display:block;\"><\/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=\"Generating_the_JWT_Token\">Generating the JWT Token<\/span><\/h2>\n<p>Once you have associated the API scopes with a client app, you must generate the JWT token for API requests.<\/p>\n<p>Steps to generate the token:<\/p>\n<ol>\n<li>Visit <a href=\"https:\/\/developer.kore.ai\/v10-1\/tools\/jwt\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/developer.kore.ai\/v10-1\/tools\/jwt\/<\/a>.<\/li>\n<li>In the <b>Algorithm<\/b> drop-down list, select <strong>HS256<\/strong>.<\/li>\n<li>Scroll down to the <b>Decoded<\/b> section, and update the <strong>Playload <\/strong>and the <strong>Secret<\/strong>.\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\n<li>Replace the content of the <b>Payload<\/b> field with the code block shown below, and add the Client ID of the app copied in the previous section.<br \/>\n<code>{<br \/>\n\"sub\": \"1234567890\",<br \/>\n\"appId\": \"add-Client-ID-here\"<br \/>\n}<\/code><\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<div class=\"alert alert-info\"><strong>Note:<\/strong> The XO Platform validates the token only when it is entered exactly as \u201cappId\u201d. Don\u2019t use \u201cApp ID\u201d, \u201cappid\u201d, or \u201capp ID\u201d.<\/div>\n<\/li>\n<li>In the <strong>Verify Signature<\/strong> field, replace <b>your-256-bit-secret<\/b> with the Client Secret copied in the previous section.<\/li>\n<\/ol>\n<ul>\n<li>Click <b>Copy JWT<\/b> to copy the generated token. You can pass this token as a part of the API request for authorization.<\/li>\n<\/ul>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div><\/div><\/div><\/div><\/div><\/section><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\"><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 XO Platform allows you to develop Virtual Assistants using secured APIs. All key developer activities like creation, import and export, training, and publishing are available using these APIs. Key account management activities like managing XO Platform access, managing admin, and roles can also be performed via secured public APIs. For a complete list of...","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17],"tags":[],"class_list":["post-18058","post","type-post","status-publish","format-standard","hentry","category-api-guide"],"_links":{"self":[{"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/posts\/18058","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/comments?post=18058"}],"version-history":[{"count":38,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/posts\/18058\/revisions"}],"predecessor-version":[{"id":57028,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/posts\/18058\/revisions\/57028"}],"wp:attachment":[{"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/media?parent=18058"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/categories?post=18058"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/tags?post=18058"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}