Third Party Integrations

Patriot supports interfacing with many different external systems, however in some cases additional custom integrations may be required.

Patriot offers several different options for third-party integrators to extend the functionality of Patriot by using automation interfaces.

Available Integration Options

REST API (Recommended)

Added in Patriot SDK v6.7

Requires the ICA module.

Included automatically with ICA, this is our recommended approach for new development work.

Authentication setup is shared with ICA, giving full permissions control and limiting access only to required clients.

See ICA Setup for more information on configuring ICA which will automatically include the Patriot REST API as well.

Once ICA is configured, use ICA User Setup to configure an ICA / API user. Both ICA and the API enforce the same permission rules and client restrictions.

GraphQL

Starting with Patriot 6.9, a GraphQL endpoint is also available as part of the REST API

Using GraphQL allows for great flexibility in API requests, allowing developers to specify exactly which data they require.

This can reduce the number of round-trips and unnecessary data loads performed by the system.

Currently the GraphQL interface is read-only, mutations are not supported. Changes should be performed using the existing REST functionality.


Legacy JSON Services

Added in Patriot SDK v6.4

Requires the ICA module or JSON module.

A legacy REST API is also available, however it is not recommended for new development work.

This legacy API only supports JSON format, and only supports a single global login.

See the Legacy JSON Services documentation for more information.


Patriot Task SDK

Added in Patriot SDK v6.4

Requires the Plugin Task module.

The Patriot task SDK allows the creation of custom tasks, allowing integration with new receivers or devices, as well as assignable tasks usable for messaging or other triggerable actions.

The third-party developer will provide a DLL file which contains the custom task. Add a new task, of type 'Plugin Task Host' task type, and select the DLL in the task settings. They may also provide other settings as required.


Patriot Camera SDK

Added in Patriot SDK v6.4

Requires the Camera Plugin1 module.

The Patriot camera SDK allows the creation of new camera plugin integrations, to interface with new CCTV systems for live view, event clip viewing and other CCTV features.

The third-party developer will provide a DLL file containing the custom CCTV interface. Copy this DLL onto each workstation, in the Plugins folder of the Patriot Version 6 client install directory.

On each client that will use the plugin camera, select 'Plugin 1' as the camera type, and enter in any other settings required by the developer.

View the Cameras tab to view the cameras (if on-demand viewing is supported), or open an alarm activation and press the camera button.


Direct SQL Access

If the other integrations do not cover your requirements, direct access to the Patriot database is also an option.

However we strongly recommend using one of the defined integrations above to protect you from versioning issues or other data problems.

It is strongly recommended NOT to update data directly through SQL, however read access can be useful if no alternatives are available.

See Database Schema for more information on accessing the Patriot SQL databases directly.

Developer Documentation

Information for the third party developers to create the integration is available as a self-contained download from the Patriot website, in the Client Downloads section.

Simply download the Patriot SDK zip file that corresponds to your Patriot version.

This zip contains technical information about each of the above integration options as well as examples and tools to aid in testing.