Перейти к содержимому

getMailboxInfo

Обновлено 17 октября 2026

Возвращает, какой ящик подключён к каналу и как: адрес, способ входа, серверы IMAP и SMTP, возможности сервера, квоту, папки по ролям и сколько писем ушло за сутки. Пароля и ключей в ответе нет.

Запрос POST /waInstance{idInstance}/getMailboxInfo/{apiTokenInstance}
Тело JSON, пустой объект {}
Каналы почта

Пример запроса

Сведения о ящике канала:

curl

curl -X POST "$GRATIO_URL/waInstance$GRATIO_ID/getMailboxInfo/$GRATIO_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{}'

Python

import os
import requests

BASE = f"{os.environ['GRATIO_URL']}/waInstance{os.environ['GRATIO_ID']}"
TOKEN = os.environ["GRATIO_TOKEN"]

url = f"{BASE}/getMailboxInfo/{TOKEN}"
payload = {}
response = requests.post(url, json=payload, timeout=60)
print(response.status_code, response.json())

Node.js

const { GRATIO_URL, GRATIO_ID, GRATIO_TOKEN } = process.env;
const base = `${GRATIO_URL}/waInstance${GRATIO_ID}`;

const url = `${base}/getMailboxInfo/${GRATIO_TOKEN}`;
const payload = {};
const response = await fetch(url, {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify(payload),
});
console.log(response.status, await response.json());

PHP

<?php
$base = getenv('GRATIO_URL') . '/waInstance' . getenv('GRATIO_ID');
$url = $base . '/getMailboxInfo/' . getenv('GRATIO_TOKEN');
$payload = [];

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
    CURLOPT_POSTFIELDS => json_encode($payload, JSON_UNESCAPED_UNICODE),
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 60,
]);
$response = json_decode(curl_exec($ch), true);
echo curl_getinfo($ch, CURLINFO_HTTP_CODE), PHP_EOL;
print_r($response);

Пример ответа

Ответ 200 OK:

{
  "email": "info@school.ru",
  "login": "info@school.ru",
  "auth": "password",
  "oauthProvider": null,
  "provider": "beget",
  "imap": {"host": "imap.beget.com", "port": 993, "security": "ssl"},
  "smtp": {"host": "smtp.beget.com", "port": 465, "security": "ssl"},
  "since": 1791823658,
  "serverCapabilities": ["ENABLE", "ID", "IDLE", "IMAP4REV1", "LITERAL+", "MOVE", "NAMESPACE", "QUOTA", "SPECIAL-USE", "UIDPLUS"],
  "quota": {"usedKb": 120400, "limitKb": 10485760},
  "folders": {"inbox": "INBOX", "sent": "Sent", "spam": "Spam", "drafts": "Drafts", "trash": "Trash", "archive": "Archive"},
  "sentToday": 12,
  "dailyLimit": 300
}

Поля ответа

Поле Тип Описание
email string адрес ящика
login string логин, с которым Gratio входит
auth string password — по паролю, oauth — через сервис
oauthProvider string сервис входа: google, microsoft, yandex, mailru; null — вход по паролю
provider string сервис почты, если Gratio его узнал: yandex, gmail, beget…; null — серверы заданы вручную
imap, smtp object серверы: host, port, security — ssl или starttls
since integer с какого времени письма приходят уведомлениями, время Unix
serverCapabilities array что умеет сервер IMAP — ниже
quota object занято и доступно в КБ; null — сервер квоту не сообщает
folders object роль → имя папки на сервере. Ролей, которых в ящике нет, в объекте нет
sentToday integer писем отправлено за сутки по UTC
dailyLimit integer предел писем в сутки

Что умеет сервер

Возможность Что даёт
IDLE новые письма приходят уведомлением сразу. Без неё Gratio проверяет ящик раз в минуту
MOVE перенос одной командой. Без неё — копия и удаление в старой папке
UIDPLUS новые uid после переноса и копирования, удаление насовсем только указанных писем
QUOTA квота в quota
SPECIAL-USE роли папок по флагам сервера, а не по именам

Без UIDPLUS удаление насовсем стирает в папке и другие письма, которые уже помечены \Deleted в почтовой программе. Это касается deleteMessages и переноса без MOVE.

Ошибки

Код code Когда Что делать
400 not_authorized ящик не подключён или почта перестала пускать подключить ящик: connectMailbox
501 not_supported канал — не почта вызвать у канала «Почта»
503 unavailable нет связи с сервером почты повторить позже

Общие правила — в статье Ответы и ошибки.

Что дальше

Была ли статья полезна?