> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://agentinbox.space/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://agentinbox.space/_mcp/server.

# IMAP и SMTP

> Настройка IMAP и SMTP для доступа к ящикам Agent Inbox из почтовых клиентов или по коду.

> **IMAP в разработке**
>
> Поддержка IMAP сейчас в разработке и появится в ближайшие недели. Ниже описано запланированное поведение. SMTP уже доступен.

Agent Inbox поддерживает стандартные протоколы IMAP и SMTP: можно подключаться классическими клиентами или интегрироваться с системами, которые опираются на эти протоколы.

## Что такое IMAP и SMTP?

**IMAP (Internet Message Access Protocol)** и **SMTP (Simple Mail Transfer Protocol)** — стандартные протоколы интернет-почты.

* **IMAP** нужен, чтобы **читать и управлять письмами**. Клиент синхронизируется с сервером, сообщения доступны с разных устройств. Outlook, Thunderbird и Apple Mail при просмотре ящика используют IMAP.

* **SMTP** нужен, чтобы **отправлять письма**. При нажатии «Отправить» доставку на сервер получателя выполняет SMTP.

### Зачем IMAP/SMTP с Agent Inbox?

* **Почтовый клиент:** Outlook, Thunderbird, Apple Mail или любой клиент с IMAP/SMTP — к ящику Agent Inbox.
* **Доступ из кода:** стандартные библиотеки (например Python `imaplib` / `smtplib`) на любом языке.
* **Связка со старыми системами:** там, где есть только IMAP/SMTP.
* **Привычные инструменты:** тот же рабочий процесс при разработке и тестах.

## Где взять учётные данные

