Stats a email account
/api/v1/email-accounts/{account}/statsParameters
| Name | In | Type | Description |
|---|---|---|---|
accountrequired | path | string | The account identifier. |
Request
/api/v1/email-accounts/{account}/statscurl -X GET 'https://app.mailyte.com/api/v1/email-accounts/01JBT8XQ2M9WYC3K4F6R7S8T9V/stats' \
-H 'Authorization: Bearer mk_live_YOUR_API_KEY'const response = await fetch('https://app.mailyte.com/api/v1/email-accounts/01JBT8XQ2M9WYC3K4F6R7S8T9V/stats', {
method: 'GET',
headers: {
Authorization: 'Bearer mk_live_YOUR_API_KEY',
},
});
const { data } = await response.json();import requests
response = requests.get(
"https://app.mailyte.com/api/v1/email-accounts/01JBT8XQ2M9WYC3K4F6R7S8T9V/stats",
headers={"Authorization": "Bearer mk_live_YOUR_API_KEY"},
)
data = response.json()["data"]<?php
$response = Http::withToken('mk_live_YOUR_API_KEY')
->get('https://app.mailyte.com/api/v1/email-accounts/01JBT8XQ2M9WYC3K4F6R7S8T9V/stats');
$data = $response->json('data');require "net/http"
require "json"
uri = URI("https://app.mailyte.com/api/v1/email-accounts/01JBT8XQ2M9WYC3K4F6R7S8T9V/stats")
request = Net::HTTP::Get.new(uri)
request["Authorization"] = "Bearer mk_live_YOUR_API_KEY"
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(request) }Response
Success.
dataobjectobjectstringmailbox_statsmailbox_idstringThe mailbox these counters describe. Retrieve it with `GET /api/v1/email-accounts/{email_account}`.
messagesobjectFive independent answers about one set of messages. **`total` is not `sent` + `received`**: a message can be counted in both `unread` and `starred`, and `total` counts rows. Do not expect these to add up.
totalintegersentintegerreceivedintegerunreadintegerstarredinteger
storageobjectBytes, and the same two figures as `storage` on the mailbox object. The percentage this endpoint used to publish is gone: it is `used / quota`, which you can compute, and it was a third unit of a value already published twice.
quota_bytesintegerBytes. The same ceiling as `storage.quota_bytes` on the mailbox object. **Never null**, and not nullable: it is our own figure, read from a NOT NULL column in MySQL, and this endpoint additionally floors it — a missing quota would publish 0, never null. That is precisely the difference between the two fields in this object, and it is why only `used_bytes` can tell you it does not know: the quota can never be unknown, so a 0 here would mean a real ceiling of zero rather than a figure we failed to read.
used_bytesintegerBytes. **null means we could not read the figure, not that the mailbox is empty** — usage is measured on the mail server and is null whenever the mailbox does not exist there yet. Carries exactly the caveat `storage.used_bytes` on the mailbox object does, and means the same thing.
Returned inside the standard envelope.
Errors
| Status | When |
|---|---|
401 | The API key is missing, unknown, revoked or expired. All four answer identically, on purpose: distinguishing them would confirm which keys exist. |
403 | The key is valid but may not do this: it lacks the required scope, its IP allowlist does not include you, or this endpoint does not accept API keys. |
404 | No such resource in this organization. |
422 | The request was understood but the values were not acceptable. |
429 | Too many requests, or the organization has spent its sending allowance. `Retry-After` says how long to wait. |
Every status, with what causes it and what to do, is on the error reference.