TelgeaDevelopers

Data pools

The shared pools your numbers draw data from: how much of each is left, and how much each member has used.

The data pool object

Track the shared data pool your numbers draw on.

FieldTypeDescription
poolIdrequiredstringUUID of the data pool
6b9a0c74-51d2-4e83-9f16-2a7c8d0e5b34
regionIdrequiredstringIdentifier of the region this pool covers
eu-zone-1
regionNamerequiredstringDisplay name of the region this pool covers
Europe
totalAmountGBrequirednumberTotal size of the pool in GB
500
consumedGBrequirednumberData consumed from the pool so far, in GB
312.4
remainingGBrequirednumberData still available in the pool, in GB
187.6
expirationDaterequiredstringDate the pool expires, as an ISO date (YYYY-MM-DD)
2026-12-31
hasActiveRestrictionsrequiredbooleanWhether any number drawing on this pool is currently restricted
false

Operations

List data pools

GET/v1/data-pools
Enterprise APIPartner API

Retrieves every active data pool in your organization, with how much of each is left.

A pool covers one region. Numbers in that region draw on the pool as they use data, and stop when it is exhausted — so remainingGB is the figure to watch if you resell the pool and decide when to top up or throttle a customer.

Consumption figures lag the network by the same delay as the usage feed, up to about 16 hours in some markets, so remainingGB does not yet count usage the network has not reported.

Scope: pools:read.

Requires the permission pools:read on the key.

Try it in the playground → Calls run against your live organization; there is no sandbox.

Responses

StatusMeaningBody
200Successfully retrieved the active data pools and their balances.ListDataPoolsResponse
400Request failed schema validation, or was refused by a business rulenone
401Missing or invalid API key in the X-API-Key headerUnauthorizedError
403Insufficient permissions to view data poolsForbiddenError
429The API key has used its request quota for the current window. `Retry-After` says how many seconds until it resets.TooManyRequestsError
500Internal server error. Contact support if this persists.InternalError

Problems this endpoint can return

This endpoint returns no domain-specific problems.

Response fields

200 ListDataPoolsResponse

FieldTypeDescription
poolsrequiredarray of DataPoolEvery pool your organization holds.
Show 8 child fields of pools
FieldTypeDescription
poolIdrequiredstringUUID of the data pool
6b9a0c74-51d2-4e83-9f16-2a7c8d0e5b34
regionIdrequiredstringIdentifier of the region this pool covers
eu-zone-1
regionNamerequiredstringDisplay name of the region this pool covers
Europe
totalAmountGBrequirednumberTotal size of the pool in GB
500
consumedGBrequirednumberData consumed from the pool so far, in GB
312.4
remainingGBrequirednumberData still available in the pool, in GB
187.6
expirationDaterequiredstringDate the pool expires, as an ISO date (YYYY-MM-DD)
2026-12-31
hasActiveRestrictionsrequiredbooleanWhether any number drawing on this pool is currently restricted
false
GET/v1/data-pools

Request

curl -X GET "https://api.telgea.com/v1/data-pools" \
  -H "x-api-key: $TELGEA_API_KEY"

Response

{
  "pools": [
    {
      "poolId": "6b9a0c74-51d2-4e83-9f16-2a7c8d0e5b34",
      "regionId": "eu-zone-1",
      "regionName": "Europe",
      "totalAmountGB": 500,
      "consumedGB": 312.4,
      "remainingGB": 187.6,
      "expirationDate": "2026-12-31",
      "hasActiveRestrictions": false
    }
  ]
}

List the members of a data pool

GET/v1/data-pools/{poolId}/members
Enterprise APIPartner API

Retrieves every user drawing on a data pool, with the data each has taken from it.

Use this to attribute a pool's consumption to individual customers. usageBytes is the member's usage across all their lines, repeated on each of their rows, so count it once per userId rather than summing the rows.

A pool belonging to another organization answers 404, not 403.

Scope: pools:read.

Requires the permission pools:read on the key.

Try it in the playground → Calls run against your live organization; there is no sandbox.

Parameters

ParameterInTypeDescription
poolIdrequiredpathstring (uuid)UUID of the data pool
6b9a0c74-51d2-4e83-9f16-2a7c8d0e5b34

Responses

StatusMeaningBody
200Successfully retrieved the pool members and their usage.ListPoolMembersResponse
400Request failed schema validation, or was refused by a business rulenone
401Missing or invalid API key in the X-API-Key headerUnauthorizedError
403Insufficient permissions to view data poolsForbiddenError
404No data pool in your organization has this idNotFoundError
429The API key has used its request quota for the current window. `Retry-After` says how many seconds until it resets.TooManyRequestsError
500Internal server error. Contact support if this persists.InternalError

Problems this endpoint can return

StatusProblemWhen
404Pool not foundA request names a data pool that your organization does not have.
Response fields

200 ListPoolMembersResponse

FieldTypeDescription
poolIdrequiredstringUUID of the pool these members draw on.
6b9a0c74-51d2-4e83-9f16-2a7c8d0e5b34
membersrequiredarray of PoolMemberEvery line drawing on this pool.
Show 9 child fields of members
FieldTypeDescription
userIdrequiredstringUUID of the user drawing on the pool
9c1f2a6e-3b7d-4e0a-8f21-5d6c7b8a9e01
msisdnrequiredstringPhone number in E.164 format
+4520123456
numberTyperequiredenum
localtravel
Which line draws on the pool
local
firstNamerequiredstringFirst name of the user holding the line, or null.
Anna
lastNamerequiredstringLast name of the user holding the line, or null.
Holm
emailrequiredstringEmail address of the user holding the line, or null.
activationDaterequiredstringDate the member joined the pool (YYYY-MM-DD)
2026-09-01
terminationDaterequiredstringDate the member left the pool (YYYY-MM-DD). Null while the line is still drawing on it.
2026-12-31
usageBytesrequirednumberBytes the member has drawn from the pool across all their lines. A member with several lines is listed once per line, each row carrying the same total, so add it once per userId.
10485760
GET/v1/data-pools/{poolId}/members

Request

curl -X GET "https://api.telgea.com/v1/data-pools/6b9a0c74-51d2-4e83-9f16-2a7c8d0e5b34/members" \
  -H "x-api-key: $TELGEA_API_KEY"

Response

{
  "poolId": "6b9a0c74-51d2-4e83-9f16-2a7c8d0e5b34",
  "members": [
    {
      "userId": "9c1f2a6e-3b7d-4e0a-8f21-5d6c7b8a9e01",
      "msisdn": "+4520123456",
      "numberType": "local",
      "firstName": "Anna",
      "lastName": "Holm",
      "email": "[email protected]",
      "activationDate": "2026-09-01",
      "terminationDate": null,
      "usageBytes": 10485760
    }
  ]
}
Need the raw schema? OpenAPI JSON