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:
Entity - Requests
- Class:
Entity
- Required Privilege Level:
guest
- Required Rights: none
Description
This operation attaches a file from the WebDAV session folder to a Request. This operation is only called after a file has been uploaded to WebDAV.
Request Parameters
The attachFileFromSession 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 |
---|---|---|---|
requestId |
xs:string |
Yes | This parameter should be set with the Id of a Request. |
fileName |
xs:string |
Yes | This parameter should be set with the name of the file in the WebDAV session folder (e.g. /session/MyFileName.txt) that is to be attached to the supplied Request. |
description |
xs:string |
Yes | This parameter should be set with the description of the file that is to be attached to the supplied Request. |
visibility |
xs:string |
No | This optional parameter can be set with the visibility of the file. |
Response Parameters
Name | Type | Description |
---|---|---|
fileId |
xs:string |
This parameter is set with the Id of the file that is attached. |
fileName |
xs:string |
This parameter is set with the name of the file that is attached. |
filePath |
xs:string |
This parameter is set with the WebDAV path of the file that is attached. |
fileSize |
xs:string |
This parameter is set with the size of the file that is attached. |
timeStamp |
xs:string |
This parameter is set with the timestamp of the file that is attached. |
visibility |
xs:string |
This parameter is set with the visibility of the file that is attached. |
strErrorMessage |
xs:string |
This parameter captures validation errors. The options are "notAllowedToView", "failedToOverwriteExistingFile", "failedToAttachFile" or the exception thrown by data::ntityAttachFile API. |
exceptionName |
xs:string |
This parameter is deprecated. |
exceptionDescription |
xs:string |
This parameter is set with the API response when there is an error. |
Code Examples
curl -X POST 'https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.servicemanager/Requests' \
-H 'Authorization: ESP-APIKEY yourHornbillAPIKey' \
-H 'Content-Type: application/json' \
-d '{"@service":"apps/com.hornbill.servicemanager/Requests","@method":"attachFileFromSession","params":{"requestId":"xs:string","fileName":"xs:string","description":"xs:string","visibility":"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("requestId", "xs:string")
hornbillAPI.SetParam("fileName", "xs:string")
hornbillAPI.SetParam("description", "xs:string")
hornbillAPI.SetParam("visibility", "xs:string")
responseBody, apiError := hornbillAPI.Invoke("apps/com.hornbill.servicemanager/Requests", "attachFileFromSession")
if apiError != nil {
fmt.Println(apiError)
return
}
fmt.Println(responseBody)
}
const endpoint = "https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.servicemanager/Requests";
const payload = {
"@service": "apps/com.hornbill.servicemanager/Requests",
"@method": "attachFileFromSession",
"params": {
"requestId": "xs:string",
"fileName": "xs:string",
"description": "xs:string",
"visibility": "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/Requests";
const payload = {
"@service": "apps/com.hornbill.servicemanager/Requests",
"@method": "attachFileFromSession",
"params": {
"requestId": "xs:string",
"fileName": "xs:string",
"description": "xs:string",
"visibility": "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/Requests";
$payload = (object) [
'@service' => 'apps/com.hornbill.servicemanager/Requests',
'@method' => 'attachFileFromSession',
'params' => (object) [
'requestId' => 'xs:string',
'fileName' => 'xs:string',
'description' => 'xs:string',
'visibility' => '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/Requests"
$Body = @{
"@service" = "apps/com.hornbill.servicemanager/Requests"
"@method" = "attachFileFromSession"
params = @{
requestId = "xs:string"
fileName = "xs:string"
description = "xs:string"
visibility = "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/Requests"
headers = {
"Authorization": "ESP-APIKEY yourHornbillAPIKey"
}
payload={
"@service":"apps/com.hornbill.servicemanager/Requests",
"@method":"attachFileFromSession",
"params":{
"requestId":"xs:string",
"fileName":"xs:string",
"description":"xs:string",
"visibility":"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