Camio User Guide for Lenel S2 NetBox: Real-time video search

This Camio User Guide covers:

  1. Overview of Camio with Lenel S2 NetBox
  2. Mapping cameras to Lenel S2 NetBox Portals
  3. [Coming Soon] Enabling Tailgating Notifications
  4. Camio Setup for Lenel S2 NetBox

Overview of Camio with Lenel S2 NetBox

Fast visual verification and access event detection

Camio enables fast search and alerts on events like access granted, invalid access, and portal forced open. Skip to Linux or Windows installation and resource requirements.

Works with existing cameras

Setup takes less than 15 minutes. Each camera is mapped to a Lenel S2 portal so that events from those portals annotate the video from that camera. You configure the on-premise Camio Gateway with the credentials required to subscribe to Lenel S2 access control events.

Mapping cameras to portals

The first step is to associate your Lenel S2 NetBox portals with any cameras that can see them.

  1. Generate your Camio Authorization token to be used by the Camio Gateway to annotate video with incoming access control events.
    1. Sign-in as the Camio account manager and press the Generate button at
      • Either the account owner or a guest with Can Manage permission can generate the token
    2. Copy the token immediately after you generate it, since you will not be able to retrieve it again later.
    3. Paste the token into your Camio Gateway configuration as the "camio_api_token" valuemceclip0.png
    4. Select the Portal from the dropdown list next to each camera that has a view of people entering the Portal and press SaveScreenshot_2022-12-14_at_5.25.39_PM.png

Note: If you see a message "No integration settings found..." that means integration settings have never been saved for this account. Configure the settings and hit save. When you reload the page, the message should be gone.

[Coming Soon] Enabling Tailgating Notifications

Optionally, enable Camio to send notifications via email when a tailgating incident occurs. For the Lenel S2 NetBox Gateway this feature is still in development, and should be released soon. Please check back here later for instructions on enabling this feature.

Camio Setup for Lenel S2 NetBox

The Camio Gateway subscribes to Lenel S2 access control events in order to annotate the video associated with each event.

Camio Gateway Installation

The Camio Gateway runs as a Kubernetes deployment installable with Helm, which can run on any host machine (e.g. Linux, Windows) that can access the Lenel S2 NetBox server. If your firewall restricts the sites contacted, then please see firewall rules.

Quick Install via Helm

Detailed instructions for installing any of our PACS Gateway deployments through Helm can be found at our Camio User Guide for setup and deployment of Camio PACS Gateways. The following instructions will a brief overview of setting up with Helm, specific to the Camio Lenel S2 NetBox Gateway.

1. Create your values.yaml file. The most basic values.yaml for the NetBox gateway should look like:


netbox_protocol: "http://" # Or https://
netbox_domain: "INSERT YOUR NETBOX API DOMAIN" # Ex:

That current version of the Camio Lenel S2 NetBox Gateway does not support self signed certificates. Please contact for more details if your deployment will need to use self signed certificates.

2. Create your K8s cluster if does not exist

3. Run:

helm install camio-lenel-s2-netbox oci:// --version 1.1.0 -f /PATH/TO/values.yaml [-n camio] [--create-namespace]

The namespace ( -n ) argument is optional and will deploy the gateway in the specified namespace. If not included, the gateway will be set up in the default namespace. Use --create-namespace if the namespace you want to use does not currently exist.

4. Confirm that your helm installation was successful by running:

kubectl get pods [-n camio]

The output should look something like:

driver-XXXXXXXXX-XXXXX 1/1 Running 0 9s

If the driver pod shows as 1/1 READY and 0 RESTARTS, it is probably running correctly. If you would like more details, you can retrieve the logs for your pod by running:

kubectl logs driver-XXXXXXXXX-XXXXX [-n camio]

Camio Gateway Configuration (values.yaml file)

The configuration is divided into the following sections to organize the gateway's settings:


(Helm Key)

Description and Available Fields

This contains your secret Camio Authorization token obtained from used to annotate video. Example:

# These values will be used to construct the full urls used to contact the Camio and NetBox APIs
: "http://" # Default, change to https:// if necessary
netbox_domain: "INSERT NETBOX DOMAIN"
camio_domain: ""
# skip_ssl_verification: false # If true, disables SSL verification for requests to the NetBox API

