Pools
Pools are shared data buckets that SIMs draw from. Each pool has a tariff that defines its capacity and pricing model. The Watchdog feature monitors pool usage and can trigger alerts or automatic actions.
Base URL
https://app.zentarinetworks.com
List Pools
GET /api/pools
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
page | integer | 1 | Page number |
pageSize | integer | 100 | Results per page (1–100) |
Response
{
"data": [ /* array of pool objects */ ],
"pagination": { ... }
}
Create Pool
POST /api/pools
Request Body
{
"name": "IoT Fleet - UK",
"type": 1,
"tariffId": 5,
"watchdogMode": 1,
"warningThresholdPct": 80,
"enableBurnRateAlerts": true
}
| Field | Type | Required | Description |
|---|---|---|---|
name | string | No | Pool display name |
type | integer | Yes | Pool type — see /api/pools/metadata |
tariffId | integer | Yes | Tariff to assign |
watchdogMode | integer | Yes | Watchdog behaviour mode |
warningThresholdPct | integer? | No | Alert threshold as % of capacity (1–100) |
enableBurnRateAlerts | boolean? | No | Enable burn rate alerting |
Response
{ "id": 42 }
Get Pool
GET /api/pools/{id}
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id | integer | Pool ID |
Pool Object
| Field | Type | Description |
|---|---|---|
id | integer | Pool ID |
name | string | Pool name |
type | integer | Pool type code |
watchdogMode | integer | Watchdog mode |
warningThresholdPct | integer? | Usage alert threshold (%) |
enableBurnRateAlerts | boolean? | Burn rate alert enabled |
status | integer | Status code — see /api/pools/metadata |
createdAt | datetime | Creation timestamp |
updatedAt | datetime | Last updated |
activatedAt | datetime | Activation timestamp |
activeSimCount | integer | Number of active SIMs |
totalSimCount | integer | Total SIMs in pool |
limitMB | double | Total capacity in MB |
usageMB | double | Data consumed this cycle in MB |
isOverage | boolean | Whether pool is in overage |
remainingMB | double | Remaining capacity in MB |
overageMB | double | Overage consumption in MB |
voiceMins | double | Voice minutes used |
smsCount | integer (int64) | SMS count |
tariffId | integer | Assigned tariff ID |
tariff | object | Embedded tariff summary |
daysUntilRenewal | integer | Days until next billing cycle renewal |
Update Pool Settings
PUT /api/pools/{id}
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id | integer | Pool ID |
Request Body
{
"name": "IoT Fleet - UK",
"watchdogMode": 2,
"warningThresholdPct": 90,
"enableBurnRateAlerts": false
}
| Field | Type | Required | Constraints |
|---|---|---|---|
name | string | Yes | 3–50 characters |
watchdogMode | integer | Yes | — |
warningThresholdPct | integer? | No | 1–100 |
enableBurnRateAlerts | boolean? | No | — |
Response
{ "id": 42 }
Delete Pool
DELETE /api/pools/{id}
Permanently deletes a pool. Returns 204 No Content on success.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id | integer | Pool ID |
Get Pool SIMs
GET /api/pools/{id}/sims
Returns all SIMs currently assigned to the pool.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id | integer | Pool ID |
Response
Array of SIM summary objects including ICCID, status, usage, and watchdog settings.
Get Pool Watchdog Logs
GET /api/pools/{id}/watchdog-logs
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id | integer | Pool ID |
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
searchTerm | string | — | Filter by message content |
date | datetime | — | Filter by date |
level | integer | — | Filter by log level |
page | integer | 1 | Page number |
pageSize | integer | 100 | Results per page (1–100) |
Pool Metadata
GET /api/pools/metadata
Returns human-readable labels for pool status and type integer codes.
Response
{
"status": [
{ "code": 0, "description": "Inactive" },
{ "code": 1, "description": "Active" }
],
"type": [
{ "code": 0, "description": "Standard" },
{ "code": 1, "description": "Dynamic" }
]
}