using RestSharp;
var options = new RestClientOptions("http://localhost:56350/api/v1/Agents/Find/SaveRestrictionsAndGetCriteriaInformation");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddJsonBody("{\n \"StorageType\": \"<string>\",\n \"ProviderName\": \"<string>\",\n \"StorageKey\": \"<string>\",\n \"Restrictions\": [\n {\n \"Name\": \"<string>\",\n \"Operator\": \"<string>\",\n \"Values\": [\n \"<string>\"\n ],\n \"DisplayValues\": [\n \"<string>\"\n ],\n \"ColumnInfo\": {\n \"DisplayName\": \"<string>\",\n \"DisplayTooltip\": \"<string>\",\n \"DisplayType\": \"<string>\",\n \"CanOrderBy\": true,\n \"Name\": \"<string>\",\n \"CanRestrictBy\": true,\n \"RestrictionType\": \"<string>\",\n \"RestrictionListName\": \"<string>\",\n \"IsVisible\": true,\n \"ExtraInfo\": \"<string>\",\n \"Width\": \"<string>\",\n \"IconHint\": \"<string>\",\n \"HeadingIconHint\": \"<string>\"\n },\n \"IsActive\": true,\n \"SubRestrictions\": \"<array>\",\n \"InterParenthesis\": 123,\n \"UniqueHash\": 123\n }\n ],\n \"StaticColumns\": [\n \"<string>\"\n ]\n}", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);
const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
StorageType: '<string>',
ProviderName: '<string>',
StorageKey: '<string>',
Restrictions: [
{
Name: '<string>',
Operator: '<string>',
Values: ['<string>'],
DisplayValues: ['<string>'],
ColumnInfo: {
DisplayName: '<string>',
DisplayTooltip: '<string>',
DisplayType: '<string>',
CanOrderBy: true,
Name: '<string>',
CanRestrictBy: true,
RestrictionType: '<string>',
RestrictionListName: '<string>',
IsVisible: true,
ExtraInfo: '<string>',
Width: '<string>',
IconHint: '<string>',
HeadingIconHint: '<string>'
},
IsActive: true,
SubRestrictions: '<array>',
InterParenthesis: 123,
UniqueHash: 123
}
],
StaticColumns: ['<string>']
})
};
fetch('http://localhost:56350/api/v1/Agents/Find/SaveRestrictionsAndGetCriteriaInformation', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "56350",
CURLOPT_URL => "http://localhost:56350/api/v1/Agents/Find/SaveRestrictionsAndGetCriteriaInformation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'StorageType' => '<string>',
'ProviderName' => '<string>',
'StorageKey' => '<string>',
'Restrictions' => [
[
'Name' => '<string>',
'Operator' => '<string>',
'Values' => [
'<string>'
],
'DisplayValues' => [
'<string>'
],
'ColumnInfo' => [
'DisplayName' => '<string>',
'DisplayTooltip' => '<string>',
'DisplayType' => '<string>',
'CanOrderBy' => true,
'Name' => '<string>',
'CanRestrictBy' => true,
'RestrictionType' => '<string>',
'RestrictionListName' => '<string>',
'IsVisible' => true,
'ExtraInfo' => '<string>',
'Width' => '<string>',
'IconHint' => '<string>',
'HeadingIconHint' => '<string>'
],
'IsActive' => true,
'SubRestrictions' => '<array>',
'InterParenthesis' => 123,
'UniqueHash' => 123
]
],
'StaticColumns' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}import requests
url = "http://localhost:56350/api/v1/Agents/Find/SaveRestrictionsAndGetCriteriaInformation"
payload = {
"StorageType": "<string>",
"ProviderName": "<string>",
"StorageKey": "<string>",
"Restrictions": [
{
"Name": "<string>",
"Operator": "<string>",
"Values": ["<string>"],
"DisplayValues": ["<string>"],
"ColumnInfo": {
"DisplayName": "<string>",
"DisplayTooltip": "<string>",
"DisplayType": "<string>",
"CanOrderBy": True,
"Name": "<string>",
"CanRestrictBy": True,
"RestrictionType": "<string>",
"RestrictionListName": "<string>",
"IsVisible": True,
"ExtraInfo": "<string>",
"Width": "<string>",
"IconHint": "<string>",
"HeadingIconHint": "<string>"
},
"IsActive": True,
"SubRestrictions": "<array>",
"InterParenthesis": 123,
"UniqueHash": 123
}
],
"StaticColumns": ["<string>"]
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
StorageType: '<string>',
ProviderName: '<string>',
StorageKey: '<string>',
Restrictions: [
{
Name: '<string>',
Operator: '<string>',
Values: ['<string>'],
DisplayValues: ['<string>'],
ColumnInfo: {
DisplayName: '<string>',
DisplayTooltip: '<string>',
DisplayType: '<string>',
CanOrderBy: true,
Name: '<string>',
CanRestrictBy: true,
RestrictionType: '<string>',
RestrictionListName: '<string>',
IsVisible: true,
ExtraInfo: '<string>',
Width: '<string>',
IconHint: '<string>',
HeadingIconHint: '<string>'
},
IsActive: true,
SubRestrictions: '<array>',
InterParenthesis: 123,
UniqueHash: 123
}
],
StaticColumns: ['<string>']
})
};
fetch('http://localhost:56350/api/v1/Agents/Find/SaveRestrictionsAndGetCriteriaInformation', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"Restrictions": [
{
"Name": "<string>",
"Operator": "<string>",
"Values": [
"<string>"
],
"DisplayValues": [
"<string>"
],
"ColumnInfo": {
"DisplayName": "<string>",
"DisplayTooltip": "<string>",
"DisplayType": "<string>",
"CanOrderBy": true,
"Name": "<string>",
"CanRestrictBy": true,
"RestrictionType": "<string>",
"RestrictionListName": "<string>",
"IsVisible": true,
"ExtraInfo": "<string>",
"Width": "<string>",
"IconHint": "<string>",
"HeadingIconHint": "<string>"
},
"IsActive": true,
"SubRestrictions": "<array>",
"InterParenthesis": 123,
"InterOperator": "None",
"UniqueHash": 123
}
],
"CriteriaArchiveColumns": [
{
"DisplayName": "<string>",
"DisplayTooltip": "<string>",
"DisplayType": "<string>",
"CanOrderBy": true,
"Name": "<string>",
"CanRestrictBy": true,
"RestrictionType": "<string>",
"RestrictionListName": "<string>",
"IsVisible": true,
"ExtraInfo": "<string>",
"Width": "<string>",
"IconHint": "<string>",
"HeadingIconHint": "<string>"
}
],
"CriteriaArchiveRows": [
{
"EntityName": "<string>",
"PrimaryKey": 123,
"ColumnData": {},
"LinkHint": "<string>",
"StyleHint": "<string>",
"TableRight": {
"Mask": "<string>",
"Reason": "<string>"
},
"FieldProperties": {}
}
],
"RestrictionGroups": [
{
"Name": "<string>",
"Description": "<string>",
"Rank": 123,
"Restrictions": [
{
"Name": "<string>",
"Operator": "<string>",
"Values": [
"<string>"
],
"DisplayValues": [
"<string>"
],
"ColumnInfo": {
"DisplayName": "<string>",
"DisplayTooltip": "<string>",
"DisplayType": "<string>",
"CanOrderBy": true,
"Name": "<string>",
"CanRestrictBy": true,
"RestrictionType": "<string>",
"RestrictionListName": "<string>",
"IsVisible": true,
"ExtraInfo": "<string>",
"Width": "<string>",
"IconHint": "<string>",
"HeadingIconHint": "<string>"
},
"IsActive": true,
"SubRestrictions": "<array>",
"InterParenthesis": 123,
"InterOperator": "None",
"UniqueHash": 123
}
]
}
],
"TableRight": {
"Mask": "<string>",
"Reason": "<string>"
},
"FieldProperties": {}
}Save Restrictions And Get Criteria Information
Save an array of restrictions for later use as search criteria (including as dynamic selection and Find).
Then, return the same result as a call to GetCriteriaInformation would have done. The purpose is to encapsulate saving and updating of a GUI in one round trip. NsApiSlow threshold: 5000 ms.
using RestSharp;
var options = new RestClientOptions("http://localhost:56350/api/v1/Agents/Find/SaveRestrictionsAndGetCriteriaInformation");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddJsonBody("{\n \"StorageType\": \"<string>\",\n \"ProviderName\": \"<string>\",\n \"StorageKey\": \"<string>\",\n \"Restrictions\": [\n {\n \"Name\": \"<string>\",\n \"Operator\": \"<string>\",\n \"Values\": [\n \"<string>\"\n ],\n \"DisplayValues\": [\n \"<string>\"\n ],\n \"ColumnInfo\": {\n \"DisplayName\": \"<string>\",\n \"DisplayTooltip\": \"<string>\",\n \"DisplayType\": \"<string>\",\n \"CanOrderBy\": true,\n \"Name\": \"<string>\",\n \"CanRestrictBy\": true,\n \"RestrictionType\": \"<string>\",\n \"RestrictionListName\": \"<string>\",\n \"IsVisible\": true,\n \"ExtraInfo\": \"<string>\",\n \"Width\": \"<string>\",\n \"IconHint\": \"<string>\",\n \"HeadingIconHint\": \"<string>\"\n },\n \"IsActive\": true,\n \"SubRestrictions\": \"<array>\",\n \"InterParenthesis\": 123,\n \"UniqueHash\": 123\n }\n ],\n \"StaticColumns\": [\n \"<string>\"\n ]\n}", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);
const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
StorageType: '<string>',
ProviderName: '<string>',
StorageKey: '<string>',
Restrictions: [
{
Name: '<string>',
Operator: '<string>',
Values: ['<string>'],
DisplayValues: ['<string>'],
ColumnInfo: {
DisplayName: '<string>',
DisplayTooltip: '<string>',
DisplayType: '<string>',
CanOrderBy: true,
Name: '<string>',
CanRestrictBy: true,
RestrictionType: '<string>',
RestrictionListName: '<string>',
IsVisible: true,
ExtraInfo: '<string>',
Width: '<string>',
IconHint: '<string>',
HeadingIconHint: '<string>'
},
IsActive: true,
SubRestrictions: '<array>',
InterParenthesis: 123,
UniqueHash: 123
}
],
StaticColumns: ['<string>']
})
};
fetch('http://localhost:56350/api/v1/Agents/Find/SaveRestrictionsAndGetCriteriaInformation', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "56350",
CURLOPT_URL => "http://localhost:56350/api/v1/Agents/Find/SaveRestrictionsAndGetCriteriaInformation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'StorageType' => '<string>',
'ProviderName' => '<string>',
'StorageKey' => '<string>',
'Restrictions' => [
[
'Name' => '<string>',
'Operator' => '<string>',
'Values' => [
'<string>'
],
'DisplayValues' => [
'<string>'
],
'ColumnInfo' => [
'DisplayName' => '<string>',
'DisplayTooltip' => '<string>',
'DisplayType' => '<string>',
'CanOrderBy' => true,
'Name' => '<string>',
'CanRestrictBy' => true,
'RestrictionType' => '<string>',
'RestrictionListName' => '<string>',
'IsVisible' => true,
'ExtraInfo' => '<string>',
'Width' => '<string>',
'IconHint' => '<string>',
'HeadingIconHint' => '<string>'
],
'IsActive' => true,
'SubRestrictions' => '<array>',
'InterParenthesis' => 123,
'UniqueHash' => 123
]
],
'StaticColumns' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}import requests
url = "http://localhost:56350/api/v1/Agents/Find/SaveRestrictionsAndGetCriteriaInformation"
payload = {
"StorageType": "<string>",
"ProviderName": "<string>",
"StorageKey": "<string>",
"Restrictions": [
{
"Name": "<string>",
"Operator": "<string>",
"Values": ["<string>"],
"DisplayValues": ["<string>"],
"ColumnInfo": {
"DisplayName": "<string>",
"DisplayTooltip": "<string>",
"DisplayType": "<string>",
"CanOrderBy": True,
"Name": "<string>",
"CanRestrictBy": True,
"RestrictionType": "<string>",
"RestrictionListName": "<string>",
"IsVisible": True,
"ExtraInfo": "<string>",
"Width": "<string>",
"IconHint": "<string>",
"HeadingIconHint": "<string>"
},
"IsActive": True,
"SubRestrictions": "<array>",
"InterParenthesis": 123,
"UniqueHash": 123
}
],
"StaticColumns": ["<string>"]
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
StorageType: '<string>',
ProviderName: '<string>',
StorageKey: '<string>',
Restrictions: [
{
Name: '<string>',
Operator: '<string>',
Values: ['<string>'],
DisplayValues: ['<string>'],
ColumnInfo: {
DisplayName: '<string>',
DisplayTooltip: '<string>',
DisplayType: '<string>',
CanOrderBy: true,
Name: '<string>',
CanRestrictBy: true,
RestrictionType: '<string>',
RestrictionListName: '<string>',
IsVisible: true,
ExtraInfo: '<string>',
Width: '<string>',
IconHint: '<string>',
HeadingIconHint: '<string>'
},
IsActive: true,
SubRestrictions: '<array>',
InterParenthesis: 123,
UniqueHash: 123
}
],
StaticColumns: ['<string>']
})
};
fetch('http://localhost:56350/api/v1/Agents/Find/SaveRestrictionsAndGetCriteriaInformation', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"Restrictions": [
{
"Name": "<string>",
"Operator": "<string>",
"Values": [
"<string>"
],
"DisplayValues": [
"<string>"
],
"ColumnInfo": {
"DisplayName": "<string>",
"DisplayTooltip": "<string>",
"DisplayType": "<string>",
"CanOrderBy": true,
"Name": "<string>",
"CanRestrictBy": true,
"RestrictionType": "<string>",
"RestrictionListName": "<string>",
"IsVisible": true,
"ExtraInfo": "<string>",
"Width": "<string>",
"IconHint": "<string>",
"HeadingIconHint": "<string>"
},
"IsActive": true,
"SubRestrictions": "<array>",
"InterParenthesis": 123,
"InterOperator": "None",
"UniqueHash": 123
}
],
"CriteriaArchiveColumns": [
{
"DisplayName": "<string>",
"DisplayTooltip": "<string>",
"DisplayType": "<string>",
"CanOrderBy": true,
"Name": "<string>",
"CanRestrictBy": true,
"RestrictionType": "<string>",
"RestrictionListName": "<string>",
"IsVisible": true,
"ExtraInfo": "<string>",
"Width": "<string>",
"IconHint": "<string>",
"HeadingIconHint": "<string>"
}
],
"CriteriaArchiveRows": [
{
"EntityName": "<string>",
"PrimaryKey": 123,
"ColumnData": {},
"LinkHint": "<string>",
"StyleHint": "<string>",
"TableRight": {
"Mask": "<string>",
"Reason": "<string>"
},
"FieldProperties": {}
}
],
"RestrictionGroups": [
{
"Name": "<string>",
"Description": "<string>",
"Rank": 123,
"Restrictions": [
{
"Name": "<string>",
"Operator": "<string>",
"Values": [
"<string>"
],
"DisplayValues": [
"<string>"
],
"ColumnInfo": {
"DisplayName": "<string>",
"DisplayTooltip": "<string>",
"DisplayType": "<string>",
"CanOrderBy": true,
"Name": "<string>",
"CanRestrictBy": true,
"RestrictionType": "<string>",
"RestrictionListName": "<string>",
"IsVisible": true,
"ExtraInfo": "<string>",
"Width": "<string>",
"IconHint": "<string>",
"HeadingIconHint": "<string>"
},
"IsActive": true,
"SubRestrictions": "<array>",
"InterParenthesis": 123,
"InterOperator": "None",
"UniqueHash": 123
}
]
}
],
"TableRight": {
"Mask": "<string>",
"Reason": "<string>"
},
"FieldProperties": {}
}Headers
Convert string references and multi-language values into a specified language (iso2) code.
Convert string references and multi-language values into a specified language (iso2) code. Overrides Accept-Language value.
Number, date formatting in a specified culture (iso2 language) code. Partially overrides SO-Language/Accept-Language value. Ignored if no Language set.
Specify the timezone code that you would like date/time responses converted to.
The application token that identifies the partner app. Used when calling Online WebAPI from a server.
Query Parameters
Optional comma separated list of properties to include in the result. Other fields are then nulled out to reduce payload size: "Name,department,category". Default = show all fields.
Body
StorageType, ProviderName, StorageKey, Restrictions, StaticColumns
SaveRestrictionsAndGetCriteriaInformation: Save an array of restrictions for later use as search criteria (including as dynamic selection and Find). Then, return the same result as a call to GetCriteriaInformation would have done. The purpose is to encapsulate saving and updating of a GUI in one round trip.
Response
OK
Carrier for criteria information. It contains all the search criteria - that is, ArchiveRestrictionInfo - objects, including a column specification. In addition, it contains the same criteria expressed as an archive, with an array of ArchiveColumnInfo specifications and a set of ArchiveRow rows. The rows of the archive form a subset of the restriction array. Carrier object for CriteriaInformation. Services for the CriteriaInformation Carrier is available from the Find Agent.
Array of ArchiveRestrictionInfo restriction specifications (for the first restrictiongroup if there are more than one group
Show child attributes
Show child attributes
Array of ColumnInfo column specifications
Show child attributes
Show child attributes
Array of archive list items, i.e., the service layer carrier for archive rows. These are the criteria, represented as archive rows.
Show child attributes
Show child attributes
Array of restrictiongroups, including the default first group of restrictions
Show child attributes
Show child attributes
Wraps a table right together with an explanatory reason. Code can indicate why access is restricted.
Show child attributes
Show child attributes
Field property dictionary mapping field names to field access rights.
Show child attributes
Show child attributes
Related topics
SuperOffice.WebApi.Data.Find SaveRestrictionsAndGetCriteriaInformationRequestNSFindAgentSuperOffice.WebApi.Agents.IFindAgentSuperOffice.WebApi.Agents.FindAgentSave Restrictions And Get Criteria Information2SuperOffice.WebApi.Data.Find SaveRestrictionsAndGetCriteriaInformation2Request