Files at a glance
GET
/api/v1/mailbox/files/summaryTotals for the mailbox's files: by kind, by month, top senders, and the largest.
Errors
| Status | When |
|---|---|
401 |
No token, or the session expired or was signed out. Sign in again with POST /mailbox-auth/login. |
403 |
The account has a temporary password: until POST /security/password succeeds, every other call answers this with error_code: password_change_required. |
Request
GET
/api/v1/mailbox/files/summarycurl -X GET 'https://courier.mailyte.com/api/v1/mailbox/files/summary' \
-H 'Authorization: Bearer MAILBOX_TOKEN'const response = await fetch('https://courier.mailyte.com/api/v1/mailbox/files/summary', {
method: 'GET',
headers: {
Authorization: 'Bearer MAILBOX_TOKEN',
},
});
const { data } = await response.json();import requests
response = requests.get(
"https://courier.mailyte.com/api/v1/mailbox/files/summary",
headers={"Authorization": "Bearer MAILBOX_TOKEN"},
)
data = response.json()["data"]<?php
$response = Http::withToken('MAILBOX_TOKEN')
->get('https://courier.mailyte.com/api/v1/mailbox/files/summary');
$data = $response->json('data');require "net/http"
require "json"
uri = URI("https://courier.mailyte.com/api/v1/mailbox/files/summary")
request = Net::HTTP::Get.new(uri)
request["Authorization"] = "Bearer MAILBOX_TOKEN"
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(request) }Response
Successful Response
dataobjecttotal_filesintegertotal_bytesintegerreceivedobjectcountintegerbytesinteger
sentobjectcountintegerbytesinteger
last_30_daysintegerby_kindarray<object>kindstringcountintegerbytesinteger
top_sendersarray<object>namestring or nullemailstringcountintegerbytesinteger
by_montharray<object>monthstringYYYY-MM.
countinteger
largestarray<object>idstringmessage_idstringfolderstringdirectionstringreceived | sentindexintegernamestringtypestringkindstringimages, pdfs, documents, spreadsheets, presentations, archives, media or other.
sizeintegersubjectstringfromobjectnamestring or nullemailstringrequired
toobjectnamestring or nullemailstringrequired
received_atstring or null
newest_atstring or nulloldest_atstring or null
200
application/json{
"type": "success",
"msg": "File overview retrieved successfully",
"data": {
"total_files": 316,
"total_bytes": 412339200,
"received": {
"count": 281,
"bytes": 377000000
},
"sent": {
"count": 35,
"bytes": 35339200
},
"last_30_days": 22,
"by_kind": [
{
"kind": "pdfs",
"count": 140,
"bytes": 210000000
}
],
"top_senders": [
{
"name": "Tunde Bello",
"email": "tunde@example.com",
"count": 31,
"bytes": 52000000
}
],
"by_month": [
{
"month": "2026-10",
"count": 22
}
],
"largest": [
{
"id": "INBOX:4821/1",
"message_id": "INBOX:4821",
"folder": "INBOX",
"direction": "received",
"index": 1,
"name": "q3-figures.pdf",
"type": "application/pdf",
"kind": "pdfs",
"size": 248311,
"subject": "Re: the quarterly numbers",
"from": {
"name": "Tunde Bello",
"email": "tunde@example.com"
},
"to": {
"name": "Ada Obi",
"email": "ada@yourdomain.com"
},
"received_at": "2026-10-11T09:14:02+00:00"
}
],
"newest_at": "2026-10-11T09:14:02+00:00",
"oldest_at": "2024-02-01T12:00:00+00:00"
}
}Returned inside the standard envelope.
Errors
| Status | When |
|---|---|
401 | No token, or the session expired or was signed out. Sign in again with `POST /mailbox-auth/login`. |
403 | The account has a temporary password: until `POST /security/password` succeeds, every other call answers this with `error_code: password_change_required`. |
Every status, with what causes it and what to do, is on the error reference.