Hostspot Access Points
The Hotspot Access Points API provides endpoints for retrieving and managing WiFi hotspot access point information. This API is designed for network administrators and applications that need to monitor, locate, and track changes to wireless access points across their infrastructure.
Base URL: https://gate.zequenze.com/api/v1
Authentication: All endpoints require a Bearer token:
Authorization: Bearer <your-api-token>
Overview
The Hotspot Access Points API enables you to retrieve comprehensive information about WiFi access points in your network infrastructure. This API is particularly useful for:
- Network monitoring applications that need to track the status and location of access points
- Asset management systems that maintain inventories of network hardware
- Location-based services that require precise positioning data from access points with GPS coordinates
- Change tracking systems that monitor network infrastructure modifications over time
The API supports filtering by location coordinates and change timestamps, making it easy to build applications that can map network coverage areas or detect recent network changes. The paginated response format ensures efficient data retrieval even for large networks with hundreds or thousands of access points.
Key concepts to understand:
-
Coordinates filtering: Access points may or may not have GPS coordinates set - use the
have_coordinatesparameter to filter based on location data availability -
Change tracking: The
last_change__gteparameter allows you to retrieve only access points modified since a specific date/time - Pagination: Results are paginated using limit/offset parameters for efficient data handling
Endpoints
GET /hostspot_access_points/
Description: Retrieves a paginated list of hotspot access points with optional filtering capabilities. This endpoint allows you to fetch access point information based on location availability, recent changes, and supports pagination for handling large datasets efficiently.
Use Cases:
- Generate network coverage maps by filtering access points that have GPS coordinates
- Monitor network changes by retrieving access points modified since a specific timestamp
- Build network inventory dashboards with paginated access point listings
- Create automated reports of wireless infrastructure status
Full URL Example:
https://gate.zequenze.com/api/v1/hostspot_access_points/?have_coordinates=true&limit=50&offset=0&last_change__gte=2024-01-01T00:00:00Z
Parameters:
| Parameter | Type | In | Required | Description |
|---|---|---|---|---|
| last_change__gte | string | query | No | Filter access points by last modification date (ISO format: 2000-01-01, 2000-01-01 00:01:00, 2000-01-01 00:01:00+00:00) |
| limit | integer | query | No | Number of results to return per page (default varies by server configuration) |
| offset | integer | query | No | The initial index from which to return results (used for pagination) |
| have_coordinates | boolean | query | No | When true, returns only access points with GPS coordinates set; when false, returns only those without coordinates |
cURL Example:
curl -X GET "https://gate.zequenze.com/api/v1/hostspot_access_points/?have_coordinates=true&limit=25&offset=0" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Example Response:
{
"count": 156,
"next": "https://gate.zequenze.com/api/v1/hostspot_access_points/?have_coordinates=true&limit=25&offset=25",
"previous": null,
"results": [
{
"id": 1,
"name": "AP-Floor1-East",
"mac_address": "00:1A:2B:3C:4D:5E",
"ip_address": "192.168.1.101",
"ssid": "CompanyWiFi",
"status": "online",
"location": {
"latitude": 40.7128,
"longitude": -74.0060,
"floor": 1,
"building": "Main Office",
"description": "East Wing Conference Room"
},
"signal_strength": -42,
"channel": 6,
"frequency": "2.4GHz",
"connected_devices": 23,
"max_capacity": 50,
"last_change": "2024-01-15T14:30:00Z",
"created_at": "2023-12-01T09:00:00Z",
"firmware_version": "1.2.3",
"model": "WifiPro-300"
},
{
"id": 2,
"name": "AP-Floor2-West",
"mac_address": "00:1A:2B:3C:4D:5F",
"ip_address": "192.168.1.102",
"ssid": "CompanyWiFi",
"status": "online",
"location": {
"latitude": 40.7129,
"longitude": -74.0061,
"floor": 2,
"building": "Main Office",
"description": "West Wing Marketing Department"
},
"signal_strength": -38,
"channel": 11,
"frequency": "5GHz",
"connected_devices": 15,
"max_capacity": 50,
"last_change": "2024-01-14T16:45:00Z",
"created_at": "2023-12-01T09:15:00Z",
"firmware_version": "1.2.3",
"model": "WifiPro-300"
}
]
}
Response Codes:
| Status | Description |
|---|---|
| 200 | Success - Returns paginated list of access points |
| 401 | Unauthorized - Invalid or missing Bearer token |
| 400 | Bad Request - Invalid query parameters (e.g., malformed date format) |
| 500 | Internal Server Error - Server-side processing error |
Common Use Cases
Use Case 1: Network Coverage Mapping
Retrieve all access points with GPS coordinates to create visual network coverage maps. Use have_coordinates=true to ensure you only get access points that can be plotted on a map.
https://gate.zequenze.com/api/v1/hostspot_access_points/?have_coordinates=true&limit=100
Use Case 2: Change Detection and Monitoring
Monitor recent network changes by fetching access points modified since your last check. This is useful for automated monitoring systems that need to detect configuration changes or new installations.
https://gate.zequenze.com/api/v1/hostspot_access_points/?last_change__gte=2024-01-15T00:00:00Z
Use Case 3: Paginated Network Inventory
Build comprehensive network inventory systems that can handle large numbers of access points efficiently using pagination. Start with a reasonable limit and iterate through results.
https://gate.zequenze.com/api/v1/hostspot_access_points/?limit=50&offset=0
Use Case 4: Location-Specific Asset Management
Identify access points that lack GPS coordinates for maintenance or audit purposes by using have_coordinates=false.
https://gate.zequenze.com/api/v1/hostspot_access_points/?have_coordinates=false
Best Practices
-
Use appropriate pagination: Set reasonable
limitvalues (25-100) to balance performance and reduce API calls. Very large limits may cause timeouts. -
Implement change tracking: Use the
last_change__gteparameter with stored timestamps to efficiently detect and sync only modified access points rather than fetching all data repeatedly. -
Handle coordinates filtering carefully: When building location-based features, always use
have_coordinates=trueto avoid processing access points without position data. -
Cache results appropriately: Access point data typically doesn't change frequently, so implement caching with reasonable TTL values (5-15 minutes) to reduce API load.
-
Error handling for date formats: When using
last_change__gte, ensure dates are in ISO format. The API accepts multiple formats but ISO 8601 (YYYY-MM-DDTHH:MM:SSZ) is recommended. -
Monitor rate limits: Implement exponential backoff and respect any rate limiting headers returned by the API to avoid service interruptions.
-
Process pagination completely: Always check the
nextfield in responses and continue fetching until all pages are retrieved for complete data sets.