Resource Management APIs
Get Resource Children (GET)
Returns child nodes of a resource.
Route
|
URI |
/api/v1/Resources/Children |
|
Method |
GET |
|
Result |
JSON – Array of ResourceNodeModel |
Parameters
Query parameters for parent resource identification.
Example
GET http://localhost/api/v1/Resources/Children?parentUri=uri_key
Get Resource Ancestors (GET)
Returns ancestor nodes of a resource.
Route
|
URI |
/api/v1/Resources/Ancestors |
|
Method |
GET |
|
Result |
JSON – Array of ResourceNodeModel |
Parameters
Query parameters for resource identification.
Example
GET http://localhost/api/v1/Resources/Ancestors?resourceUri=uri_key
Get Resources By Type ID (GET)
Returns first level resources after technology node by type ID.
Route
|
URI |
/api/v1/Resources/Roots/{typeId} |
|
Method |
GET |
|
Result |
JSON – Array of ResourceNodeModel |
Parameters
The type identifier.
Example
GET http://localhost/api/v1/Resources/Roots/1
[
{
"$type": "pn.openService.dataOwner.ResourceOwnerConfigurationResourceModel, pn.openService.interfaces",
"resource": {
"$type": "pn.openService.models.LightResourceModel, pn.openService.interfaces",
"uriKey": "uok://exchangetest100.local/1/0308c8e0-c76f-4f93-8450-41db8f482e8d",
"displayName": "exchangetest100.local",
"displayPath": "DC=exchangetest100,DC=local",
"resourceType": 1,
"typeId": 15100
},
"hasChildren": true,
"hasConfigurationEntry": false,
"descendantHasConfigurationEntry": false
}
]
Get Technology Nodes (GET)
Returns all technology root nodes.
Route
|
URI |
/api/v1/Resources/Roots |
|
Method |
GET |
|
Result |
JSON – Array of TechnologyNodeModel |
Parameters
None
Example
GET http://localhost/api/v1/Resources/Roots
[
{
"$type": "pn.openService.models.ResourceTypeModel, pn.openService.interfaces",
"displayName": "Active Directory",
"resourceType": "ActiveDirectory",
"typeId": 2147483646
},
{
"$type": "pn.openService.models.ResourceTypeModel, pn.openService.interfaces",
"displayName": "File server",
"resourceType": "FileServer",
"typeId": 2147483646
}
]
Get Technology Root By String Type (GET)
Returns technology root node by string type identifier.
Route
|
URI |
/api/v1/Resources/Roots/typeStr/{typeStr} |
|
Method |
GET |
|
Result |
JSON – TechnologyNodeModel |
Parameters
The type string identifier.
Example
GET http://localhost/api/v1/Resources/Roots/typeStr/ActiveDirectory
{
"Id": "",
"Name": "eng.protected-networks.local",
"TypeId": 15100,
"ResourceType": 1,
"Path": "DC=eng,DC=protected-networks,DC=local",
"Size": 0,
"DirectChildCount": 36,
"UsersHaveAccess": 0,
"GroupsHaveAccess": 7,
"DataOwners": [],
"SidAccountId": "",
"ResourceKeyValue": {
"ResourceType": 1,
"ProviderName": "eng.protected-networks.local",
"UniqueObjectKey": ""
},
"AlertDefinitionIds": []
}
Get Technology Root By Node URI (GET)
Returns technology root node by resource URI key.
Route
|
URI |
/api/v1/Resources/Root |
|
Method |
GET |
|
Result |
JSON – TechnologyNodeModel |
Parameters
Query parameters with resource URI.
Example
GET http://localhost/api/v1/Resources/Root?resourceUri=uri_key
{
"Id": "",
"Name": "eng.protected-networks.local",
"TypeId": 15100,
"ResourceType": 1,
"Path": "DC=eng,DC=protected-networks,DC=local",
"Size": 0,
"DirectChildCount": 36,
"UsersHaveAccess": 0,
"GroupsHaveAccess": 7,
"DataOwners": [],
"SidAccountId": "",
"ResourceKeyValue": {
"ResourceType": 1,
"ProviderName": "eng.protected-networks.local",
"UniqueObjectKey": ""
},
"AlertDefinitionIds": []
}
Get Resource By URI (GET)
Returns a resource node by its URI key.
Route
|
URI |
/api/v1/Resources/Resource |
|
Method |
GET |
|
Result |
JSON – ResourceNodeModel |
Parameters
Query parameters with resource URI.
Example
GET http://localhost/api/v1/Resources/Resource?resourceUri=uri_key
Get Resource Permissions By URI (GET)
Returns permissions for a resource by URI key.
Route
|
URI |
/api/v1/Resources/permission |
|
Method |
GET |
|
Result |
JSON – Array of PermissionModel |
Parameters
Query parameters with resource URI.
Example
GET http://localhost/api/v1/Resources/permission?resourceUri=uri_key
Get Prevention Reasons (GET)
Returns list of prevention reasons for resources.
Route
|
URI |
/api/v1/Resources/PreventionReason |
|
Method |
GET |
|
Result |
JSON - Array of PreventionReasonModel |
Parameters
None
Example
GET http://localhost/api/v1/Resources/PreventionReason
Get Resource Access Rights (GET)
Returns access categories/rights that can be granted for resources.
Route
|
URI |
/api/v1/Resources/AccessCategories |
|
Method |
GET |
|
Result |
JSON – Array of AccessCategoryModel |
Parameters
None
Example
GET http://localhost/api/v1/Resources/AccessCategories
Get Resource Details By URI (GET)
Returns detailed information for a resource.
Route
|
URI |
/api/v1/Resources/Resource/Details |
|
Method |
GET |
|
Result |
JSON – ResourceDetailsModel |
Parameters
Query parameters with resource URI.
Example
GET http://localhost/api/v1/Resources/Resource/Details?resourceUri=uri_key
Get Supported Actions (GET)
Returns supported actions for selected resources.
Route
|
URI |
/api/v1/Resources/SupportedActions |
|
Method |
GET |
|
Result |
JSON – Array of ActionModel |
Parameters
Query parameters for resource selection.
Example
GET http://localhost/api/v1/Resources/SupportedActions
Get Resource Supported Actions (GET)
Returns supported actions for a single resource.
Route
|
URI |
/api/v1/Resources/Resource/SupportedActions |
|
Method |
GET |
|
Result |
JSON – Array of ActionModel |
Parameters
Query parameters with resource URI.
Example
GET http://localhost/api/v1/Resources/Resource/SupportedActions?resourceUri=uri_key
Execute Resource Action (POST)
Executes an action for changing permissions or adding accounts to resources.
Route
|
URI |
/api/v1/Resources/Action/{resourceTypeId} |
|
Method |
POST |
|
Result |
JSON – ActionExecutionResult |
Parameters
|
Name |
Type |
Mandatory |
Description |
|
resourceTypeId |
string |
Yes |
The resource type identifier |
Body: Action parameters
Example
POST http://localhost/api/v1/Resources/Action/AD
Content-Type: application/json
{action parameters}
Check If Resource Is Editable (GET)
Checks if a resource can be modified.
Route
|
URI |
/api/v1/Resources/Resource/CanBeModified |
|
Method |
GET |
|
Result |
JSON – bool |
Parameters
Query parameters with resource URI.
Example
GET http://localhost/api/v1/Resources/Resource/CanBeModified?resourceUri=uri_key
Get Resource User Info (GET)
Returns user information for a resource.
Route
|
URI |
/api/v1/Resources/UserInfo |
|
Method |
GET |
|
Result |
JSON – UserInfoModel |
Parameters
Query parameters for user identification.
Example
GET http://localhost/api/v1/Resources/UserInfo
Remove Accounts From Resource (POST)
Removes accounts from a resource.
Route
|
URI |
/api/v1/Resources/RemoveAccount/{resourceTypeId} |
|
Method |
POST |
|
Result |
JSON – RemovalResult |
Parameters
| Name | Type | Mandatory | Description | |——|——|———–|————-| | resourceTypeId | string | Yes | The resource type identifier (in URL path) |
Body: Account removal details
Example
POST http://localhost/api/v1/Resources/RemoveAccount/AD
Content-Type: application/json
{removal details}
Get Technology Packages (GET)
Returns available technology packages and options.
Route
|
URI |
/api/v1/technology/packages |
|
Method |
GET |
|
Result |
JSON – Array of TechnologyPackageModel |
Parameters
None
Example
GET http://localhost/api/v1/technology/packages
[
{
"ResourceType": 18896,
"Guid": "0955e1dc-fc2b-4017-b72c-62aeb74d61b8",
"Vendor": "Solarwinds Software Germany GmbH",
"TechnologyId": 2019121211,
"Name": "Teams",
"Description": "",
"IsModifySupported": true,
"IsTenantSupported": true,
"SystemDescription": "Microsoft Teams Resources",
"DisplayName": "Teams",
"AccountDefinitions": []
}
]
Get Access Category List (GET)
Returns list of all access rights/categories.
Route
|
URI |
/api/v1/Config/AccessCategoryList |
|
Method |
GET |
|
Result |
JSON – Array of AccessCategoryModel |
Parameters
None
Example
GET http://localhost/api/v1/Config/AccessCategoryList
[
{
"Rights": 983551,
"GenericRightClassification": 1,
"InheritanceFlags": 3,
"PropagationFlags": 0,
"Position": 0,
"DisplayName": "Full control"
},
{
"Rights": 197055,
"GenericRightClassification": 2,
"InheritanceFlags": 3,
"PropagationFlags": 0,
"Position": 1,
"DisplayName": "Modify"
},
{
"Rights": 278,
"GenericRightClassification": 6,
"InheritanceFlags": 3,
"PropagationFlags": 0,
"Position": 2,
"DisplayName": "Write"
},
{
"Rights": 131241,
"GenericRightClassification": 3,
"InheritanceFlags": 3,
"PropagationFlags": 0,
"Position": 3,
"DisplayName": "Read & Execute"
},
{
"Rights": 131209,
"GenericRightClassification": 5,
"InheritanceFlags": 3,
"PropagationFlags": 0,
"Position": 4,
"DisplayName": "Read"
},
{
"Rights": 131241,
"GenericRightClassification": 4,
"InheritanceFlags": 1,
"PropagationFlags": 0,
"Position": 5,
"DisplayName": "List folder contents"
},
{
"Rights": 131583,
"GenericRightClassification": 9,
"InheritanceFlags": 3,
"PropagationFlags": 0,
"Position": 7,
"DisplayName": "Restricted Modify"
}
]