> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.kodelabs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Axis CCTV

> Connect Axis CCTV to KODE OS for camera, video data

> Connect Axis CCTV to KODE OS for camera, video data integration

## Overview

Use this integration to connect Axis CCTV to KODE OS. You can discover cameras and encoders, stream video, and collect sensor and non-sensor data for monitoring and incident response.

| Property            | Value         |
| ------------------- | ------------- |
| **System Type**     | Camera, Video |
| **Communication**   | REST          |
| **Collection**      | Pull          |
| **Collection Mode** | SNAPSHOT      |

## Supported Capabilities

* Discover Devices & Points
* Collect Sensor Data
* Collect Non-Sensor Data
* Video Streaming

## Prerequisites

* An active account with Axis CCTV and access to their API or developer portal
* Username and password credentials for the Axis CCTV system
* KODE OS environment with access to Data Sources

## Configure Connector in KODE OS

1. Navigate to **Data Sources** in your building
2. Click **API Catalog** and search for **Axis CCTV**
3. Click **+ Add Datasource**
4. Fill in the fields below and complete the three-page setup flow

| Field        | Required | Type     | Description                                              |
| ------------ | -------- | -------- | -------------------------------------------------------- |
| **URL**      | Yes      | text     | The base URL or IP address of the external system        |
| **Username** | Yes      | text     | The username for authenticating with the external system |
| **Password** | Yes      | password | The password for authenticating with the external system |

## Discover Devices and Points

After configuring the connector, click **Discover** on the connector detail page. KODE OS will query the Axis CCTV system and return a list of available devices and their data points.

Review the discovered items and select the devices you want to register in KODE OS.

For more details on the discovery process, see the [Discovery guide](/products/integrations/capabilities/discovery).

## Devices and Points

When you discover devices from Axis CCTV, KODE OS maps them to the following device types and data points:

### Camera

Canonical Type: `default`

| # | Point    | Description              | Unit | Writable | Collection |
| - | -------- | ------------------------ | ---- | -------- | ---------- |
| 1 | `Status` | Current operating status | --   | No       | Polling    |

## What Data You Get

### Point History

Time-series readings including Status, collected at regular intervals from connected devices

### Event Logs

System and security event records with timestamps, event types, and associated devices

KODE OS maps Axis CCTV data to these standard fields:

| KODE Field     | Source Field                    | Notes       |
| -------------- | ------------------------------- | ----------- |
| **category**   | `EventCategory.CAMERA`          | --          |
| **id**         | `UUID.randomUUID(`              | --          |
| **name**       | `eventLogType`                  | --          |
| **createdAt**  | `AxisUtils.toUTCLong(timestamp` | --          |
| **deviceId**   | `data.cameraId`                 | --          |
| **deviceName** | `data.name`                     | --          |
| **deviceId**   | `data.cameraId`                 | conditional |
| **deviceName** | `data.name`                     | conditional |

### Alarms

Alert and fault notifications including alarm name, priority, status, timestamps, device association, and acknowledgment state

KODE OS maps the collected data to these standard fields:

| KODE Field      | Description                                                |
| --------------- | ---------------------------------------------------------- |
| **ID**          | Unique alarm identifier                                    |
| **Name**        | Alarm name or title                                        |
| **Description** | Detailed alarm description                                 |
| **Category**    | Alarm category (e.g., Building Automation, Security, Fire) |
| **Priority**    | Alarm priority or severity level                           |
| **Status**      | Current alarm state (e.g., Active, Acknowledged, Cleared)  |
| **Device ID**   | ID of the device that generated the alarm                  |
| **Device Name** | Name of the device that generated the alarm                |
| **Location**    | Physical location of the alarm source                      |
| **Updated By**  | Person who last updated the alarm                          |
| **Created At**  | Timestamp when the alarm was generated                     |
| **Started At**  | Timestamp when the alarm condition started                 |
| **Cleared At**  | Timestamp when the alarm was cleared or resolved           |
| **Updated At**  | Timestamp of the last alarm state change                   |

### Polling Schedule

* **Point History** -- Default polling: 5 minutes (min: 5 minutes, max: 1 hours)
* **EventLog** -- Default polling: 5 minutes (min: 5 minutes, max: 1 hours)
* **Alarm** -- Default polling: 5 minutes (min: 5 minutes, max: 1 days)

For more details on collection modes, see the [Data Collection guide](/products/integrations/capabilities/data-collection).

## Use Cases

Once connected, this integration enables you to:

* Integrate video surveillance feeds into the building operations dashboard
* Correlate camera events with access control and alarm data for incident review
* Monitor high-traffic areas and verify occupancy data against video feeds
* Integrate video surveillance feeds into the building operations dashboard

## Troubleshooting

<AccordionGroup>
  <Accordion title="Authentication or connection error">
    Verify that the credentials are correct and have not expired. Check that the URL is reachable from the KODE OS environment. Verify the username and password are correct and the account has not been locked in the Axis CCTV system.
  </Accordion>

  <Accordion title="Discovery returns no devices">
    Verify the connector credentials have sufficient permissions in the Axis CCTV system to list devices. Run a test connection first to confirm connectivity. Some systems require specific API scopes or roles for device enumeration.
  </Accordion>

  <Accordion title="Data collection stops or gaps appear">
    Check the connector status on the Data Sources page. If the status shows an error, review the error logs on the connector detail page. Common causes include expired credentials, network changes, or rate limiting by the Axis CCTV API.
  </Accordion>
</AccordionGroup>
