List Perimeters and Subperimeters

Returns a paginated list of perimeters registered in the organizational structure.

 

URL

{RMUrl}/api/Organization/perimeters[?[[&]$filter=<filter>][[&]page=<Page>][[&]page_size=<PageSize>][[&]$orderby=<field1[desc],field2[desc]…fieldN[desc]>]]

{RMUrl}/api/Organization/perimeters/<PerimeterCode>/children[?[[&]$filter=<filter>][[&]page=<Page>][[&]page_size=<PageSize>][[&]$orderby=<field1[desc],field2[desc]…fieldN[desc]>]]

{RMUrl}/api/Organization/perimeters/root/children[?[[&]$filter=<filter>][[&]page=<Page>][[&]page_size=<PageSize>][[&]$orderby=<field1[desc],field2[desc]…fieldN[desc]>]]

 

REQUEST METHOD

GET

 

URL PARAMETERS

PerimeterCode: This parameter is provided in the URL and does not need to be sent through GET.

page: Number of the page to be displayed. Valid values: 1 to the maximum number of pages. If omitted, the value 1 is used. If the value is greater than the maximum number of pages, a blank list will be returned.

page_size: Number of items displayed per page. Valid values: 1 to 1,000. If omitted, the default value of 10 is used

filter: Query based on the OData protocol syntax for configuring filters. The fields supported are listed below. See the examples to view the operations allowed.

orderby: Orders the perimeters listed on the page by field. To order by more than one field, use a comma between the field names. For descending order, add the word "desc" for each desired field. The supported fields are listed below.

 

 FIELDS SUPPORTED BY FILTER

Guid Id;

string Name;

string Path;

string Description;

double? Longitude;

double? Latitude;

string GeolocationDescription;

string AdditionalInformation;

Guid ResponsibleId;

string ResponsibleName;

string ResponsibleEmail;

string ResponsiblePhone;

 

For detailed information on filters as supported operators, which filters apply to which data types, and more examples, see Appendix 3: Filters.

Currently, filters do not apply to the "CustomAttributes", "Managers", and "MappingCriteria" fields.

 

REQUEST EXAMPLES

The first ten perimeters (by default, ten perimeters are listed at a time):

{RMUrl}/api/Organization/perimeters

 

Perimeters 11 through 20 (second page):

{RMUrl}/api/Organization/perimeters?page=2

 

Filter by latitude and longitude coordinates:

{RMUrl}/api/Organization/perimeters?$filter=(Latitude eq -21.82219) and (Longitude eq -41.658223)

 

Filter by "ResponsibleName" field equal to "Administrator":

{RMUrl}/api/Organization/perimeters?$filter= ResponsibleName eq 'Administrator'

 

Filter by "Marketing Department" in the "Path" field, returning the entire sub-tree:

{RMUrl}/api/organization/perimeters?$filter=startswith(Path,'Marketing Department')

 

List subperimeters contained in the perimeter whose name begins with "Department":

{RMUrl}/api/organization/perimeters/c7adb930-4215-4d94-a6ae-dd9642739d4e/children?$filter=startswith(Name,'Department')

 

SUCCESS RESPONSE

List of objects with information on the perimeters according to the filter and page size specified.

Perimeter[].

 

The OrganizationPerimeter object is in the following format:

Perimeter

{

Guid Id;

string Name;

string Path;

string Description;

double? Longitude;

double? Latitude;

string GeolocationDescription;

int ZoomLevel;

string AdditionalInformation;

object Responsible;

object[] Managers;

object[] MappingCriteria;

object CustomAttributes[];

object ParentPerimeter;

}

 

For more information on custom attributes, see Appendix 1: Attribute Types.

 

SUCCESS RESPONSE EXAMPLE

[

{"CustomAttributes":{"link":"http:\/\/company.com",

      "text":"Corporate website",

      "email":"example@abc.com",

      "outline":["option 1","option 2","option 3"],

      "paragraph":"Paragraph",

      "time":"\/Date(-62135550000000-0200)\/",

      "attachment":[{

         "Description":null,

         "FileName":"Spreadsheet.txt",

         "Id":"9C1D80BA-9358-4A93-922F-3935897FAD2E"

      }],

      "number":3.255,

"relationship":{81899a03-1086-4409-a80c-2bca56199a4c"},

      "listofoptions":"2 – option2",

      "date":"\/Date(1323216000000-0200)\/",

      "datetime":"\/Date(1323212826177-0200)\/"

"multiplerelationship_group_attribute":[{"Id":"ec3db67d-f2e1-11e1-a23f-001ec91f4b0a","Caption":"Financial Dept"},{"Id":"f53181c7-f2e1-11e1-a23f-001ec91f4b0a","Caption":"Information Tech"},{"Id":"05475a88-f5fc-11e1-bf14-001ec91f4b0a","Caption":"Financial"},{"Id":"05475a8b-f5fc-11e1-bf14-001ec91f4b0a","Caption":"Human Resources"}]

   },

   "Id":"de3b9b70-136f-49f9-adf9-34ff8d9c0311",

   "Latitude":-21.82219,

   "GeolocationDescription":"",

   "Longitude":-41.658223,

   "ZoomLevel":8,

   "Managers":[{"Id":"bf0461df-1f48-11e1-af79-0800270094a6",

      "Name":"John Smith",

      "Type":"Person"

   },

   {"Id":"16e72a05-2195-11e1-af79-0800270094a6",

      "Name":"Glenda Davidson Price",

      "Type":"Person"

   }],

   "MappingCriteria":{"DnsName":{"Type":"AssetName"

      },

      "IpAddress":{"AttributeVariableName":"Threat",

         "Type":"Attribute"

      },

      "NetbiosName":{"Type":"Disabled"

      }

   },

   "Name":"Advertisement",

   "Path":"Marketing Department > Advertisement",

   "Responsible":{"Email":"admin@email.com",

      "Id":"ab1e812f-990a-11e0-a3df-001ec920c21f",

      "Name":"Administrator",

      "Phone":"+1 (646) 555-0000"

   },

   "CreatedBy":"administrator",

   "CreatedOn":"\/Date(1328528989817-0200)\/",

   "UpdatedBy":"administrator",

   "UpdatedOn":"\/Date(1328529417543-0200)\/"

}

]