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 logs a new Incident or Service Request. For use with chatbot integrations.
Request Parameters
The chatbotLogRequest 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 |
---|---|---|---|
userId |
xs:string |
Yes | This parameter must be set with the Id of the chatbot session user. |
requestType |
xs:string |
Yes | Request Type to log the request as. Supports: Incident or Service Request |
summary |
xs:string |
Yes | Brief summary of the request |
description |
xs:string |
Yes | Detailed description of the request |
serviceId |
xs:integer |
No | Service ID to log the request against |
catalogId |
xs:integer |
No | Catalog ID to log the request against |
assetId |
xs:string |
No | The ID of the asset to associate to the request |
questions |
xs:string |
No | Questions that were answered during progressive capture |
questionFieldMap |
xs:string |
No | Question Field Map as JSON |
Response Parameters
Name | Type | Description |
---|---|---|
outcome |
xs:string |
This parameter is set with the outcome of the operation. The options are "success" and "failure". |
error |
xs:string |
This parameter is set with validation errors. |
requestRef |
xs:string |
The reference of the new request |
requestUrl |
xs:string |
The URL for the request in the Employee Portal |
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":"chatbotLogRequest","params":{"userId":"xs:string","requestType":"xs:string","summary":"xs:string","description":"xs:string","serviceId":1,"catalogId":1,"assetId":"xs:string","questions":"xs:string","questionFieldMap":"xs:string"}}'
package main
import (
"fmt"
apiLib "github.com/hornbill/goApiLib"
)
func main() {
hornbillAPI := apiLib.NewXmlmcInstance("yourinstanceid")
hornbillAPI.SetAPIKey("yourHornbillAPIKey")
hornbillAPI.SetJSONResponse(true)
hornbillAPI.SetParam("userId", "xs:string")
hornbillAPI.SetParam("requestType", "xs:string")
hornbillAPI.SetParam("summary", "xs:string")
hornbillAPI.SetParam("description", "xs:string")
hornbillAPI.SetParam("serviceId", "xs:integer")
hornbillAPI.SetParam("catalogId", "xs:integer")
hornbillAPI.SetParam("assetId", "xs:string")
hornbillAPI.SetParam("questions", "xs:string")
hornbillAPI.SetParam("questionFieldMap", "xs:string")
responseBody, apiError := hornbillAPI.Invoke("apps/com.hornbill.servicemanager", "chatbotLogRequest")
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": "chatbotLogRequest",
"params": {
"userId": "xs:string",
"requestType": "xs:string",
"summary": "xs:string",
"description": "xs:string",
"serviceId": 1,
"catalogId": 1,
"assetId": "xs:string",
"questions": "xs:string",
"questionFieldMap": "xs:string"
}
};
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": "chatbotLogRequest",
"params": {
"userId": "xs:string",
"requestType": "xs:string",
"summary": "xs:string",
"description": "xs:string",
"serviceId": 1,
"catalogId": 1,
"assetId": "xs:string",
"questions": "xs:string",
"questionFieldMap": "xs:string"
}
};
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' => 'chatbotLogRequest',
'params' => (object) [
'userId' => 'xs:string',
'requestType' => 'xs:string',
'summary' => 'xs:string',
'description' => 'xs:string',
'serviceId' => 'xs:integer',
'catalogId' => 'xs:integer',
'assetId' => 'xs:string',
'questions' => 'xs:string',
'questionFieldMap' => 'xs:string',
]
];
$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" = "chatbotLogRequest"
params = @{
userId = "xs:string"
requestType = "xs:string"
summary = "xs:string"
description = "xs:string"
serviceId = "xs:integer"
catalogId = "xs:integer"
assetId = "xs:string"
questions = "xs:string"
questionFieldMap = "xs:string"
}
}
$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":"chatbotLogRequest",
"params":{
"userId":"xs:string",
"requestType":"xs:string",
"summary":"xs:string",
"description":"xs:string",
"serviceId":"xs:integer",
"catalogId":"xs:integer",
"assetId":"xs:string",
"questions":"xs:string",
"questionFieldMap":"xs:string",
},
}
response = requests.request("POST", endpoint, json=payload, headers=headers)
print(response.text)
- Version {{docApp.book.version}}
- Node {{docApp.node}} / {{docApp.build}}
In This Document