How can we help?
{{docApp.searchError}}
{{product.name}}
Searching in {{docApp.searchFilterBySpecificBookTitle}}
{{docApp.searchResultFilteredItems.length}} results for: {{docApp.currentResultsSearchText}}
in {{docApp.searchFilterBySpecificBookTitle}}
Search results have been limited. There are a total of {{docApp.searchResponse.totalResultsAvailable}} matches.
You have an odd number of " characters in your search terms - each one needs closing with a matching " character!
-
{{resultItem.title}}
{{resultItem.url}}
{{docApp.libraryHomeViewProduct.title || docApp.libraryHomeViewProduct.id}}
{{docApp.libraryHomeViewProduct.description}}
{{group.title || group.id}}
{{group.description}}
Operation Information
- Application Reference:
com.hornbill.servicemanager
- Scope:
Global
- Class:
Application
- Required Privilege Level:
user
- Required Rights: Group H - executeSystemAPIs
Description
This operation is responsible for querying various entities via chatbot integrations, and returns relevant search results
Request Parameters
The chatbotKnowledgeSearch API takes the following input parameters. It is important to note that the parameters must satisfy the requirement of the input validation checks.
Name | Type | Required | Description |
---|---|---|---|
entities |
xs:string |
Yes | Array of Entities to Search against i.e. ["Faqs", "PublishedRequests","Requests", "KnowledgeBaseArticles"] |
userId |
xs:string |
Yes | ID of the user to search against |
searchQuery |
xs:string |
Yes | The User's Search Query |
rowStart |
xs:integer |
Yes | Used for paginating the results |
limit |
xs:integer |
Yes | Used for paginating the results |
getCount |
xs:boolean |
No | This parameter is now deprecated |
getData |
xs:boolean |
No | This parameter is now deprecated |
openRequestsOnly |
xs:boolean |
No | If true, then returns the open requests only |
Response Parameters
Name | Type | Description |
---|---|---|
searchResults |
xs:string |
List of results |
exceptionName |
xs:string |
The name of the exception, if any exception occurs |
exceptionDescription |
xs:string |
The description of the exception, if any exception occurs |
Code Examples
curl -X POST 'https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.servicemanager' \
-H 'Authorization: ESP-APIKEY yourHornbillAPIKey' \
-H 'Content-Type: application/json' \
-d '{"@service":"apps/com.hornbill.servicemanager","@method":"chatbotKnowledgeSearch","params":{"entities":"xs:string","userId":"xs:string","searchQuery":"xs:string","rowStart":1,"limit":1,"getCount":false,"getData":false,"openRequestsOnly":false}}'
package main
import (
"fmt"
apiLib "github.com/hornbill/goApiLib"
)
func main() {
hornbillAPI := apiLib.NewXmlmcInstance("yourinstanceid")
hornbillAPI.SetAPIKey("yourHornbillAPIKey")
hornbillAPI.SetJSONResponse(true)
hornbillAPI.SetParam("entities", "xs:string")
hornbillAPI.SetParam("userId", "xs:string")
hornbillAPI.SetParam("searchQuery", "xs:string")
hornbillAPI.SetParam("rowStart", "xs:integer")
hornbillAPI.SetParam("limit", "xs:integer")
hornbillAPI.SetParam("getCount", "xs:boolean")
hornbillAPI.SetParam("getData", "xs:boolean")
hornbillAPI.SetParam("openRequestsOnly", "xs:boolean")
responseBody, apiError := hornbillAPI.Invoke("apps/com.hornbill.servicemanager", "chatbotKnowledgeSearch")
if apiError != nil {
fmt.Println(apiError)
return
}
fmt.Println(responseBody)
}
const endpoint = "https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.servicemanager";
const payload = {
"@service": "apps/com.hornbill.servicemanager",
"@method": "chatbotKnowledgeSearch",
"params": {
"entities": "xs:string",
"userId": "xs:string",
"searchQuery": "xs:string",
"rowStart": 1,
"limit": 1,
"getCount": false,
"getData": false,
"openRequestsOnly": false
}
};
fetch(endpoint, {
method: 'POST',
headers: {
"Authorization": "ESP-APIKEY yourHornbillAPIKey"
},
body: JSON.stringify(payload)
}).then(res => res.json())
.then(res => console.log(res));
const axios = require('axios');
const endpoint = "https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.servicemanager";
const payload = {
"@service": "apps/com.hornbill.servicemanager",
"@method": "chatbotKnowledgeSearch",
"params": {
"entities": "xs:string",
"userId": "xs:string",
"searchQuery": "xs:string",
"rowStart": 1,
"limit": 1,
"getCount": false,
"getData": false,
"openRequestsOnly": false
}
};
const axiosConfig = {
headers: {
"Authorization": "ESP-APIKEY yourHornbillAPIKey"
}
};
axios.post(endpoint, payload, axiosConfig)
.then((res) => {
console.log("RESPONSE RECEIVED: ", res);
})
.catch((err) => {
console.log("AXIOS ERROR: ", err);
})
$endpoint = "https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.servicemanager";
$payload = (object) [
'@service' => 'apps/com.hornbill.servicemanager',
'@method' => 'chatbotKnowledgeSearch',
'params' => (object) [
'entities' => 'xs:string',
'userId' => 'xs:string',
'searchQuery' => 'xs:string',
'rowStart' => 'xs:integer',
'limit' => 'xs:integer',
'getCount' => 'xs:boolean',
'getData' => 'xs:boolean',
'openRequestsOnly' => 'xs:boolean',
]
];
$headers = [
'Authorization: ESP-APIKEY yourHornbillAPIKey',
'Content-Type: application/json'
];
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_URL, $endpoint);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
$resp = curl_exec($curl);
curl_close($curl);
echo $resp;
$Endpoint = "https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.servicemanager"
$Body = @{
"@service" = "apps/com.hornbill.servicemanager"
"@method" = "chatbotKnowledgeSearch"
params = @{
entities = "xs:string"
userId = "xs:string"
searchQuery = "xs:string"
rowStart = "xs:integer"
limit = "xs:integer"
getCount = "xs:boolean"
getData = "xs:boolean"
openRequestsOnly = "xs:boolean"
}
}
$Header = @{
"Authorization" = "ESP-APIKEY yourHornbillAPIKey"
}
$Parameters = @{
Method = "POST"
Uri = $Endpoint
Headers = $Header
Body = ($Body | ConvertTo-Json)
ContentType = "application/json"
}
Invoke-RestMethod @Parameters
import requests
import json
endpoint = "https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.servicemanager"
headers = {
"Authorization": "ESP-APIKEY yourHornbillAPIKey"
}
payload={
"@service":"apps/com.hornbill.servicemanager",
"@method":"chatbotKnowledgeSearch",
"params":{
"entities":"xs:string",
"userId":"xs:string",
"searchQuery":"xs:string",
"rowStart":"xs:integer",
"limit":"xs:integer",
"getCount":"xs:boolean",
"getData":"xs:boolean",
"openRequestsOnly":"xs:boolean",
},
}
response = requests.request("POST", endpoint, json=payload, headers=headers)
print(response.text)
- Version {{docApp.book.version}}
- Node {{docApp.node}} / {{docApp.build}}
In This Document