# Optionally, you can instead set the full urls like so:
# auth: "http://NETBOX DOMAIN/goforms/nbapi"
# devices: "http://NETBOX DOMAIN/goforms/nbapi"
# events: "http://NETBOX DOMAIN/appdevent/nbapi/event"
# pacs_server: ""


These default values should be sufficient, but override any desired. Retain the events.fields, so that only recognized NetBox Events are sent to Camio. Example:
# Uncomment any settings where default values shown need to be modified
# (default values should work for most deployments, except where the OpenAccess port number was changed)

# Config for requesting NetBox portals list
# devices:
# polling_interval: 7200 # Poll the NetBox API for the portals every 2 hours

# Config for re-trying requests to the Camio PACs server
# pacs:
# backoff_multiplier: 2.0
# backoff_start: 2.0
# backoff_limit: 3

# Config for requesting access control events from the NetBox API
# events:
# streaming: true # NetBox StreamEvents command returns a streaming response, so this value should not be changed
# count_reset_interval: 86400 # Reset the stored events count every 24 hours
# polling_interval: 10 # This is only used if streaming: false, and represents how often to poll the NetBox API for events
# Fields to include in the StreamEvents response, see the Lenel S2 NetBox documentation for additional available fields
# Values inside [] filter the events that come in to the StreamEvents response
# fields:
# cdt: [] # Controller date/time associated with the activity
# ndt: [] # Node date/time associated with the activity, in case no CDT
# descname: [ # General description of the activity
# 'Access granted', # Maps to Camio event "Entry unlocked"
# 'Invalid access',
# 'Portal held open', # Maps to Camio event "Entry Ajar"
# 'Portal forced open', # Maps to Camio event "Forced Open"
# 'Portal restored'
# ]
# personid: [] # Configured person identifier on the NetBox associated with the activity
# personname: [] # Configured person name on the NetBox associated with the activity
# portalname: [] # Configured name of the portal associated with the activity
# rdrname: [] # Configured name of the card reader associated with the activity
# detail: [] # Additional text detail about the activity
# evtname: [] # Configured name of the event generating the activity
# 10  # DEBUG level and higher logs, use this value if debugging the gateway
20 # Default, INFO level and higher logs
# 30 # WARNING level and higher logs, use this value if you only want logs of potential problems in the gateway
# 40 # ERROR level and higher logs, use this value if you only want logs of definite errors in the gateway


NetBox Event Filter

The Camio gateway will only receive the Lenel S2 NetBox events enumerated under in the Helm values. The default values are:

descname: [
'Access granted',
'Invalid access',
'Portal held open',
'Portal forced open',
'Portal restored'

You can add or remove event names from the list to filter their ingestion into the Camio system. Please refer to the Event Descriptions section of the Streaming Events documentation in the S2 NetBox API for more event names. For example, you could add 'Momentary unlock' to the list. This would configure the Camio gateway to receive momentary unlock events in the Stream Events response. These events would get forwarded to the Camio system enabling you to search for them in the Camio app with the query "Momentary unlock".

Filters can also be added to other fields. For example, you could set a filter on Portals like so:

portalname: [
'Main Entry',
'Back Entry'

Would configure the gateway to only receive events from the Portals Main Entry and Back Entry.

The fields that support filters are enumerated in the S2 NetBox API under Event Element Descriptions in the Streaming Events documentation.

Camio Gateway Host Hardware Requirements

The CPU and RAM required of the host machine that runs the Camio Gateway varies with the maximum throughput of access control events. This guide covers common volumes:

Max Event Rate

CPU Cores


100 events/second


300 MiB

1,000 events/second


400 MiB

10,000 events/second


400 MiB

If you are also setting up MicroK8s on your machine, MicroK8s recommends 20G disk space and 4G of memory.

Firewall Rules

During the initial setup and any updates to the deployment, you will need access to these domains:


During operation the gateway will need access to the specified camio endpoints:

Note: These rules only cover the Camio Gateway. If you are setting up K8s for the first time you may need to set up additional firewall rules.

Removing Camera to Portal Mappings

You can update which cameras you have mapped to your S2 Portals on the settings page at To remove the currently mapped Portal, click on the Portal in the dropdown list or click the x next to the Portal name:


Alternatively, select a new Portal.

If your camera was mapped to an old Portal that is no longer in your list of S2 Portals, the Portal dropdown may appear blank:


To remove the old Portal, select and then deselect a new Portal from the dropdown. This will clear the old Portal. The dropdown should then look like this:


Make sure you click save to confirm the changes.

Have more questions? Submit a request