Folders
- Last UpdatedJul 15, 2022
- 3 minute read
- PI System
- PI Vision API Reference
- Developer
Folders endpoint, used to manipulate folders object on server.
Get Folders
Return a list of folders for a specific parent folder. If the parent folder is not specified, then it will return a list for the root folder.
Request
GET /api/v1/folders
?FolderId={FolderId}&Skip={Skip}&Count={Count}
Request Headers
| Required | Header | Type | Description |
|---|---|---|---|
| yes | X-Requested-With | string | Any value. |
Parameters
[optional] integer FolderId
Parent Folder Id. Skip this parameter to request top-level folders.
[optional] integer Skip
Amount of records to skip. Default: 0.[optional] integer Count
Amount of records to fetch. Default: 100.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | FoldersResponse | None |
| 400 | None | Bad Request. |
| 401 | None | Unauthorized. |
| 403 | None | Forbidden. |
| 500 | None | Internal server error. |
Example response body
200 Response
{
"Items": [
{
"Id": 41752,
"Name": "Folder1",
"ParentId": null,
"HasChildren": true
},
{
"Id": 41766,
"Name": "Folder2",
"ParentId": null,
"HasChildren": false
}
],
"HasMore": false
}
400 Response
{
"Message": "The request is invalid.",
"ModelState": {
"Count": [
"count parameter should be a positive integer."
]
}
}
Upsert Folder
Update or Insert Folder
Request
PUT /api/v1/folders
Request Headers
| Required | Header | Type | Description |
|---|---|---|---|
| yes | X-Requested-With | string | Any value. |
Parameters
Request Body
Request for folder update or insert:
If ParentId is null, insert folder in the root folder.
If ParentId is not null and the corresponding folder does not exist, BadRequest.
If Id is null,create a new folder.
If Id is not null, but the corresponding folder does not exist, BadRequest.
If the id is not null, update the folder (including renaming but NOT moving into a different parent folder).
Do not specify 'ParentId' value to create a folder at the root level.
{
"Name": "NewFolder"
}
or use existing Folder Id to create nested folder.
{
"Name": "NewFolder",
"ParentId": 10
}
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | FolderInfo | FolderInfo if operation is successful. |
| 400 | None | Bad Request. |
| 401 | None | Unauthorized. |
| 403 | None | Forbidden. |
| 500 | None | Internal server error. |
Example response body
200 Response
{
"Id": 93655,
"Name": "NewFolder",
"ParentId": null,
"HasChildren": false
}
400 Response
{
"Message": "The request is invalid.",
"ModelState": {
"FolderId": [
"folderId parameter should be a positive integer."
]
}
}
Definitions
FoldersResponse
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Items | [FolderInfo] | false | true | Requested items. |
| HasMore | boolean | false | false | Indicate if there are more items to request. |
{
"Items": [
{
"Id": 11,
"Name": "Folder1",
"ParentId": 10,
"HasChildren": true
},
{
"Id": 12,
"Name": "Folder2",
"ParentId": 10,
"HasChildren": false
},
],
"HasMore": true
}
FolderInfo
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Id | int64 | false | false | None |
| Name | string | false | true | None |
| ParentId | int64 | false | true | No value, null or -1 will indicate that the folder is at root level. |
| HasChildren | boolean | false | false | Indicate if folder contains of type: Folder, Standard Display, Event Comparison Display. |
{
"Id": 10,
"Name": "Folder1",
"ParentId": null,
"HasChildren": true
}
FolderUpsertRequest
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| ParentId | int64 | false | true | Set valid Folder Id to put newly created folder under that folder. Do not provide value if folder has to reside at root level. |
| Id | int64 | false | true | If set, will be used to update folder with that Id. |
| Name | string | true | false | None |
{
"ParentId": 10,
"Id": 12,
"Name": "New Name"
}