Arming Settings API
Configure site arming and security system settings
Overview
The Arming Settings API allows you to retrieve and update security system configuration for customer sites. Arming settings determine how the security system operates and which devices are monitored.
Security Types
CHeKT supports multiple security system types, each with different arming behaviors and device integration methods.
Security Types
The system supports four security types:
| Type | Description |
|---|---|
1 | Alarm Panel - Primary Bridge - Traditional alarm panel with primary bridge communication |
2 | Alarm Panel - Individual Bridge - Alarm panel with individual bridge per zone |
3 | CHeKT Video Security System - Native CHeKT video-based security |
4 | Alarm.com Security System - Alarm.com integrated system |
Endpoints
Get Arming Settings
Retrieve current arming settings for a site.
Endpoint: GET /partner/v1/dealers/{dealerId}/sites/{siteId}/arming-settings
Authentication: OAuth 2.0 Client Credentials Grant
Request
Path Parameters:
dealerId(string, required): The dealer ID from CHeKTsiteId(string, required): The site ID from CHeKT
Headers:
Authorization: Bearer {access_token}x-partner-trace-id(optional): UUID for request tracking
Response (200 OK)
{
"site_id": 1,
"external_site_id": "1234567890",
"name": "Gangnam Headquarters",
"security_type": 1
}
Response Fields:
site_id(number): Unique identifier assigned by CHeKTexternal_site_id(string): Your system's site identifiername(string): Site namesecurity_type(number): Current security system type (1-4)
Update Arming Settings
Change the security type for a site.
Endpoint: PATCH /partner/v1/dealers/{dealerId}/sites/{siteId}/arming-settings
Authentication: OAuth 2.0 Client Credentials Grant
Changing security type may affect how devices are monitored and how alarms are processed. Ensure the new type is compatible with installed devices.
Request
Path Parameters:
dealerId(string, required): The dealer ID from CHeKTsiteId(string, required): The site ID from CHeKT
Headers:
Authorization: Bearer {access_token}x-partner-trace-id(optional): UUID for request tracking
Body:
{
"security_type": 3
}
Parameters:
security_type(number, required): New security system type (1, 2, 3, or 4)1: Alarm Panel - Primary Bridge2: Alarm Panel - Individual Bridge3: CHeKT Video Security System4: Alarm.com Security System
Response (200 OK)
{
"site_id": 1,
"external_site_id": "1234567890",
"name": "Gangnam Headquarters",
"security_type": 3
}
Error Responses
| Status Code | Description | Solution |
|---|---|---|
400 | Bad Request - Invalid security_type value | Use values 1-4 only |
401 | Unauthorized - Invalid or expired token | Refresh your access token |
403 | Forbidden - Access denied | Verify your permissions |
404 | Not Found - Site or dealer does not exist | Check the IDs |
Code Examples
cURL
# Get arming settings
curl -X GET https://api.chekt.com/partner/v1/dealers/12345/sites/1/arming-settings \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "x-partner-trace-id: 550e8400-e29b-41d4-a716-123456789000"
# Update arming settings
curl -X PATCH https://api.chekt.com/partner/v1/dealers/12345/sites/1/arming-settings \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "x-partner-trace-id: 550e8400-e29b-41d4-a716-123456789000" \
-d '{
"security_type": 3
}'
JavaScript
// Get arming settings
const response = await fetch(
"https://api.chekt.com/partner/v1/dealers/12345/sites/1/arming-settings",
{
headers: {
"Authorization": `Bearer ${accessToken}`,
"x-partner-trace-id": "550e8400-e29b-41d4-a716-123456789000"
}
}
);
const settings = await response.json();
console.log("Current security type:", settings.security_type);
// Update arming settings
const updateResponse = await fetch(
"https://api.chekt.com/partner/v1/dealers/12345/sites/1/arming-settings",
{
method: "PATCH",
headers: {
"Content-Type": "application/json",
"Authorization": `Bearer ${accessToken}`,
"x-partner-trace-id": "550e8400-e29b-41d4-a716-123456789000"
},
body: JSON.stringify({
security_type: 3
})
}
);
const updated = await updateResponse.json();
console.log("Updated security type:", updated.security_type);
Python
import requests
# Get arming settings
response = requests.get(
"https://api.chekt.com/partner/v1/dealers/12345/sites/1/arming-settings",
headers={
"Authorization": f"Bearer {access_token}",
"x-partner-trace-id": "550e8400-e29b-41d4-a716-123456789000"
}
)
settings = response.json()
print(f"Current security type: {settings['security_type']}")
# Update arming settings
update_response = requests.patch(
"https://api.chekt.com/partner/v1/dealers/12345/sites/1/arming-settings",
headers={
"Content-Type": "application/json",
"Authorization": f"Bearer {access_token}",
"x-partner-trace-id": "550e8400-e29b-41d4-a716-123456789000"
},
json={
"security_type": 3
}
)
updated = update_response.json()
print(f"Updated security type: {updated['security_type']}")
Security Type Selection Guide
When to use each type:
Type 1: Alarm Panel - Primary Bridge
- Traditional alarm panel installations
- Single bridge handling all zones
- Most common for standard commercial installations
Type 2: Alarm Panel - Individual Bridge
- Multiple bridges per installation
- Each bridge handles specific zones
- Used for large or complex installations
Type 3: CHeKT Video Security System
- Pure video-based security
- No traditional alarm panel
- Camera-based motion detection and monitoring
Type 4: Alarm.com Security System
- Integration with Alarm.com platform
- Hybrid video and alarm panel systems
- Requires Alarm.com account setup
Best Practices
- Verify device compatibility before changing security type
- Document security type changes in your system
- Test arming/disarming after security type changes
- Coordinate with installers when changing security type
- Keep backup of previous settings before updates