Перед настройкой IMAP или SMTP понадобятся два значения из [консоли Agent Inbox](https://console.agentinbox.space):

#### ID ящика (имя пользователя)

Откройте **Dashboard → Inboxes** и колонку **Inbox ID**. ID ящика — это адрес почты (например `myinbox@agentinbox.space`). Он же будет **именем пользователя** для IMAP.

#### API-ключ (пароль)

Откройте **Dashboard → API Keys**, создайте или скопируйте API-ключ — он будет **паролем**.

## Настройка IMAP

IMAP используется для чтения писем из ящика Agent Inbox.

> **Нужен SSL/TLS**
>
> Для IMAP **обязателен** SSL/TLS. Подключения без SSL отклоняются. Включите SSL/TLS в настройках клиента.

| Параметр    | Значение                                          |
| ----------- | ------------------------------------------------- |
| **Хост**    | `imap.agentinbox.space`                           |
| **Порт**    | `993`                                             |
| **Логин**   | Адрес ящика (например `myinbox@agentinbox.space`) |
| **Пароль**  | Ваш API-ключ                                      |
| **SSL/TLS** | **Обязательно** (должно быть включено)            |

> **Папки**
>
> Сейчас по IMAP доступна только папка **INBOX**. Папки «Отправленные», «Черновики», «Корзина» через IMAP недоступны. Полный доступ к папкам — через [API Agent Inbox](/introduction).

### Пример на Python (IMAP)

```python
import imaplib
import os
import email

# Your credentials from Agent Inbox Console
inbox_email = "myinbox@agentinbox.space"  # From Dashboard → Inboxes
api_key = os.getenv("AGENTINBOX_API_KEY")  # From Dashboard → API Keys

# Connect with SSL (required)
imap = imaplib.IMAP4_SSL("imap.agentinbox.space", 993)

try:
    # Authenticate using inbox email as username
    imap.login(inbox_email, api_key)

    # Select INBOX (only supported folder)
    imap.select("INBOX")

    # Search for all messages
    status, message_ids = imap.search(None, "ALL")

    if status == "OK":
        for msg_id in message_ids[0].split():
            # Fetch message
            status, msg_data = imap.fetch(msg_id, "(RFC822)")
            if status == "OK":
                email_body = msg_data[0][1]
                message = email.message_from_bytes(email_body)
                print(f"Subject: {message['subject']}")
finally:
    imap.logout()
```

### Пример на TypeScript (IMAP)

```typescript
import Imap from "imap";

// Your credentials from Agent Inbox Console
const inboxEmail = "myinbox@agentinbox.space"; // From Dashboard → Inboxes
const apiKey = process.env.AGENTINBOX_API_KEY!; // From Dashboard → API Keys

const imap = new Imap({
  user: inboxEmail,
  password: apiKey,
  host: "imap.agentinbox.space",
  port: 993,
  tls: true, // SSL required
});

imap.once("ready", () => {
  imap.openBox("INBOX", false, (err, box) => {
    if (err) throw err;
    console.log(`${box.messages.total} messages in INBOX`);
    imap.end();
  });
});

imap.once("error", (err: Error) => {
  console.error("IMAP error:", err.message);
});

imap.connect();
```

## Настройка SMTP

SMTP используется для отправки писем с ящика Agent Inbox.

> **Нужен SSL/TLS**
>
> Для SMTP **обязателен** SSL/TLS. Подключения без SSL отклоняются. Включите SSL/TLS в настройках клиента.

| Параметр    | Значение                               |
| ----------- | -------------------------------------- |
| **Хост**    | `smtp.agentinbox.space`                |
| **Порт**    | `465`                                  |
| **Логин**   | agentinbox                             |
| **Пароль**  | Ваш API-ключ                           |
| **SSL/TLS** | **Обязательно** (должно быть включено) |

> **Адрес From**
>
> Поле **From** должно совпадать с адресом вашего ящика
> (например `myinbox@agentinbox.space`). Другой адрес в From может привести к сбоям доставки.

### Лимиты SMTP

* **Получатели:** не более 50 на одно письмо
* **Размер сообщения:** до 10 МБ
* **Таймаут сессии:** 30 минут

### Пример на Python (SMTP)

```python
import smtplib
import os
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

# Your credentials from Agent Inbox Console
inbox_email = "myinbox@agentinbox.space"  # From Dashboard → Inboxes
api_key = os.getenv("AGENTINBOX_API_KEY")  # From Dashboard → API Keys

# Create message
msg = MIMEMultipart()
msg["Subject"] = "Hello from Agent Inbox"
msg["From"] = inbox_email  # Use your inbox email as the From address
msg["To"] = "recipient@example.com"
msg.attach(MIMEText("This is a test email sent via SMTP.", "plain"))

# Connect with SSL (required) and send
with smtplib.SMTP_SSL("smtp.agentinbox.space", 465) as server:
    server.login(inbox_email, api_key)
    server.send_message(msg)
    print("Email sent successfully!")
```

### Пример на TypeScript (SMTP)

```typescript
import nodemailer from "nodemailer";

// Your credentials from Agent Inbox Console
const inboxEmail = "myinbox@agentinbox.space"; // From Dashboard → Inboxes
const apiKey = process.env.AGENTINBOX_API_KEY!; // From Dashboard → API Keys

const transporter = nodemailer.createTransport({
  host: "smtp.agentinbox.space",
  port: 465,
  secure: true, // SSL required
  auth: {
    user: inboxEmail,
    pass: apiKey,
  },
});

async function sendEmail() {
  const info = await transporter.sendMail({
    from: inboxEmail, // Use your inbox email as the From address
    to: "recipient@example.com",
    subject: "Hello from Agent Inbox",
    text: "This is a test email sent via SMTP.",
  });
  console.log("Email sent:", info.messageId);
}

sendEmail().catch(console.error);
```

## Устранение неполадок

| Ошибка                  | Причина         | Что сделать                                 |
| ----------------------- | --------------- | ------------------------------------------- |
| «Authentication failed» | Неверные данные | Проверьте адрес ящика и API-ключ в консоли  |
| «Connection refused»    | Нет SSL         | Включите SSL/TLS в клиенте                  |
| «Connection timeout»    | Файрвол         | Откройте порты 993 (IMAP) и 465/587 (SMTP)  |
| «Sender not authorized» | Неверный From   | В From укажите адрес своего ящика           |
| «Folder not found»      | Не INBOX        | По IMAP только INBOX; остальное — через API |

## IMAP/SMTP или API

| Сценарий                       | Рекомендация  |
| ------------------------------ | ------------- |
| Почтовый клиент                | IMAP/SMTP     |
| Простая отправка из кода       | SMTP          |
| Полное управление ящиком       | API           |
| Уведомления в реальном времени | API (вебхуки) |
| Все папки                      | API           |
| Массовые операции              | API           |