SMS
SMS usage counters
GET /v1/sms/usage
- Scope
sms:read- Tier
- Tier 1
- Data
- Account data
- Idempotency
- Idempotency-Key: not used
Counters from DialerBee's own records. This is not a balance: the SMS provider's credit is not available through the API.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
X-Correlation-ID | header | string | no | Your own trace value, logged with the request. Metadata only, never identity. (min length 1; max length 128) |
Response
200: The counters.
| Header | Meaning |
|---|---|
X-Request-ID | The DialerBee request id. Quote it to support. Every response carries X-Request-ID: req_<ULID>, or edge_<32 hex> when the edge answered before the request reached the API. |
Cache-Control | Always no-store. |
Examples
Request example
curl
curl -sS -X GET \
"https://app.dialerbee.com/api/v1/sms/usage" \
-H "Authorization: Bearer $DIALERBEE_API_KEY"
Python (SDK)
from dialerbee import DialerBee
db = DialerBee() # reads DIALERBEE_API_KEY from the environment
result = db.sms.usage()
Response example
200
{
"sent_last_24h": 12,
"sent_last_30d": 340,
"attempted_last_30d": 350,
"acceptance_rate_percent": 97.1,
"rate_basis": "provider_accepted"
}
Error examples
403 insufficient_scope
{
"type": "https://docs.dialerbee.com/errors/insufficient-scope",
"title": "Not permitted",
"status": 403,
"detail": "The API client does not hold the scope this operation requires.",
"instance": "urn:dialerbee:request:req_01K6BZ3M9X4T7Q2V8N5R6P1W0C",
"code": "insufficient_scope",
"request_id": "req_01K6BZ3M9X4T7Q2V8N5R6P1W0C"
}
401 invalid_api_key
{
"type": "https://docs.dialerbee.com/errors/invalid-api-key",
"title": "Invalid API key",
"status": 401,
"detail": "The Authorization header is missing, is not Bearer dbk_live_..., or the key is not recognised, has expired or was revoked (one answer for every key problem, so a key's state is never revealed).",
"instance": "urn:dialerbee:request:req_01K6BZ3M9X4T7Q2V8N5R6P1W0C",
"code": "invalid_api_key",
"request_id": "req_01K6BZ3M9X4T7Q2V8N5R6P1W0C"
}
Errors
| Status | Code | Title |
|---|---|---|
| 401 | invalid_api_key | Invalid API key |
| 403 | api_access_disabled | API access disabled |
| 403 | ip_not_allowed | IP address not allowed |
| 403 | insufficient_scope | Not permitted |
| 400 | credential_in_url | Credential in URL |
| 400, 422 | validation_failed | Invalid request |
| 429 | rate_limit_exceeded | Too many requests |
| 503 | temporarily_unavailable | Temporarily unavailable |
| 503 | upstream_unavailable | Temporarily unavailable |
| 502 | upstream_invalid_response | Upstream error |
| 500 | internal_error | Internal error |
Objects
SmsUsage
| Field | Type | Required | Description |
|---|---|---|---|
sent_last_24h | integer | yes | |
sent_last_30d | integer | yes | |
attempted_last_30d | integer | yes | |
acceptance_rate_percent | number | yes | (min 0; max 100) |
rate_basis | one of provider_accepted | yes | The rate is the share the provider accepted, not carrier-confirmed delivery. |