Displays
- Last UpdatedOct 08, 2025
- 7 minute read
- PI System
- PI Vision API Reference
- Developer
Displays endpoint, used to manipulate displays object on server.
Get Displays
Return list of displays. Additional parameters serve to support pagination and to narrow down the list to entities that are stored inside specific folder.
Request
GET /api/v1/displays
?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 get displays from the root folder.[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 | DisplaysResponse | Success. |
| 400 | None | Bad Request. |
| 401 | None | Unauthorized. |
| 403 | None | Forbidden. |
| 500 | None | Internal server error. |
Example response body
200 Response
The following example illustrate that folder has two displays. It may contain Folders as well, which can be requested by using Folders endpoint.
{
"Items": [
{
"Id": 78103,
"Name": "Display1",
"Owner": "Domain\\user"
},
{
"Id": 78127,
"Name": "Display2",
"Owner": "Domain\\user"
}
],
"HasMore": false
}
400 Response
{
"Message": "The request is invalid.",
"ModelState": {
"FolderId": [
"folderId parameter should be a positive integer."
]
}
}
Update Display
Writes display, attachments, labels, and identities into the database.
Request
PUT /api/v1/displays
Request Headers
| Required | Header | Type | Description |
|---|---|---|---|
| yes | X-Requested-With | string | Any value. |
Parameters
Request Body
DTO that contains information required to export/import display. Not all fields are changeable, and we recommend that you change only following fields:
Identities
Labels
ParentId
Display.Name
Display.Owner
{
"DatabaseID": "D2D817B21AD241ADBFEC6C3135E0F43C",
"Identities": [
{
"Identifier": "7eb0e507-fe9d-4c32-9ff0-8ff1ac7ad8ea",
"Name": "World",
"Permission": 0
}
],
"Labels": [],
"Display": {
"Symbols": [
{
"Name": "Symbol0",
"SymbolType": "group",
"Configuration": {
"Left": 40,
"Top": 15,
"Width": 1200,
"Height": 35,
"HideThumbnail": true,
"Fill": "rgba(0,0,0,0)",
"Children": [
"cboPeriod",
"CboSelectArea",
"cmdMoveBack",
"cmdMoveForward",
"cmdReset",
"chkSyncTrends",
"cmdHelp",
"cmdExport",
"cmdClose"
]
}
}
],
"AttachmentIds": [],
"RequestId": null,
"StartTime": "*-8h",
"EndTime": "*",
"LegacyDisplay": null,
"EventFramePath": null,
"Id": 78103,
"Name": "Sample Display",
"Path": null,
"Owner": "Domain\\user",
"ReadOnly": false,
"Revision": 0,
"DisplayProperties": {
"BackgroundColor": "#C0C0C0",
"Calculations": []
}
},
"Symbols": null,
"COG": null,
"StorageTypeId": 0,
"ParentId": null,
"Attachments": [],
"Created": "2019-10-02T00:36:07Z",
"Modified": "2019-11-10T19:04:51Z"
}
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | DisplaySaveInfo | Success. |
| 400 | None | Bad Request. |
| 401 | None | Unauthorized. |
| 403 | None | Forbidden. |
| 500 | None | Internal server error. |
Example response body
200 Response
{
"Id": 100,
"PatchErrors": null,
"DuplicateDisplayWriteBehavior": "Overwrite"
}
400 Response
{
"Message": "The request is invalid.",
"ModelState": {
"FolderId": [
"folderId parameter should be a positive integer."
]
}
}
Get Display Export
Return export data for a single display. Will include metadata for display and information about associated entities.
Request
GET /api/v1/displays/{id}/export
Request Headers
| Required | Header | Type | Description |
|---|---|---|---|
| yes | X-Requested-With | string | Any value. |
Parameters
integer Id
Display Id.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | DisplayTransferInfo | Success. |
| 400 | None | Bad Request. |
| 401 | None | Unauthorized. |
| 403 | None | Forbidden. |
| 500 | None | Internal server error. |
Example response body
200 Response
{
"DatabaseID": "D2D817B21AD241ADBFEC6C3135E0F43C",
"Identities": [
{
"Identifier": "7eb0e507-fe9d-4c32-9ff0-8ff1ac7ad8ea",
"Name": "World",
"Permission": 0
}
],
"Labels": [],
"Display": {
"Symbols": [
{
"Name": "Symbol0",
"SymbolType": "statictext",
"Configuration": {
"Height": 34.5,
"SetTextFromLink": false,
"StaticText": "Thank you for being our client!",
"LinkURL": "",
"Fill": "rgba(255,255,255,0)",
"Stroke": "rgba(255,255,255,1)",
"Rotation": 0,
"FontSize": null,
"UseIntegerFontSize": false,
"Top": 112,
"Left": 53,
"Align": true
}
},
{
"Name": "Symbol2",
"SymbolType": "rectangle",
"Configuration": {
"Top": 23,
"Left": 54,
"Width": 406,
"Height": 84,
"Fill": "rgba(255,255,255,1)",
"Rotation": 0,
"Stroke": "rgba(255,255,255,1)",
"StrokeWidth": 3,
"StrokeStyle": ""
}
},
{
"Name": "Symbol1",
"SymbolType": "image",
"Configuration": {
"Top": 25,
"Left": 55,
"AttachmentId": 0,
"Width": 396,
"Height": 75,
"Rotation": 0
}
}],
"AttachmentIds": [],
"RequestId": null,
"StartTime": "*-8h",
"EndTime": "*",
"LegacyDisplay": null,
"EventFramePath": null,
"Id": 78103,
"Name": "Sample Display",
"Path": null,
"Owner": "Domain\\user",
"ReadOnly": true,
"Revision": 3,
"DisplayProperties": {
"BackgroundColor": "#C0C0C0",
"Calculations": []
},
"ProductVersion": "3.6"
},
"Symbols": null,
"COG": null,
"StorageTypeId": 0,
"ParentId": null,
"Attachments": [
{
"ID": 0,
"Name": "a0",
"Data": "data:image/png;base64,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"
}
],
"Created": "2019-10-02T00:36:07Z",
"Modified": "2019-11-10T19:04:51Z"
}
400 Response
{
"Message": "The request is invalid.",
"ModelState": {
"FolderId": [
"id parameter should be a positive integer."
]
}
}
List Display Identities
Return Access Rights for the specific display
Request
GET /api/v1/displays/{id}/AccessControl
Request Headers
| Required | Header | Type | Description |
|---|---|---|---|
| yes | X-Requested-With | string | Any value. |
Parameters
integer id
Display Id
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | IdentityModel[] | Success. |
| 400 | None | Bad Request. |
| 401 | None | Unauthorized. |
| 403 | None | Forbidden. |
| 500 | None | Internal server error. |
Example response body
200 Response
[
{
"Identifier": "7eb0e507-fe9d-4c32-9ff0-8ff1ac7ad8ea",
"Name": "World",
"Permission": 0,
"Enabled": true
}
]
Put Display Identities
Set Access Rights for the specific display
Request
PUT /api/v1/displays/{id}/AccessControl
Request Headers
| Required | Header | Type | Description |
|---|---|---|---|
| yes | X-Requested-With | string | Any value. |
Parameters
integer id
Display Id
Request Body
Request information for updating display identities
{
"Identities": [
{
"Identifier": "a2c8b729-db89-49d8-8306-97072ec51111",
"Name": "DisplayGroup1",
"Permission": 0
},
{
"Identifier": "3f9dc5bc-ab4c-4fb3-a40b-1896a6581111",
"Name": "DisplayGroup2",
"Permission": 0
}
]
}
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | string | Success. |
| 400 | None | Bad Request. |
| 401 | None | Unauthorized. |
| 403 | None | Forbidden. |
| 500 | None | Internal server error. |
Definitions
DisplaysResponse
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Items | [DisplayInfo] | false | true | Requested items. |
| HasMore | boolean | false | false | Indicate if there are more items to request. |
{
"Items": [
{
"Id": 11,
"Name": "Main Display",
"Owner": "Domain\\user"
}
],
"HasMore": false
}
DisplayInfo
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Id | int64 | false | false | None |
| Name | string | false | true | None |
| Owner | string | false | true | None |
{
"Id": 17,
"Name": "Display",
"Owner": "Domain\\user"
}
DisplayTransferInfo
Display information used to read or write a display
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| DatabaseID | string | true | true | Origin Database Id, used to maintain links during export/import. |
| TransferSessionId | guid | false | true | Obsolete. |
| Identities | [IdentityModel] | false | true | Gets or sets a list of identities that have access to this display. |
| Labels | string[] | false | true | None |
| Display | EditorDisplay | true | true | None |
| Symbols | object | false | true | Gets or sets a symbol list used for legacy displays. |
| COG | object | false | true | Gets or sets a COG used for legacy displays. |
| StorageTypeId | StorageType | false | false | Type of entity. Only StandardDisplay and EventCompareDisplay supported. |
| ParentId | int64 | false | true | Gets or sets the parent folder ID |
| Attachments | [Attachment] | false | true | None |
| ServerMappingInfo | ServerMappingInfo | false | true | Gets or sets AF and PI server mapping information. |
| DuplicateDisplayWriteBehavior | DuplicateDisplayWriteBehavior | false | false | Gets or sets an enum indicating if display with duplicate name found in folder should create a new display, overwrite the existing display, or skip creating the display. Default value is Append. |
| InheritPermissions | boolean | false | true | Gets or sets the boolean flag for inheriting permissions. |
| Created | string | false | true | The date/time the display was created on in ISO 8601 format. Read only. |
| Modified | string | false | true | The date/time the display was last modified on in ISO 8601 format. Read only. |
{
"DatabaseID": "string",
"TransferSessionId": "string",
"Identities": [
{
"Identifier": "7eb0e507-fe9d-4c32-9ff0-8ff1ac7ad8ea",
"Name": "World",
"Permission": 0
}
],
"Labels": [
"BasicDisplays"
],
"Display": {
"Id": 21,
"Name": "Display",
"Path": null,
"Owner": "Domain\\user",
"HasWriteAccess": true,
"ReadOnly": false,
"Revision": 0,
"DisplayProperties": {
"BackgroundColor": "#C0C0C0",
"Calculations": []
},
"Symbols": [ ],
"AttachmentIds": [ ],
"RequestId": null,
"StartTime": "*-8h*",
"EndTime": "**",
"LegacyDisplay": null,
"EventFramePath": null
},
"Symbols": { },
"COG": { },
"StorageTypeId": 0,
"ParentId": null,
"Attachments": [ ],
"ServerMappingInfo": { },
"DuplicateDisplayWriteBehavior": "Append",
"InheritPermissions": false,
"Created": "2021-10-21T01:23:45Z",
"Modified": "2021-10-21T01:23:45Z"
}
IdentityModel
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Identifier | string | true | true | None |
| Name | string | false | true | None |
| Permission | PermissionType | false | true | None |
| PermissionFlag | PermissionFlags | false | true | None |
| Enabled | boolean | false | false | None |
{
"Identifier": "string",
"Name": "string",
"Permission": 0,
"PermissionFlag": 0,
"Enabled": true
}
PermissionType
Enumerated Values
| Property | Value |
|---|---|
| Read | 0 |
| Write | 1 |
PermissionFlags
This enumeration supports a bitwise combination of permission values.
Enumerated Values
| Property | Value | Value (Binary) |
|---|---|---|
| None | 0 | 0 |
| AllowRead | 1 | 0000 0001 |
| AllowWrite | 2 | 0000 0010 |
| AllowManage | 4 | 0000 0100 |
| DenyManage | 8 | 0000 1000 |
| DenyWrite | 16 | 0001 0000 |
| DenyRead | 32 | 0010 0000 |
| AllowAdmin | 64 | 0100 0000 |
EditorDisplay
Properties
| Property Name | Data Type | Nullable | Description | |
|---|---|---|---|---|
| Id | int64 | false | Display Id. | |
| Name | string[1024] | true | Display Name. | |
| Path | string | true | None | |
| Owner | string | true | Display Owner. | |
| HasWriteAccess | boolean | false | None | |
| ReadOnly | boolean | false | None | |
| Revision | int64 | false | Display Revision. | |
| DisplayProperties | any | true | None | |
| ProductVersion | string | true | Indicates what Server Version was used to create this Display. | |
| Symbols | [object] | true | None | |
| AttachmentIds | [LongAndStringPair] | false | true | None |
| RequestId | string | true | None | |
| StartTime | string | true | None | |
| EndTime | string | true | None | |
| LegacyDisplay | string | true | None | |
| EventFramePath | string | true | None |
{
"Id": 0,
"Name": "string",
"Path": "string",
"Owner": "string",
"HasWriteAccess": true,
"ReadOnly": true,
"Revision": 0,
"DisplayProperties": null,
"ProductVersion": "string",
"Symbols": [ ],
"AttachmentIds": [
{
"Item1": 0,
"Item2": "string"
}
],
"RequestId": "string",
"StartTime": "string",
"EndTime": "string",
"LegacyDisplay": "string",
"EventFramePath": "string"
}
LongAndStringPair
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Item1 | int64 | false | false | None |
| Item2 | string | false | true | None |
{
"Item1": 0,
"Item2": "string"
}
StorageType
Enumerated Values
| Property | Value | Description |
|---|---|---|
| StandardDisplay | 0 | |
| ProcessBookDisplay | 1 | |
| Folder | 2 | |
| Group | 3 | |
| Image | 4 | |
| ImportFolder | 5 | |
| EventCompareDisplay | 6 |
Attachment
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| ID | int64 | true | false | Attachment Id. |
| Name | string | true | true | Attachement Name. |
| Data | string | true | true | BASE64 encoded content. |
{
"ID": 0,
"Name": "string",
"Data": "string"
}
ServerMappingInfo
Server mapping information sent from client.
Properties
| Property Name | Data Type | Description |
|---|---|---|
| SourceAFServer | string | Source Server AF. |
| DestinationAFServer | string | Destination Server AF. |
| SourceAFDatabase | string | Source Database. |
| DestinationAFDatabase | string | Destination Database. |
| SourcePIServer | string | Source Server PI. |
| DestinationPIServer | string | Destination Server PI. |
{
"SourceAFServer": "string",
"DestinationAFServer": "string",
"SourceAFDatabase": "string",
"DestinationAFDatabase": "string",
"SourcePIServer": "string",
"DestinationPIServer": "string"
}
DuplicateDisplayWriteBehavior
Enum for determining if new display should be created, existing display overwritten, or request skipped when a display with the same name is found in folder requested
Enumerated Values
| Property | Value | Description |
|---|---|---|
| Append | Append | Create a new display every time. If Display with exact name exists, new Display name will be adjusted (usually by adding (1) to its name). For example: DisplayName -> Display Name (1) |
| Skip | Skip | If Display with exact name exists in target folder, skip importing. |
| Overwrite | Overwrite | If Display with exact name exists in target folder, overwrite original Display. |
IdentitiesRequest
Request information for updating display identities
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Identities | [IdentityModel] | false | true | Gets or sets the list of identities to add or remove from the displays. |
| Insert | boolean | false | false | Gets or sets a value indicating whether identities should be inserted or deleted Legacy flag for previous versions before PV2020. |
{
"Identities": [
{
"Identifier": "string",
"Name": "string",
"Permission": 0,
"Enabled": true
}
],
"Insert": true
}
DisplaySaveInfo
Result information for a display save call
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Id | int64 | false | false | Display Id. |
| Name | string | false | true | Display name. Can be different from initial display name if auto-rename was performed. |
| PatchErrors | string[] | false | true | List of datasources that could not be patched. |
| DuplicateDisplayWriteBehavior | DuplicateDisplayWriteBehavior | false | false | Flag that indicate if display was Appended, Overwritten, or Skipped. |
{
"Id": 17,
"Name": "New Display",
"PatchErrors": [
],
"DuplicateDisplayWriteBehavior": "Append"
}