Security Event Trait
API Service: SecurityEventApi
SecurityEventApi describes the capability to view and manage security events. These are typically events from an access control system's API, but could be from any security system.
| Method | Request Type | Response Type | Description |
|---|---|---|---|
| ListSecurityEvents | ListSecurityEventsRequest | ListSecurityEventsResponse | |
| PullSecurityEvents | PullSecurityEventsRequest | PullSecurityEventsResponse stream |
SecurityEvent
SecurityEvent describes a security event that has occurred. At a minimum this should define the time the event occurred, a description of the event and a unique ID for the event, typically derived from the originating system. Ideally, this will contain all the relevant information we know about the event.
| Field Name | Type | Description |
|---|---|---|
| security_event_time | google.protobuf.Timestamp | The time the security event occurred. |
| description | string | A description of the security event. |
| id | string | The ID of the event in the source system. |
| source | SecurityEvent.Source | The source the security event originated from, typically a door or other access point. |
| actor | smartcore.bos.Actor | Optional. What actor caused this event to be triggered, an object, like a car, or a person or animal. Sometimes, the event will not require an actor e.g. a door has been open too long. Other times, an actor will cause a security event to occur at a source, e.g. a person has entered a door. |
| state | SecurityEvent.State | Optional. The state of the security event, unacknowledged, acknowledged etc. |
| priority | int32 | Optional. The priority of the security event |
| event_type | SecurityEvent.EventType | Optional. The type of the security event |
SecurityEvent.Source
A source is the device, cardholder or any other object where the security event originated from.
| Field Name | Type | Description |
|---|---|---|
| id | string | ID. The unique identifier of the source. |
| name | string | Name. The human readable name of the source. |
| subsystem | string | Subsystem. The subsystem this event originated from, access control, cctv etc. |
| floor | string | Floor. The floor the event originated from. |
| zone | string | Zone. The zone the event originated from. |
SecurityEvent.State
| Name | Number | Description |
|---|---|---|
| STATE_UNKNOWN | 0 | The state of the security event is unknown. |
| UNACKNOWLEDGED | 1 | The security event has not been acknowledged. |
| ACKNOWLEDGED | 2 | The security event has been acknowledged. |
| RESOLVED | 3 | The security event has been resolved. |
SecurityEvent.EventType
| Name | Number | Description |
|---|---|---|
| EVENT_TYPE_UNKNOWN | 0 | The event type is unknown |
| TAMPER | 1 | A security device has been tampered with |
| TAMPER_CLEAR | 2 | A tamper detection has returned to normal |
| DEVICE_OFFLINE | 3 | A device has stopped responding |
| CARD_ERROR | 4 | A card has reported an error |
| MAINTENANCE_WARNING | 5 | A maintenance warning has occurred |
| MAINTENANCE_ERROR | 6 | A maintenance error has occurred |
| ALARM_ZONE_STATE_CHANGE | 7 | The state of an alarm zone has changed |
| INCORRECT_PIN | 8 | An incorrect pin has been entered |
| ACCESS_DENIED | 9 | Access has been denied |
| ACCESS_GRANTED | 10 | Access has been granted |
| DURESS | 11 | The source experienced duress |
| CARD_EVENT | 12 | A card event has occurred |
| DOOR_STATUS | 13 | A door status has been reported |
| DOOR_OPEN_TOO_LONG | 14 | A door has been open too long |
| DOOR_FORCED_OPEN | 15 | A door has been forced open |
| DOOR_NOT_LOCKED | 16 | A door has not been locked |
| POWER_FAILURE | 17 | A power failure has occurred |
| INVALID_LOGON_ATTEMPT | 18 | An invalid logon attempt has occurred |
| NETWORK_ATTACK | 19 | A network attack has been detected |
| LOCKER_STATUS | 20 | Locker status |
| LOCKER_OPEN_TOO_LONG | 21 | A locker has been open too long |
| LOCKER_FORCED_OPEN | 22 | A locker has been forced open |
| LOCKER_NOT_LOCKED | 23 | A locker has not been locked |
ListSecurityEventsRequest
| Field Name | Type | Description |
|---|---|---|
| name | string | The name of the device to get security events for. |
| read_mask | google.protobuf.FieldMask | |
| page_size | int32 | The maximum number of SecurityEvents to return. The service may return fewer than this value. If unspecified, at most 50 items will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. |
| page_token | string | A page token, received from a previous ListSecurityEventsResponse call. Provide this to retrieve the subsequent page. |
ListSecurityEventsResponse
| Field Name | Type | Description |
|---|---|---|
| security_events | repeated SecurityEvent | |
| next_page_token | string | A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages. |
| total_size | int32 | If non-zero this is the total number of alerts after filtering is applied. This may be an estimate. |
PullSecurityEventsRequest
| Field Name | Type | Description |
|---|---|---|
| name | string | |
| read_mask | google.protobuf.FieldMask | |
| updates_only | bool |
PullSecurityEventsResponse
| Field Name | Type | Description |
|---|---|---|
| changes | repeated PullSecurityEventsResponse.Change |
PullSecurityEventsResponse.Change
| Field Name | Type | Description |
|---|---|---|
| name | string | |
| change_time | google.protobuf.Timestamp | |
| new_value | SecurityEvent | |
| old_value | SecurityEvent | |
| type | smartcore.types.ChangeType |