What the Access Point Object Is
The Access Point object, defined in Clause 12.31 of ANSI/ASHRAE 135-2024, is how a BACnet device represents the authentication and authorization process at an access-controlled point such as a door, gate, or turnstile. It is directional: it controls access in one direction only, so a door controlled in both directions is modeled by two Access Point objects.
Authentication verifies who is presenting a credential (card, PIN, biometric, or a multi-factor combination). Authorization then decides whether that credential may enter, checking authorization mode, occupancy limits, external verification, and threat level. When both pass, the Access Point commands its Access Door to unlock at a configured priority. Every request produces one or more access events; these are stateless (NORMAL to NORMAL transitions only) and, for intrinsic reporting, use the ACCESS_EVENT algorithm for both alarm events and transaction events, delivered through the event notification services.
Where You’ll See It
- Card readers and turnstiles. Each controlled direction through a reader-guarded opening is one Access Point object that consumes factors from a Credential Data Input and grants or denies entry.
- Access controllers. Panels carrying the b-acc and b-aacc access-control profiles host Access Point objects that arbitrate authentication and drive Access Door objects.
- Anti-passback and occupancy. An Access Point references the Access Zone it leads into and out of, so entry and exit update zone occupancy and enforce passback rules.
Required Properties
Clause 12.31 requires every Access Point object to provide these properties. Datatypes are the spec’s names: Unsigned is an integer, BOOLEAN a true/false flag, and the BACnet-prefixed types are structured values defined by the standard. The Access Point has no Present_Value; the authentication and authorization result is reported through the access-event properties.
| Property | Datatype | What it holds |
|---|---|---|
Object_Identifier | BACnetObjectIdentifier | The object’s type and instance number, unique within the device |
Object_Name | CharacterString | The human-readable point name, unique within the device |
Object_Type | BACnetObjectType | Always access-point for this object |
Status_Flags | BACnetStatusFlags | Four health flags: in-alarm, fault, overridden, out-of-service |
Event_State | BACnetEventState | The object’s current event state (normal, off-normal, or fault) |
Reliability | BACnetReliability | Names the reason whenever the fault flag is set |
Out_Of_Service | BOOLEAN | When true, the object stops performing authentication and authorization |
Authentication_Status | BACnetAuthenticationStatus | Where the object is in the authentication sequence |
Active_Authentication_Policy | Unsigned | Which configured authentication policy is currently in effect |
Number_Of_Authentication_Policies | Unsigned | How many authentication policies this point defines |
Authorization_Mode | BACnetAuthorizationMode | How authorization is being enforced right now |
Access_Event | BACnetAccessEvent | The most recent access event generated at this point |
Access_Event_Tag | Unsigned | Groups the events belonging to one access transaction |
Access_Event_Time | BACnetTimeStamp | When the most recent access event occurred |
Access_Event_Credential | BACnetDeviceObjectReference | The credential involved in the most recent access event |
Access_Doors | BACnetARRAY[N] of BACnetDeviceObjectReference | The Access Door objects this point commands |
Priority_For_Writing | Unsigned | The priority at which this point commands its doors |
Property_List | BACnetARRAY[N] of BACnetPropertyIdentifier | The list of properties this instance actually implements |
Optional Properties
The properties integrators meet most are the authentication-policy group (Authentication_Policy_List, Authentication_Policy_Names), the lockout and failed-attempt controls, and the zone references (Zone_To, Zone_From) that tie the point to occupancy tracking. The intrinsic-reporting group generally appears or is absent as a set. Audit_Level and Auditable_Operations are the audit-logging controls added in 135-2024.
| Property | Datatype | Group |
|---|---|---|
Description | CharacterString | General |
Authentication_Policy_List | BACnetARRAY[N] of BACnetAuthenticationPolicy | Access model |
Authentication_Policy_Names | BACnetARRAY[N] of CharacterString | Access model |
Verification_Time | Unsigned | Access model |
Lockout | BOOLEAN | Access model |
Lockout_Relinquish_Time | Unsigned | Access model |
Failed_Attempts | Unsigned | Access model |
Failed_Attempt_Events | BACnetLIST of BACnetAccessEvent | Access model |
Max_Failed_Attempts | Unsigned | Access model |
Failed_Attempts_Time | Unsigned | Access model |
Threat_Level | BACnetAccessThreatLevel | Access model |
Occupancy_Upper_Limit_Enforced | BOOLEAN | Access model |
Occupancy_Lower_Limit_Enforced | BOOLEAN | Access model |
Occupancy_Count_Adjust | BOOLEAN | Access model |
Accompaniment_Time | Unsigned | Access model |
Access_Event_Authentication_Factor | BACnetAuthenticationFactor | Access model |
Muster_Point | BOOLEAN | Access model |
Zone_To | BACnetDeviceObjectReference | Access model |
Zone_From | BACnetDeviceObjectReference | Access model |
Notification_Class | Unsigned | Intrinsic reporting |
Transaction_Notification_Class | Unsigned | Intrinsic reporting |
Access_Alarm_Events | BACnetLIST of BACnetAccessEvent | Intrinsic reporting |
Access_Transaction_Events | BACnetLIST of BACnetAccessEvent | Intrinsic reporting |
Event_Enable | BACnetEventTransitionBits | Intrinsic reporting |
Acked_Transitions | BACnetEventTransitionBits | Intrinsic reporting |
Notify_Type | BACnetNotifyType | Intrinsic reporting |
Event_Time_Stamps | BACnetARRAY[3] of BACnetTimeStamp | Intrinsic reporting |
Event_Message_Texts | BACnetARRAY[3] of CharacterString | Intrinsic reporting |
Event_Message_Texts_Config | BACnetARRAY[3] of CharacterString | Intrinsic reporting |
Event_Detection_Enable | BOOLEAN | Intrinsic reporting |
Event_Algorithm_Inhibit_Ref | BACnetObjectPropertyReference | Intrinsic reporting |
Event_Algorithm_Inhibit | BOOLEAN | Intrinsic reporting |
Reliability_Evaluation_Inhibit | BOOLEAN | Fault detection |
Audit_Level | BACnetAuditLevel | Auditing |
Auditable_Operations | BACnetAuditOperationFlags | Auditing |
Tags | BACnetARRAY[N] of BACnetNameValue | Tagging and profile |
Profile_Location | CharacterString | Tagging and profile |
Profile_Name | CharacterString | Tagging and profile |
Related Objects
- Access Door: the physical door this point commands to unlock on a successful grant.
- Credential Data Input: the reader that supplies the authentication factors this point consumes.
- Access Zone: the secured area whose entry and exit points are Access Point objects.
- Access Credential: the credential whose rights this point evaluates during authorization.
What Chipkin Provides
The Access Point object, including its authentication-policy model and ACCESS_EVENT intrinsic reporting, is a first-class object type in the CAS BACnet Stack. Talk to us about modeling your device’s points.