Device App Access Devices
The Device App Access Devices API provides access to AccessPoint data and device access control information. This endpoint allows you to retrieve and manage device access 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:
- Access Point Management: Retrieve information about access points, their current status, and configuration details
- Device Access Control: Monitor which devices have access permissions through specific access points
- Change Tracking: Track modifications to device access configurations using timestamp-based filtering
- Network Security: Maintain visibility and control over device access across your organization's network
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 points and their associated access permissions. This endpoint provides comprehensive information about access point devices, including their current status, configuration details, and recent changes. It's the primary method for monitoring device access across your network infrastructure.
Use Cases:
- Monitor all access points and their current operational status
- Synchronize device access data with external systems
- Track changes to access permissions over time
- Generate reports on device access patterns and usage
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 modified on or after this timestamp (ISO 8601 format). Useful for incremental synchronization. |
| limit | integer | query | No | Number of results to return per page. Default is typically 20, maximum recommended is 100 for optimal performance. |
| offset | integer | query | No | The initial index from which to return the results. Used for pagination - multiply page number by limit to get offset. |
cURL Example:
curl -X GET "https://gate.zequenze.com/api/v1/device_app_access_devices/?last_change__gte=2024-01-15T10:00:00Z&limit=25&offset=0" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Example Response:
{
"count": 157,
"next": "https://gate.zequenze.com/api/v1/device_app_access_devices/?limit=25&offset=25&last_change__gte=2024-01-15T10%3A00%3A00Z",
"previous": null,
"results": [
{
"id": 1247,
"device_id": "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 Lobby",
"status": "active",
"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: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",
"last_modified": "2024-01-15T11:30:45Z",
"is_online": true,
"signal_strength": -45,
"firmware_version": "2.4.1"
},
{
"id": 1248,
"device_id": "ap-conference-002",
"name": "Conference Room B Access Point",
"mac_address": "00:1B:44:22:4B:C8",
"ip_address": "192.168.1.102",
"location": "Building A - Conference Room B",
"status": "active",
"access_level": "guest",
"allowed_devices": [
{
"device_mac": "77:88:99:AA:BB:CC",
"device_name": "Visitor Mobile",
"access_granted": true,
"last_access": "2024-01-15T10:15:22Z"
}
],
"organization_id": 42,
"created_at": "2024-01-12T14:20:00Z",
"last_modified": "2024-01-15T10:15:22Z",
"is_online": true,
"signal_strength": -38,
"firmware_version": "2.4.1"
}
]
}
Response Codes:
| Status | Description |
|---|---|
| 200 | Success - Returns the paginated list of device access points |
| 401 | Unauthorized - Invalid or missing Bearer token |
| 403 | Forbidden - Insufficient permissions to access device data |
| 404 | Not Found - Invalid endpoint or organization not found |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Internal Server Error - Server-side error occurred |
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
-
Implement Pagination: Always use the
limitparameter to control response size. Start with 25-50 items per page and adjust based on your application's performance requirements. -
Use Incremental Updates: Leverage the
last_change__gteparameter for efficient data synchronization. Store the timestamp of your last successful request and use it to fetch only modified records. -
Handle Rate Limits: Implement exponential backoff retry logic to handle 429 responses gracefully. 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: Always check response status codes and implement proper error handling for network timeouts, authentication failures, and server errors.
-
Security Considerations: Store API tokens securely and use HTTPS for all requests. Consider implementing token rotation and never log sensitive device information.