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.suppliermanager
- Scope:
Entity - SupplierContracts
- Class:
Entity
- Required Privilege Level:
user
- Required Rights: Group C - canViewSupplierContracts
Description
This flowcode operation gets details of all supplier contracts based on the search criteria provided.
Request Parameters
The getSupplierContracts 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 |
---|---|---|---|
searchFilter |
xs:string |
No | Search criteria for supplier contracts. |
filterBySupplier |
xs:integer |
No | Filters the results by supplier. |
filterByOwner |
xs:string |
No | Filters the results by supplier contract owner (user id) |
filterByStatus |
xs:string |
No | Filters the results by supplier contract status |
filterByExpiry |
xs:string |
No | Filters the results by supplier contract expiry date. Accepted values are: 'within30Days', 'within60Days', 'within90Days', 'within180Days', 'over180Days' |
filterByAssets |
xs:string |
No | Filters the results by associated assets. Accepts an array of asset id's |
rowStart |
xs:integer |
Yes | Row Start for Paging. |
rowLimit |
xs:integer |
Yes | Page Size. |
sortDirection |
xs:string |
No | Either ASC or DESC. Required if sortng by supplier, start date, end date or value, otherwise the filter will not apply. |
sortOnSupplier |
xs:boolean |
No | Sorts the result set by supplier name rather than supplier contract name. Default is false. |
sortOnStartDate |
xs:boolean |
No | Sorts the result set by start date rather than supplier contract name. Default is false. |
sortOnEndDate |
xs:boolean |
No | Sorts the result set by end date rather than supplier contract name. Default is false. |
sortOnValue |
xs:boolean |
No | Sorts the result set by value rather than supplier contract name. Default is false. |
Response Parameters
Name | Type | Description |
---|---|---|
outcome |
xs:string |
The outcome of the flowcode operation. |
totalRecordCount |
xs:integer |
The total number of supplier contracts that match the search criteria. |
supplierContracts |
xs:string |
A JSON string of supplier contracts. |
supplierContractOwners |
xs:string |
A JSON string of unique supplier contract owners for all supplier contracts. |
expiresWithin30DaysCount |
xs:integer |
The number of supplier contracts that expire (reach their end date) within 30 days from the current date and time. |
expiresWithin60DaysCount |
xs:integer |
The number of supplier contracts that expire (reach their end date) within 60 days from the current date and time. |
expiresWithin90DaysCount |
xs:integer |
The number of supplier contracts that expire (reach their end date) within 90 days from the current date and time. |
expiresWithin180DaysCount |
xs:integer |
The number of supplier contracts that expire (reach their end date) within 180 days from the current date and time. |
Code Examples
curl -X POST 'https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.suppliermanager/SupplierContracts' \
-H 'Authorization: ESP-APIKEY yourHornbillAPIKey' \
-H 'Content-Type: application/json' \
-d '{"@service":"apps/com.hornbill.suppliermanager/SupplierContracts","@method":"getSupplierContracts","params":{"searchFilter":"xs:string","filterBySupplier":1,"filterByOwner":"xs:string","filterByStatus":"xs:string","filterByExpiry":"xs:string","filterByAssets":"xs:string","rowStart":1,"rowLimit":1,"sortDirection":"xs:string","sortOnSupplier":false,"sortOnStartDate":false,"sortOnEndDate":false,"sortOnValue":false}}'
package main
import (
"fmt"
apiLib "github.com/hornbill/goApiLib"
)
func main() {
hornbillAPI := apiLib.NewXmlmcInstance("yourinstanceid")
hornbillAPI.SetAPIKey("yourHornbillAPIKey")
hornbillAPI.SetJSONResponse(true)
hornbillAPI.SetParam("searchFilter", "xs:string")
hornbillAPI.SetParam("filterBySupplier", "xs:integer")
hornbillAPI.SetParam("filterByOwner", "xs:string")
hornbillAPI.SetParam("filterByStatus", "xs:string")
hornbillAPI.SetParam("filterByExpiry", "xs:string")
hornbillAPI.SetParam("filterByAssets", "xs:string")
hornbillAPI.SetParam("rowStart", "xs:integer")
hornbillAPI.SetParam("rowLimit", "xs:integer")
hornbillAPI.SetParam("sortDirection", "xs:string")
hornbillAPI.SetParam("sortOnSupplier", "xs:boolean")
hornbillAPI.SetParam("sortOnStartDate", "xs:boolean")
hornbillAPI.SetParam("sortOnEndDate", "xs:boolean")
hornbillAPI.SetParam("sortOnValue", "xs:boolean")
responseBody, apiError := hornbillAPI.Invoke("apps/com.hornbill.suppliermanager/SupplierContracts", "getSupplierContracts")
if apiError != nil {
fmt.Println(apiError)
return
}
fmt.Println(responseBody)
}
const endpoint = "https://api.hornbill.com/yourinstanceid/xmlmc/apps/com.hornbill.suppliermanager/SupplierContracts";
const payload = {
"@service": "apps/com.hornbill.suppliermanager/SupplierContracts",
"@method": "getSupplierContracts",
"params": {
"searchFilter": "xs:string",
"filterBySupplier": 1,
"filterByOwner": "xs:string",
"filterByStatus": "xs:string",
"filterByExpiry": "xs:string",
"filterByAssets": "xs:string",
"rowStart": 1,
"rowLimit": 1,
"sortDirection": "xs:string",
"sortOnSupplier": false,
"sortOnStartDate": false,
"sortOnEndDate": false,
"sortOnValue": 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.suppliermanager/SupplierContracts";
const payload = {
"@service": "apps/com.hornbill.suppliermanager/SupplierContracts",
"@method": "getSupplierContracts",
"params": {
"searchFilter": "xs:string",
"filterBySupplier": 1,
"filterByOwner": "xs:string",
"filterByStatus": "xs:string",
"filterByExpiry": "xs:string",
"filterByAssets": "xs:string",
"rowStart": 1,
"rowLimit": 1,
"sortDirection": "xs:string",
"sortOnSupplier": false,
"sortOnStartDate": false,
"sortOnEndDate": false,
"sortOnValue": 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.suppliermanager/SupplierContracts";
$payload = (object) [
'@service' => 'apps/com.hornbill.suppliermanager/SupplierContracts',
'@method' => 'getSupplierContracts',
'params' => (object) [
'searchFilter' => 'xs:string',
'filterBySupplier' => 'xs:integer',
'filterByOwner' => 'xs:string',
'filterByStatus' => 'xs:string',
'filterByExpiry' => 'xs:string',
'filterByAssets' => 'xs:string',
'rowStart' => 'xs:integer',
'rowLimit' => 'xs:integer',
'sortDirection' => 'xs:string',
'sortOnSupplier' => 'xs:boolean',
'sortOnStartDate' => 'xs:boolean',
'sortOnEndDate' => 'xs:boolean',
'sortOnValue' => '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.suppliermanager/SupplierContracts"
$Body = @{
"@service" = "apps/com.hornbill.suppliermanager/SupplierContracts"
"@method" = "getSupplierContracts"
params = @{
searchFilter = "xs:string"
filterBySupplier = "xs:integer"
filterByOwner = "xs:string"
filterByStatus = "xs:string"
filterByExpiry = "xs:string"
filterByAssets = "xs:string"
rowStart = "xs:integer"
rowLimit = "xs:integer"
sortDirection = "xs:string"
sortOnSupplier = "xs:boolean"
sortOnStartDate = "xs:boolean"
sortOnEndDate = "xs:boolean"
sortOnValue = "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.suppliermanager/SupplierContracts"
headers = {
"Authorization": "ESP-APIKEY yourHornbillAPIKey"
}
payload={
"@service":"apps/com.hornbill.suppliermanager/SupplierContracts",
"@method":"getSupplierContracts",
"params":{
"searchFilter":"xs:string",
"filterBySupplier":"xs:integer",
"filterByOwner":"xs:string",
"filterByStatus":"xs:string",
"filterByExpiry":"xs:string",
"filterByAssets":"xs:string",
"rowStart":"xs:integer",
"rowLimit":"xs:integer",
"sortDirection":"xs:string",
"sortOnSupplier":"xs:boolean",
"sortOnStartDate":"xs:boolean",
"sortOnEndDate":"xs:boolean",
"sortOnValue":"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