GuardPoint10 API Center

Created by Piotr Jamny, Modified on Wed, 5 Nov at 1:11 PM by Piotr Jamny

GuardPoint10 API Center – General Description

Introduction

The RESTful API uses HTTP requests to GET, PUT, POST, and DELETE data.
This document is intended for developers.

If you have any suggestions or requirements, please send them to support@sensoraccess.co.uk


General

GuardPoint10 introduces a RESTful API based on the ODATA protocol to retrieve information from GuardPoint10 and create actions within its access control system.

The API is divided into the following sections:

  • Management: Includes management resources such as Cardholders, Badges, etc.

  • Access control: Includes commands related to relays, polling, controllers, initialization, etc.

  • Software control: Includes GUI-related actions such as open screens, log in/out, etc.

  • Monitoring: Includes resources for handling events received from the GuardPoint10 environment.

The API is built with .NET Core 2.1 and is hosted as a Windows service.


ODATA

The ODATA protocol provides an extensive and standardized way to consume RESTful, queryable APIs.
It also exposes tools for various programming languages.
Learn more about ODATA here


Push Events (SignalR)

Events from GuardPoint10 are pushed to API clients through SignalR, an open-source technology led by Microsoft.
SignalR clients exist across major platforms and languages.
More information can be found here


Postman

5.1 Introduction

To simplify integration, we provide a Postman collection containing examples and tests.
This serves as the main API documentation resource.

Postman is a free tool for managing RESTful API calls and can also act as a testing tool.
Download Postman and tutorials here


5.2 Environment Variables for Testing

Environment variables make testing the API faster and easier.
After fetching entities (via GET), their UIDs are stored as environment variables (e.g. {{cardholderUID}}).
These variables are automatically used in subsequent requests.

You can edit or add new variables as needed.
View and edit them from the top right of the Postman window.



Start Working with the API

The API Center communicates with GuardPoint10 through the AcsServer.
Ensure that the following services are running:

  • AcsServer

  • AcsNmService

  • AcsApiServer

You can open the GuardPoint10 GUI for feedback, but it’s not required for the API to function.
As long as these services are active, the API can communicate with your system.

We provide:

  • A Postman collection of demo URLs

  • A Visual Studio solution that demonstrates using the API in .NET


API Key vs UID

TypeDescription
API KeyA user-controlled string that can be added in the GuardPoint10 Users screen. Used for specific main resources (e.g., controllers, relays).
UIDA unique identifier (GUID) for every resource instance (e.g., cardholders, badges).



Authentication and Authorization

All API call headers must include:


Authorization: [username + user-specific API key]


The user must be authorized in GuardPoint10 to use the API.

Setup Steps

  1. Open the Users Screen in GuardPoint10.

  2. Select the user (e.g., admin).

  3. Set Allow API = Yes.

  4. Generate or enter a unique GUID (not all zeros).

  5. Save.

  6. In Postman, open Environment Quick Look (top right).

  7. Set:

    • ApiAdminKey to the GUID created

    • User to the same value as the username in GuardPoint10


Translation (Multilanguage)

The API responses are in English by default and include error codes for translation.
Controller type names are also in English.


Available Operations

REST API (ODATA)

ResourceGET AllGET by UIDAPI KeyDescription
ControllersIncludes controller data: communication status, FW/HW version, address, etc.
SiteIncludes polling status, baud rate, etc.
InputsIncludes physical/logical status, 4 states, is armed, etc.
Alarm ZonesIncludes alarm status.
ReadersIncludes door contacts, last event details.
Outputs (Relays)Includes relay activation status and constant states.
CardholdersIncludes personal details, last access, connected cards, etc.
CardsIncludes card status, card type, attached cardholder.
Security Groups
Areas
Departments
WorkstationsDisplays names of existing workstations.
Events (access, alarms, comm, technical, etc.)
Provides event log data.



PATCH (by UID)

ResourcePatchDescription
CardholderUpdate personal details, Security group, Department, Area, etc.
CardChange status, attach cardholder.




DELETE (by UID)

ResourceDeleteDescription
CardholderDelete or archive.
Card



POST (All/Many or by UID)

ResourcePostAPI KeyDescription
CardCreate new card.
CardholderCreate new cardholder with personal details and attached cards.
Controller – Initialize
Site – Start/Stop Polling
Inputs – Acknowledge/Confirm
Alarm Zones – Arm/Disarm/Return to Weekly Program
Outputs – Activate/Deactivate/Return to Normal/Activate All DoorsCan activate with time period.
Workstations – Close/Logout/Login/Bring to Front/Display Message/Play Sound/Log to Events
Activate Manual EventsTriggers manual event and associated reflex actions.


SignalR

Event TypeSubscribeDescription
Access Events
Alarms Events
Audit Events
Comm Events
General Events
Technical Events
User Manual Events




Troubleshooting

Response 401 – Not Authorized:
Verify that:

  • User credentials match between GuardPoint10 and API

  • The user has Allow API enabled





Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article