Skip to main content

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 limit parameter 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__gte parameter 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.