using RestSharp;
var options = new RestClientOptions("http://localhost:53294/api/v1/Agents/Selection/UpdateTypicalSearch");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
request.AddJsonBody("{\n \"Searches\": {\n \"Source\": \"<string>\",\n \"MasterVersion\": 123,\n \"DeleteLeftovers\": true,\n \"Searches\": [\n {\n \"TypicalSearchId\": 123,\n \"Title\": \"<string>\",\n \"Tooltip\": \"<string>\",\n \"EntityName\": \"<string>\",\n \"IsEntityDefault\": 123,\n \"IncludePerson\": 123,\n \"Source\": \"<string>\",\n \"VersionNumber\": 123,\n \"RestrictionGroups\": [\n {\n \"Name\": \"<string>\",\n \"Description\": \"<string>\",\n \"Rank\": 123,\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 }\n ],\n \"TableRight\": {\n \"Mask\": \"<string>\",\n \"Reason\": \"<string>\"\n },\n \"FieldProperties\": {}\n }\n ],\n \"TableRight\": {\n \"Mask\": \"<string>\",\n \"Reason\": \"<string>\"\n },\n \"FieldProperties\": {}\n }\n}", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
Searches: {
Source: '<string>',
MasterVersion: 123,
DeleteLeftovers: true,
Searches: [
{
TypicalSearchId: 123,
Title: '<string>',
Tooltip: '<string>',
EntityName: '<string>',
IsEntityDefault: 123,
IncludePerson: 123,
Source: '<string>',
VersionNumber: 123,
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,
UniqueHash: 123
}
]
}
],
TableRight: {Mask: '<string>', Reason: '<string>'},
FieldProperties: {}
}
],
TableRight: {Mask: '<string>', Reason: '<string>'},
FieldProperties: {}
}
})
};
fetch('http://localhost:53294/api/v1/Agents/Selection/UpdateTypicalSearch', 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 => "53294",
CURLOPT_URL => "http://localhost:53294/api/v1/Agents/Selection/UpdateTypicalSearch",
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([
'Searches' => [
'Source' => '<string>',
'MasterVersion' => 123,
'DeleteLeftovers' => true,
'Searches' => [
[
'TypicalSearchId' => 123,
'Title' => '<string>',
'Tooltip' => '<string>',
'EntityName' => '<string>',
'IsEntityDefault' => 123,
'IncludePerson' => 123,
'Source' => '<string>',
'VersionNumber' => 123,
'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,
'UniqueHash' => 123
]
]
]
],
'TableRight' => [
'Mask' => '<string>',
'Reason' => '<string>'
],
'FieldProperties' => [
]
]
],
'TableRight' => [
'Mask' => '<string>',
'Reason' => '<string>'
],
'FieldProperties' => [
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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:53294/api/v1/Agents/Selection/UpdateTypicalSearch"
payload = { "Searches": {
"Source": "<string>",
"MasterVersion": 123,
"DeleteLeftovers": True,
"Searches": [
{
"TypicalSearchId": 123,
"Title": "<string>",
"Tooltip": "<string>",
"EntityName": "<string>",
"IsEntityDefault": 123,
"IncludePerson": 123,
"Source": "<string>",
"VersionNumber": 123,
"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,
"UniqueHash": 123
}
]
}
],
"TableRight": {
"Mask": "<string>",
"Reason": "<string>"
},
"FieldProperties": {}
}
],
"TableRight": {
"Mask": "<string>",
"Reason": "<string>"
},
"FieldProperties": {}
} }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
Searches: {
Source: '<string>',
MasterVersion: 123,
DeleteLeftovers: true,
Searches: [
{
TypicalSearchId: 123,
Title: '<string>',
Tooltip: '<string>',
EntityName: '<string>',
IsEntityDefault: 123,
IncludePerson: 123,
Source: '<string>',
VersionNumber: 123,
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,
UniqueHash: 123
}
]
}
],
TableRight: {Mask: '<string>', Reason: '<string>'},
FieldProperties: {}
}
],
TableRight: {Mask: '<string>', Reason: '<string>'},
FieldProperties: {}
}
})
};
fetch('http://localhost:53294/api/v1/Agents/Selection/UpdateTypicalSearch', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));"<string>"Update Typical Search
Update (import) TypicalSearch information in the database
NsApiSlow threshold: 5000 ms.
using RestSharp;
var options = new RestClientOptions("http://localhost:53294/api/v1/Agents/Selection/UpdateTypicalSearch");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
request.AddJsonBody("{\n \"Searches\": {\n \"Source\": \"<string>\",\n \"MasterVersion\": 123,\n \"DeleteLeftovers\": true,\n \"Searches\": [\n {\n \"TypicalSearchId\": 123,\n \"Title\": \"<string>\",\n \"Tooltip\": \"<string>\",\n \"EntityName\": \"<string>\",\n \"IsEntityDefault\": 123,\n \"IncludePerson\": 123,\n \"Source\": \"<string>\",\n \"VersionNumber\": 123,\n \"RestrictionGroups\": [\n {\n \"Name\": \"<string>\",\n \"Description\": \"<string>\",\n \"Rank\": 123,\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 }\n ],\n \"TableRight\": {\n \"Mask\": \"<string>\",\n \"Reason\": \"<string>\"\n },\n \"FieldProperties\": {}\n }\n ],\n \"TableRight\": {\n \"Mask\": \"<string>\",\n \"Reason\": \"<string>\"\n },\n \"FieldProperties\": {}\n }\n}", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
Searches: {
Source: '<string>',
MasterVersion: 123,
DeleteLeftovers: true,
Searches: [
{
TypicalSearchId: 123,
Title: '<string>',
Tooltip: '<string>',
EntityName: '<string>',
IsEntityDefault: 123,
IncludePerson: 123,
Source: '<string>',
VersionNumber: 123,
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,
UniqueHash: 123
}
]
}
],
TableRight: {Mask: '<string>', Reason: '<string>'},
FieldProperties: {}
}
],
TableRight: {Mask: '<string>', Reason: '<string>'},
FieldProperties: {}
}
})
};
fetch('http://localhost:53294/api/v1/Agents/Selection/UpdateTypicalSearch', 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 => "53294",
CURLOPT_URL => "http://localhost:53294/api/v1/Agents/Selection/UpdateTypicalSearch",
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([
'Searches' => [
'Source' => '<string>',
'MasterVersion' => 123,
'DeleteLeftovers' => true,
'Searches' => [
[
'TypicalSearchId' => 123,
'Title' => '<string>',
'Tooltip' => '<string>',
'EntityName' => '<string>',
'IsEntityDefault' => 123,
'IncludePerson' => 123,
'Source' => '<string>',
'VersionNumber' => 123,
'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,
'UniqueHash' => 123
]
]
]
],
'TableRight' => [
'Mask' => '<string>',
'Reason' => '<string>'
],
'FieldProperties' => [
]
]
],
'TableRight' => [
'Mask' => '<string>',
'Reason' => '<string>'
],
'FieldProperties' => [
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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:53294/api/v1/Agents/Selection/UpdateTypicalSearch"
payload = { "Searches": {
"Source": "<string>",
"MasterVersion": 123,
"DeleteLeftovers": True,
"Searches": [
{
"TypicalSearchId": 123,
"Title": "<string>",
"Tooltip": "<string>",
"EntityName": "<string>",
"IsEntityDefault": 123,
"IncludePerson": 123,
"Source": "<string>",
"VersionNumber": 123,
"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,
"UniqueHash": 123
}
]
}
],
"TableRight": {
"Mask": "<string>",
"Reason": "<string>"
},
"FieldProperties": {}
}
],
"TableRight": {
"Mask": "<string>",
"Reason": "<string>"
},
"FieldProperties": {}
} }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
Searches: {
Source: '<string>',
MasterVersion: 123,
DeleteLeftovers: true,
Searches: [
{
TypicalSearchId: 123,
Title: '<string>',
Tooltip: '<string>',
EntityName: '<string>',
IsEntityDefault: 123,
IncludePerson: 123,
Source: '<string>',
VersionNumber: 123,
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,
UniqueHash: 123
}
]
}
],
TableRight: {Mask: '<string>', Reason: '<string>'},
FieldProperties: {}
}
],
TableRight: {Mask: '<string>', Reason: '<string>'},
FieldProperties: {}
}
})
};
fetch('http://localhost:53294/api/v1/Agents/Selection/UpdateTypicalSearch', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));"<string>"Authorizations
SuperOffice username:password are passed in Base64-encoded.
You can also pass inn an unencoded ticket 7T:abc== with the HTTP Authenticate header.
SuperOffice SuperId OAuth implicit flow. You need to issue a request to the SuperId authorization URL https://online.superoffice.com/login/common/oauth/authorize?response_type=token &client_id=670734e0-4c5a-11e3-be9e-a171392e81db &redirect_uri=https://example.com/spa/
passing in the application id and redirect URL.
SuperId will log the user in, and redirect to the requested redirect URL with a #payload containing the access token and claims. (The redirect URL must be registered with SuperId in advance)
https://example.com/spa#access_token=8A%3aCust12227.AXRrCITpPBvQX3UbIohb &token_type=bearer &state= &expires_in=3600 &ctx=Cust12227 &netserver_url=https%3a%2f%2fsod.superoffice.com%2fCust12227%2fRemote%2fServices82%2f
You can take the #access_token value and pass it as the Authenticate HTTP header as a BEARER token.
- Authorization URL
- https://online.superoffice.com/login/common/oauth/authorize
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
Searches
UpdateTypicalSearch: Update (import) TypicalSearch information in the database
Full set of all TypicalSearch elements maintained by one source (including criteria) Carrier object for TypicalSearches. Services for the TypicalSearches Carrier is available from the Selection Agent.
Show child attributes
Show child attributes
Response
OK
The response is of type string.