Device App Access Devices
RetrieveThe Device App Access Devices API provides access to AccessPoint data and device access controldevicesinformation. This endpoint allows you to retrieve andtheir configuration data for themanage deviceapplicationaccesssystem.permissions, monitor access point status, and track changes to device access configurations across your organization's network infrastructure.
Base URL: https://gate.zequenze.com/api/v1
Authentication: All endpoints require a Bearer token:
Authorization: Bearer <your-api-token>
Overview
The Device App Access Devices API category is designed for managing and monitoring access point devices and their associated access permissions within your network infrastructure. This API is particularly useful for:
The primary endpoint in this category supports pagination and change tracking, making it suitable for both real-time monitoring and bulk data synchronization scenarios. The last_change__gte parameter enables efficient incremental updates by allowing you to fetch only devices that have been modified since a specific timestamp.
Endpoints
GET /device_app_access_devices/
Description: Retrieves a paginated list of device access controlpoints devicesand configuredtheir forassociated theaccess device application.permissions. This endpoint provides comprehensive information about access point informationdevices, including devicetheir current status, configuration,configuration details, and recent changes. It's the primary method for monitoring device access across your network infrastructure.
Use Cases:
Full URL Example:
https://gate.zequenze.com/api/v1/device_app_access_devices/?last_change__gte=2024-01-15T10:00:00Z&limit=50&offset=0
Parameters:
| Parameter | Type | In | Required | Description |
|---|---|---|---|---|
| last_change__gte | string | query | No | Filter results to only include devices |
| limit | integer | query | No | Number of results to return per |
| offset | integer | query | No | The initial index from which to return the |
ExamplecURL Request:Example:
curl -X GET "https:/api/v1/device_app_access_devices/?limit=10&offset=0
Example Request with Date Filter:
GET /gate.zequenze.com/api/v1/device_app_access_devices/?last_change__gte=2024-01-01T00:15T10:00:00Z&limit=2025&offset=0" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Example Response:
{
"count": 25,157,
"next": "https://gate.zequenze.com/api/v1/device_app_access_devices/?limit=1025&offset=10"25&last_change__gte=2024-01-15T10%3A00%3A00Z",
"previous": null,
"results": [
{
"id": 1,
"device_name": "Main Entrance Reader",1247,
"device_id": "ACR-ap-lobby-001",
"name": "Main Lobby Access Point",
"mac_address": "00:1B:44:11:3A:B7",
"ip_address": "192.168.1.101",
"location": "Building A - Main Entrance",
"device_type": "card_reader"Lobby",
"status": "online"active",
"last_change"access_level": "employee",
"allowed_devices": [
{
"device_mac": "AA:BB:CC:DD:EE:FF",
"device_name": "John's Laptop",
"access_granted": true,
"last_access": "2024-01-15T14:30:23:12Z"
},
{
"device_mac": "11:22:33:44:55:66",
"device_name": "Conference Room Tablet",
"access_granted": true,
"last_access": "2024-01-15T13:45:30Z"
}
],
"organization_id": 42,
"created_at": "2024-01-10T09:15:00Z",
"ip_address"last_modified": "192.168.1.101"2024-01-15T11:30:45Z",
"is_online": true,
"signal_strength": -45,
"firmware_version": "2.1.4",
"access_permissions": [
{
"user_id": 123,
"access_level": "standard",
"valid_from": "2024-01-01T00:00:00Z",
"valid_until": "2024-12-31T23:59:59Z"
}
]4.1"
},
{
"id": 2,
"device_name": "Executive Floor Scanner",1248,
"device_id": "BIO-ap-conference-002",
"location"name": "BuildingConference ARoom -B FloorAccess 10"Point",
"device_type"mac_address": "biometric_scanner",
"status": "maintenance",
"last_change": "2024-01-14T09:15:00Z"00:1B:44:22:4B:C8",
"ip_address": "192.168.1.102",
"firmware_version"location": "3.0.1"Building A - Conference Room B",
"access_permissions"status": "active",
"access_level": "guest",
"allowed_devices": [
{
"user_id": 456,
"access_level"device_mac": "executive"77:88:99:AA:BB:CC",
"valid_from"device_name": "Visitor Mobile",
"access_granted": true,
"last_access": "2024-01-01T00:00:15T10:15:22Z"
}
],
"organization_id": 42,
"created_at": "2024-01-12T14:20:00Z",
"valid_until"last_modified": "2024-12-31T23:59:59Z"01-15T10:15:22Z",
}"is_online": ]true,
"signal_strength": -38,
"firmware_version": "2.4.1"
}
]
}
Response Codes:
| Status | Description |
|---|---|
| 200 |
Common Use Cases
Use Case 1: Real-time Access Point Monitoring
Monitor the status of all access points in your network by polling this endpoint regularly. Use the last_change__gte parameter to fetch only recently updated devices, reducing bandwidth and processing time while maintaining up-to-date information about device connectivity and access permissions.
Use Case 2: Incremental Data Synchronization
Synchronize device access data with external security systems or databases by using timestamp-based filtering. Store the timestamp of your last successful sync and use it with last_change__gte to fetch only modified records in subsequent requests.
Use Case 3: Access Audit and Compliance Reporting
Generate comprehensive reports on device access patterns by retrieving all access points and their associated device permissions. Use pagination to handle large datasets efficiently while building audit trails for compliance requirements.
Use Case 4: Network Security Dashboard
Build a security dashboard showing real-time access point status, connected devices, and recent access events. Combine this endpoint with appropriate filtering and pagination to create responsive, up-to-date visualizations of your network security posture.
Use Case 5: Automated Access Management
Implement automated workflows that respond to changes in device access permissions by monitoring the last_modified timestamps and processing newly connected or disconnected devices for policy enforcement or alerting.
Best Practices
-
Pagination:Implement Pagination:UseAlways use thelimitandoffsetparameters for large datasetsparameter toimprovecontrol response size. Start with 25-50 items per page and adjust based on your application's performance requirements. -
DateUseFiltering:Incremental Updates:UseLeverage thelast_change__gteparameter for efficient data synchronization. Store the timestamp of your last successful request and use it toretrievefetch onlyrecentlymodifiedupdatedrecords.devices -
Handle Rate
Limiting:Limits: Implement exponential backoffifretryyoulogicencounterto handle 429statusresponsescodesgracefully. Avoid making excessive concurrent requests to prevent hitting API rate limits. -
Monitor Response Times: Large result sets can impact performance. If responses are slow, reduce your page size or implement more specific filtering criteria.
Cache Appropriately: Access point data doesn't change frequently, so implement reasonable caching strategies (5-15 minutes) to reduce API calls while maintaining data freshness.
Error Handling:Handling: Always check the response status codes and handleimplement proper error handling for network timeouts, authentication errorsfailures, gracefullyand server errors.
Caching:Security Considerations: ConsiderStore cachingAPI devicetokens data locallysecurely and use dateHTTPS filtersfor toall syncrequests. changes