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.projectmanager
- Scope:
Entity - ProjectRisks
- Class:
Entity
- Required Privilege Level:
user
- Required Rights: Group F - canCreateProjectRisks
Description
This flowcode operation creates a new project risk for the specified project.
Request Parameters
The addProjectRisk 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 |
---|---|---|---|
projectId |
xs:integer |
Yes | The project id. |
risk |
xs:string |
Yes | The project risk. |
description |
xs:string |
No | A description of the project risk. |
impact |
xs:string |
Yes | The impact value of the project risk, taken from the simple list. e.g. 'impact.high' |
probability |
xs:string |
Yes | The Probability value or the project risk, taken from the simple list. e.g. 'probability.high' |
weighting |
xs:integer |
Yes | The weighting of the project risk (0-100). Lowest risk being 0, highest risk being 100. |
status |
xs:string |
Yes | The status of the project risk. (status.confirmedRisk) |
customA1 |
xs:string |
No | Custom Field A1 (varchar). |
customA2 |
xs:string |
No | Custom Field A2 (varchar). |
customA3 |
xs:string |
No | Custom Field A3 (varchar). |
customA4 |
xs:string |
No | Custom Field A4 (varchar). |
customA5 |
xs:string |
No | Custom Field A5 (varchar). |
projectTemplateRiskId |
xs:integer |
No | The project template risk the new risk will be created from (if any). |
Response Parameters
Name | Type | Description |
---|---|---|
outcome |
xs:string |
The outcome of the flowcode operation. |
projectRiskId |
xs:integer |
The id of the new project risk. |
Code Examples
curl -X POST 'https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.projectmanager/ProjectRisks' \
-H 'Authorization: ESP-APIKEY yourHornbillAPIKey' \
-H 'Content-Type: application/json' \
-d '{"@service":"apps/com.hornbill.projectmanager/ProjectRisks","@method":"addProjectRisk","params":{"projectId":1,"risk":"xs:string","description":"xs:string","impact":"xs:string","probability":"xs:string","weighting":1,"status":"xs:string","customA1":"xs:string","customA2":"xs:string","customA3":"xs:string","customA4":"xs:string","customA5":"xs:string","projectTemplateRiskId":1}}'
package main
import (
"fmt"
apiLib "github.com/hornbill/goApiLib"
)
func main() {
hornbillAPI := apiLib.NewXmlmcInstance("yourinstanceid")
hornbillAPI.SetAPIKey("yourHornbillAPIKey")
hornbillAPI.SetJSONResponse(true)
hornbillAPI.SetParam("projectId", "xs:integer")
hornbillAPI.SetParam("risk", "xs:string")
hornbillAPI.SetParam("description", "xs:string")
hornbillAPI.SetParam("impact", "xs:string")
hornbillAPI.SetParam("probability", "xs:string")
hornbillAPI.SetParam("weighting", "xs:integer")
hornbillAPI.SetParam("status", "xs:string")
hornbillAPI.SetParam("customA1", "xs:string")
hornbillAPI.SetParam("customA2", "xs:string")
hornbillAPI.SetParam("customA3", "xs:string")
hornbillAPI.SetParam("customA4", "xs:string")
hornbillAPI.SetParam("customA5", "xs:string")
hornbillAPI.SetParam("projectTemplateRiskId", "xs:integer")
responseBody, apiError := hornbillAPI.Invoke("apps/com.hornbill.projectmanager/ProjectRisks", "addProjectRisk")
if apiError != nil {
fmt.Println(apiError)
return
}
fmt.Println(responseBody)
}
const endpoint = "https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.projectmanager/ProjectRisks";
const payload = {
"@service": "apps/com.hornbill.projectmanager/ProjectRisks",
"@method": "addProjectRisk",
"params": {
"projectId": 1,
"risk": "xs:string",
"description": "xs:string",
"impact": "xs:string",
"probability": "xs:string",
"weighting": 1,
"status": "xs:string",
"customA1": "xs:string",
"customA2": "xs:string",
"customA3": "xs:string",
"customA4": "xs:string",
"customA5": "xs:string",
"projectTemplateRiskId": 1
}
};
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.projectmanager/ProjectRisks";
const payload = {
"@service": "apps/com.hornbill.projectmanager/ProjectRisks",
"@method": "addProjectRisk",
"params": {
"projectId": 1,
"risk": "xs:string",
"description": "xs:string",
"impact": "xs:string",
"probability": "xs:string",
"weighting": 1,
"status": "xs:string",
"customA1": "xs:string",
"customA2": "xs:string",
"customA3": "xs:string",
"customA4": "xs:string",
"customA5": "xs:string",
"projectTemplateRiskId": 1
}
};
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.projectmanager/ProjectRisks";
$payload = (object) [
'@service' => 'apps/com.hornbill.projectmanager/ProjectRisks',
'@method' => 'addProjectRisk',
'params' => (object) [
'projectId' => 'xs:integer',
'risk' => 'xs:string',
'description' => 'xs:string',
'impact' => 'xs:string',
'probability' => 'xs:string',
'weighting' => 'xs:integer',
'status' => 'xs:string',
'customA1' => 'xs:string',
'customA2' => 'xs:string',
'customA3' => 'xs:string',
'customA4' => 'xs:string',
'customA5' => 'xs:string',
'projectTemplateRiskId' => 'xs:integer',
]
];
$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.projectmanager/ProjectRisks"
$Body = @{
"@service" = "apps/com.hornbill.projectmanager/ProjectRisks"
"@method" = "addProjectRisk"
params = @{
projectId = "xs:integer"
risk = "xs:string"
description = "xs:string"
impact = "xs:string"
probability = "xs:string"
weighting = "xs:integer"
status = "xs:string"
customA1 = "xs:string"
customA2 = "xs:string"
customA3 = "xs:string"
customA4 = "xs:string"
customA5 = "xs:string"
projectTemplateRiskId = "xs:integer"
}
}
$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.projectmanager/ProjectRisks"
headers = {
"Authorization": "ESP-APIKEY yourHornbillAPIKey"
}
payload={
"@service":"apps/com.hornbill.projectmanager/ProjectRisks",
"@method":"addProjectRisk",
"params":{
"projectId":"xs:integer",
"risk":"xs:string",
"description":"xs:string",
"impact":"xs:string",
"probability":"xs:string",
"weighting":"xs:integer",
"status":"xs:string",
"customA1":"xs:string",
"customA2":"xs:string",
"customA3":"xs:string",
"customA4":"xs:string",
"customA5":"xs:string",
"projectTemplateRiskId":"xs:integer",
},
}
response = requests.request("POST", endpoint, json=payload, headers=headers)
print(response.text)
- Version {{docApp.book.version}}
- Node {{docApp.node}} / {{docApp.build}}
In This Document