Repository navigation
web sdk custom entity types
Custom entity type descriptors describe entity types registered in Security Center by products, plugins, or custom integrations. Each custom entity type defines its own name, icons, privileges, supported events, auditable properties, capabilities, and hierarchy rules. The Web SDK provides endpoints to list, retrieve, and delete custom entity type descriptors. Creating or modifying custom entity type descriptors is not available through the Web SDK.
Retrieve every custom entity type registered in the system.
GET /customEntityType/all{
"Rsp": {
"Status": "Ok",
"Result": [
{
"Id": "025f7211-622e-4b4d-a155-ca5d69793e09",
"Name": "AED Unit",
"NameKey": "CustomEntityTypeName",
"SingleInstance": false,
"Capabilities": "CreateDelete, MapSupport, CanBeFederated, IsVisible, MaintenanceMode",
"Version": {
"Major": 1,
"Minor": 0,
"Build": -1,
"Revision": -1
},
"Icon": null,
"LargeIcon": null,
"SmallIcon": null,
"ResourceManagerTypeName": null,
"ViewPrivilege": {
"Id": "0896b350-7225-4a53-8ddc-e8365cae456e",
"IsGlobalPrivilege": false,
"IsEntityPrivilege": true
},
"AddPrivilege": { "..." : "..." },
"DeletePrivilege": { "..." : "..." },
"ModifyPrivilege": { "..." : "..." },
"SupportedEvents": [],
"SupportedCustomEvents": [],
"AuditableProperties": [],
"HierarchicalChildTypes": [],
"HierarchicalChildCustomTypes": [],
"DefaultMapLayerId": "00000000-0000-0000-0000-000000000000"
}
]
}
}-
Id: The unique identifier for the custom entity type. -
Name: The display name of the custom entity type. -
NameKey: The localization resource key for the type name, ornullif not localized. -
SingleInstance:trueif only one entity of this type is allowed in the system,falseif multiple entities are allowed. -
Capabilities: Comma-separated list of descriptor capability flags. These flags describe product behavior and UI support; they do not replace Web SDK privilege checks. Possible values include:-
None: No special capability flag is set. -
CreateDelete: Entities of this type can be created and deleted from Config Tool. -
MapSupport: Entities of this type can be placed on maps. -
CanBeFederated: Entities of this type can be federated to other systems. -
IsVisible: Entities of this type are visible in the Security Center UI. -
MaintenanceMode: Entities of this type can be put into maintenance mode. -
HasRunningState: Entities of this type expose a running state.
-
-
Version: The version of the custom entity type descriptor, withMajor,Minor,Build,Revision,MajorRevision, andMinorRevisionfields.Build,Revision,MajorRevision, andMinorRevisioncan be-1for types versioned only at theMajor.Minorlevel. -
LargeIcon,SmallIcon: URIs for the large and small icons, ornullwhen an icon is not defined. Afile:///URI identifies a file on the Security Center server. -
ResourceManagerTypeName: The assembly-qualified name of the resource manager for localized strings, ornullif not localized. -
ViewPrivilege,AddPrivilege,DeletePrivilege,ModifyPrivilege: Privilege descriptors that control access to entities of this type. Each contains the privilegeIdand whether it is a global or entity-level privilege. -
SupportedEvents: List of event type names that entities of this type can raise. -
SupportedCustomEvents: List of custom event IDs that entities of this type can raise. Values are typically positive integers matching IDs assigned when the custom event was created. Some system-defined types also return negative integers (for example,Automation rulereturns[-6]); negative IDs cannot be created through the Web SDK. -
AuditableProperties: List of properties that are tracked for audit purposes. Each entry contains:-
Path: The path from the root to the audited section, such asroot/ExpireTimeUtc. -
Name: The display name of the property. -
NameKey: The localization resource key for the property name, ornull. -
Hints: Formatting hints for displaying changes (for example,Xml,UtcDate, Xml,Collection, Xml). -
SourceProperty: The source of the audit data in the entity (for example,Xml).
-
-
HierarchicalChildTypes: List of built-in entity types that are allowed as children in the entity hierarchy. -
HierarchicalChildCustomTypes: List of custom entity type GUIDs that are allowed as children. -
DefaultMapLayerId: The GUID of the default map layer for entities of this type, or00000000-0000-0000-0000-000000000000if no default map layer is specified.
Retrieve a single custom entity type by its GUID.
GET /customEntityType/{custom-entity-type-id}Replace {custom-entity-type-id} with the GUID of the custom entity type descriptor. Rsp.Result contains the same descriptor fields as a single entry from the listing endpoint.
If the type does not exist, the response contains Rsp.Status: "Ok" but omits Rsp.Result.
Create a custom entity with NewEntity(CustomEntity,{custom-entity-type-id}). Replace {custom-entity-type-id} with the Id of the intended type returned by GET /customEntityType/all.
POST /entity?q=entity=NewEntity(CustomEntity,{custom-entity-type-id}),Name=MyEntity,Guid{
"Rsp": {
"Status": "Ok",
"Result": {
"Guid": "{new-entity-guid}"
}
}
}To delete a custom entity instance, send this request:
DELETE /entity/{entity-guid}To list or search custom entities, use the configuration report:
GET /report/CustomEntityConfiguration?q=Page=1,PageSize=10To restrict the results to one or more custom entity types:
GET /report/CustomEntityConfiguration?q=CustomEntityTypes@{custom-entity-type-guid},Page=1,PageSize=10,ReturnFields@Name@DescriptionFor the full query options, see Referencing entities.
Delete a custom entity type descriptor from the system.
DELETE /customEntityType/{custom-entity-type-id}Replace {custom-entity-type-id} with the GUID of the custom entity type descriptor to delete.
Important
This operation requires an administrator account. It also fails if entities of the custom type still exist in the system. Delete all entities of the type before removing the type descriptor.
A successful deletion returns:
{
"Rsp": {
"Status": "Ok"
}
}-
The /entity endpoint: The
/entityendpoint and sharedq=query syntax. - Referencing entities: Entity discovery, search, and parameter formats.
- Overview
- Connecting to Security Center
- SDK certificates
- Referencing SDK assemblies
- ASP.NET hosting
- SDK compatibility
- Migrating to modern .NET
- Entities
- Entity cache
- Entity loading, cache, and query options
- Detecting entity changes
- Entity change event reference
- Transactions
- Security Center events
- Actions
- Security Desk
- Custom events
- Event-to-actions
- Managing macros
- ReportManager
- ReportManager query reference
- Access control raw events
- DownloadAllRelatedData and StrictResults
- Privileges
- Partitions
- Entity write restrictions
- About custom fields
- About video
- About cameras
- Enrolling a video unit
- Ingesting third-party video
- Archiver and auxiliary archiver roles
- Archive transfer
- About access control
- About cardholders and credentials
- About doors, areas, elevators, and access points
- About access rules and schedules
- About access control units and interface modules
- Enrolling an access control unit
- Door templates
- Visitors
- Mobile credentials
- About threat levels
- About alarms
- About incidents
- Maps
- Logging
- Overview
- Localization
- Certificates
- Lifecycle
- Threading
- State management
- Configuration
- Restricted configuration
- Events
- Queries
- Request manager
- Database
- Entity ownership
- Engine extensions
- Entity mappings
- Server management
- Custom privileges
- Custom entity types
- Resolving non-SDK assemblies
- Deploying plugins
- Modern .NET support
- Overview
- Localization
- Certificates
- Creating modules
- Tasks
- Pages
- Components
- Tile extensions
- Services
- Contextual actions
- Custom actions
- Options extensions
- Configuration pages
- Monitors
- Shared components
- Commands
- Extending events
- Map extensions
- Timeline providers
- Image extractors
- Credential encoders
- Credential readers
- Cardholder fields extractors
- Badge printers
- Content builders
- Dashboard widgets
- Incidents
- Logon providers
- Pinnable content builders
- Custom report pages
- Overview
- Getting started
- Media file formats
- MediaPlayer
- VideoSourceFilter
- MediaExporter
- MediaFile
- G64 converters
- FileCryptingManager
- PlaybackSequenceQuerier
- PlaybackStreamReader
- OverlayFactory
- PtzCoordinatesManager
- AudioTransmitter
- AudioRecorder
- AnalogMonitorController
- Camera blocking
- Overview
- Getting started
- Referencing entities
- Entity operations
- About access control in the Web SDK
- About video in the Web SDK
- Users and user groups
- Partitions
- Custom fields
- Custom card formats
- Actions
- Events and alarms
- Incidents
- Reports
- Tasks
- Macros
- Custom entity types
- System endpoints
- Performance guide
- Reference
- Endpoints
- Constants
- Enumerations
- Under the hood
- Troubleshooting