Ограниченное время: скидка 30% на первый платёж.
Назад к обзору API

Документация API InboxWarm

Справочная документация по REST API InboxWarm. Используйте её вместе с коллекцией Postman для API InboxWarm.

На этой странице

Базовый URL#

https://app.inboxwarm.ai/api/v1

Аутентификация#

InboxWarm использует смешанную схему аутентификации в зависимости от HTTP-метода:

GET

Запросы GET и DELETE — передавайте ваш ключ API в качестве параметра запроса api_key.

POST

Запросы POST и PATCH — передавайте ваш ключ API в качестве поля apiKey внутри тела JSON.

Создавайте ключи и управляйте ими в разделе Developer kit > API Integration в приложении InboxWarm. Каждый ключ предоставляет полный доступ к учётной записи по всем эндпоинтам ниже.

Пример — запрос GET:

GET https://app.inboxwarm.ai/api/v1/email-accounts?api_key=YOUR_API_KEY

Пример — тело запроса POST:

{
  "apiKey": "YOUR_API_KEY",
  ...
}

Ограничения частоты запросов#

Лимит по умолчанию — 20 запросов в минуту на каждый ключ API. Проверяйте текущее использование в любой момент с помощью GET /rate-limit — этот вызов не учитывается в вашей квоте.

Ошибки#

Ошибки имеют единообразную структуру:

{
  "error_code": "validation_error",
  "message": "One or more fields are invalid.",
  "details": {}
}

Распространённые значения error_code: validation_error (400), not_found (404), conflict (409), unprocessable (422).

Указатель эндпоинтов#

Учётные записи электронной почты

Система

Проверка работоспособности#

GEThttps://app.inboxwarm.ai/api/v1/health

Базовая проверка доступности API.

Аутентификация:параметр запросаapi_key

Ответы

{
  "status": "ok"
}

Статус ограничения частоты запросов#

GEThttps://app.inboxwarm.ai/api/v1/rate-limit

Проверьте текущее потребление лимита частоты запросов без расходования запроса из вашей квоты.

Аутентификация:параметр запросаapi_key

Ответы

{
  "limit": 20,
  "remaining": 18,
  "reset": 1752585600
}

Учётные записи электронной почты

Список учётных записей электронной почты#

GEThttps://app.inboxwarm.ai/api/v1/email-accounts

Список подключённых учётных записей электронной почты с их текущим статусом. Поддерживает поиск, разбивку на страницы и сортировку. Используйте поиск, чтобы найти emailAccountId по адресу, если вам когда-либо понадобится его повторно определить.

Аутентификация:параметр запросаapi_key

Параметры запроса

searchПоиск по адресу электронной почты или имени
statusactive | warming | paused | error | auth-expired
sort
sortBy

Ответы

{
  "items": [
    {
      "id": "12345",
      "fromEmail": "john@yourcompany.com",
      "fromName": "John Doe",
      "type": "gmail",
      "status": "warming",
      "createdAt": "2026-06-01T10:00:00.000Z"
    },
    {
      "id": "12346",
      "fromEmail": "sales@yourcompany.com",
      "fromName": "Sales Team",
      "type": "microsoft",
      "status": "active",
      "createdAt": "2026-06-03T14:20:00.000Z"
    }
  ],
  "total": 2,
  "page": 1,
  "limit": 20,
  "totalPages": 1
}

Подключить учётную запись электронной почты#

POSThttps://app.inboxwarm.ai/api/v1/email-accounts

Подключите учётную запись Gmail, Microsoft или SMTP/IMAP, используя учётные данные SMTP/IMAP (для Gmail и Microsoft подойдёт пароль приложения). Сохраните возвращённый emailAccountId — все остальные эндпоинты привязаны к нему.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}",
  "fromEmail": "john@yourcompany.com",
  "fromName": "John Doe",
  "type": "gmail",
  "smtp": {
    "host": "smtp.example.com",
    "port": 587,
    "password": "your-password",
    "encryption": "TLS",
    "userName": "smtp-username"
  },
  "imap": {
    "host": "imap.example.com",
    "port": 993,
    "encryption": "SSL",
    "userName": "imap-username"
  }
}

Ответы

{
  "emailAccountId": "12345",
  "fromEmail": "john@yourcompany.com",
  "fromName": "John Doe",
  "type": "gmail",
  "status": "active"
}

Массовое подключение учётных записей электронной почты#

POSThttps://app.inboxwarm.ai/api/v1/email-accounts/bulk-connect

Подключите до 20 учётных записей за один запрос. Каждая запись проверяется и подключается независимо от других — одна некорректная или дублирующаяся учётная запись не останавливает обработку остальных, — а в ответе для каждой учётной записи указывается успех или ошибка, в том же порядке, что и во входных данных.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}",
  "emailAccounts": [
    {
      "fromEmail": "john@yourcompany.com",
      "fromName": "John Doe",
      "type": "gmail",
      "smtp": { "host": "smtp.example.com", "port": 587, "password": "your-password", "encryption": "TLS", "userName": "smtp-username" },
      "imap": { "host": "imap.example.com", "port": 993, "encryption": "SSL", "userName": "imap-username" }
    },
    {
      "fromEmail": "sales@yourcompany.com",
      "type": "microsoft",
      "smtp": { "password": "app-specific-password" }
    }
  ]
}

Ответы

{
  "results": [
    {
      "success": true,
      "emailAccountId": "12345",
      "fromEmail": "john@yourcompany.com",
      "fromName": "John Doe",
      "type": "gmail",
      "status": "active"
    },
    {
      "success": false,
      "fromEmail": "sales@yourcompany.com",
      "error_code": "already_connected",
      "message": "This email address is already connected.",
      "details": {}
    }
  ]
}

Отключить учётную запись электронной почты#

POSThttps://app.inboxwarm.ai/api/v1/email-accounts/{emailAccountId}/disconnect

Приостановите учётную запись, не удаляя её. Конфигурация и история сохраняются для повторного подключения позже.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}"
}

Ответы

{
  "emailAccountId": "12345",
  "status": "disconnected"
}

Удалить учётную запись электронной почты#

DELETEhttps://app.inboxwarm.ai/api/v1/email-accounts/{emailAccountId}

Безвозвратно удалить учётную запись и все связанные с ней данные прогрева и историю.

Аутентификация:параметр запросаapi_key

Ответы

Тело ответа отсутствует

Массовое удаление учётных записей электронной почты#

POSThttps://app.inboxwarm.ai/api/v1/email-accounts/bulk-delete

Безвозвратно удалить до 20 учётных записей за один вызов.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ]
}

Ответы

{
  "results": [
    {
      "emailAccountId": "12345",
      "deleted": true
    },
    {
      "emailAccountId": "12346",
      "deleted": true
    }
  ]
}

Получить статус учётной записи электронной почты#

GEThttps://app.inboxwarm.ai/api/v1/email-accounts/{emailAccountId}/status

Подробный статус для одной учётной записи — состояние подключения, состояние прогрева, статус аутентификации, активные ошибки.

Аутентификация:параметр запросаapi_key

Ответы

{
  "emailAccountId": "12345",
  "fromEmail": "john@yourcompany.com",
  "type": "gmail",
  "authStatus": "connected",
  "warmupStatus": "active",
  "healthScore": 92,
  "connectionError": null,
  "lastConnectedAt": "2026-07-15T08:00:00.000Z"
}

Массовый статус учётных записей электронной почты#

POSThttps://app.inboxwarm.ai/api/v1/email-accounts/bulk-status

Статус до 50 учётных записей за один вызов, возвращаемый в том же порядке, что и входные идентификаторы.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ]
}

Ответы

{
  "results": [
    {
      "emailAccountId": "12345",
      "fromEmail": "john@yourcompany.com",
      "type": "gmail",
      "authStatus": "connected",
      "warmupStatus": "active",
      "healthScore": 92,
      "connectionError": null,
      "lastConnectedAt": "2026-07-15T08:00:00.000Z"
    },
    {
      "emailAccountId": "12346",
      "fromEmail": "sales@yourcompany.com",
      "type": "microsoft",
      "authStatus": "connected",
      "warmupStatus": "paused",
      "healthScore": 81,
      "connectionError": null,
      "lastConnectedAt": "2026-07-14T22:10:00.000Z"
    }
  ]
}

Прогрев

Получить настройки прогрева#

GEThttps://app.inboxwarm.ai/api/v1/warmup-settings/{emailAccountId}

Получить текущую конфигурацию прогрева для учётной записи.

Аутентификация:параметр запросаapi_key

Ответы

{
  "emailAccountId": "12345",
  "displayName": "Ada Lovelace",
  "timeZone": "America/New_York",
  "sendingDays": [1, 2, 3, 4, 5],
  "sendingWindowStartTime": "09:00",
  "sendingWindowEndTime": "17:00",
  "warmupLanguage": "en",
  "targetIndustry": "saas_software",
  "warmupTopics": ["Referral request", "Case study"]
}

Обновить настройки прогрева#

PATCHhttps://app.inboxwarm.ai/api/v1/warmup-settings/{emailAccountId}

Обновите одну или несколько настроек прогрева для учётной записи — имя отправителя, часовой пояс, расписание отправки, язык, отрасль или темы. Изменяются только те поля, которые вы отправили.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}",
  "displayName": "Ada Lovelace",
  "timeZone": "America/New_York",
  "sendingDays": [1, 2, 3, 4, 5],
  "sendingWindowStartTime": "09:00",
  "sendingWindowEndTime": "17:00",
  "warmupLanguage": "en",
  "targetIndustry": "saas_software",
  "warmupTopics": ["Referral request", "Case study"]
}

Ответы

{
  "emailAccountId": "12345",
  "displayName": "Ada Lovelace",
  "timeZone": "America/New_York",
  "sendingDays": [1, 2, 3, 4, 5],
  "sendingWindowStartTime": "09:00",
  "sendingWindowEndTime": "17:00",
  "warmupLanguage": "en",
  "targetIndustry": "saas_software",
  "warmupTopics": ["Referral request", "Case study"]
}

Список языков прогрева#

GEThttps://app.inboxwarm.ai/api/v1/warmup-settings/languages

Перечислите все языки, на которых можно сгенерировать содержимое прогрева, чтобы вы знали, какие значения принимает warmupLanguage.

Аутентификация:параметр запросаapi_key

Ответы

{
  "languages": [
    { "code": "en", "name": "English", "nativeName": "English", "script": "Latin" },
    { "code": "es", "name": "Spanish", "nativeName": "Español", "script": "Latin" },
    { "code": "ja", "name": "Japanese", "nativeName": "日本語", "script": "Japanese" }
  ]
}

Список отраслей прогрева#

GEThttps://app.inboxwarm.ai/api/v1/warmup-settings/industries

Перечислите все целевые отрасли и рекомендуемые для них темы, чтобы вы знали, какие значения принимают targetIndustry и warmupTopics.

Аутентификация:параметр запросаapi_key

Ответы

{
  "industries": [
    {
      "key": "e_commerce",
      "name": "E-Commerce",
      "topics": [
        "Abandoned cart follow-up",
        "New product launch",
        "Seasonal sale announcement",
        "Order and shipping update",
        "Customer review request"
      ]
    },
    {
      "key": "saas_software",
      "name": "SaaS / Software",
      "topics": ["Feature announcement", "Onboarding tip", "Case study"]
    }
  ]
}

Запустить прогрев#

POSThttps://app.inboxwarm.ai/api/v1/warmup-settings/{emailAccountId}/start

Запустить прогрев для учётной записи.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}"
}

Ответы

{
  "emailAccountId": "12345",
  "warmupStatus": "active"
}

Остановить прогрев#

POSThttps://app.inboxwarm.ai/api/v1/warmup-settings/{emailAccountId}/stop

Остановить прогрев для учётной записи.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}"
}

Ответы

{
  "emailAccountId": "12345",
  "warmupStatus": "paused"
}

Массовое действие прогрева#

POSThttps://app.inboxwarm.ai/api/v1/warmup-settings/bulk-action

Запустить или остановить прогрев для до 50 учётных записей за один вызов.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ],
  "action": "start"
}

Ответы

{
  "results": [
    {
      "emailAccountId": "12345",
      "status": "ok"
    },
    {
      "emailAccountId": "12346",
      "status": "ok"
    }
  ]
}

Массовое обновление настроек прогрева#

POSThttps://app.inboxwarm.ai/api/v1/warmup-settings/bulk-update

Примените настройки расписания и/или содержимого сразу для до 50 учётных записей за один вызов.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ],
  "apply": ["language", "window"],
  "warmupLanguage": "es",
  "sendingWindowStartTime": "06:00",
  "sendingWindowEndTime": "10:00"
}

Ответы

{
  "updatedCount": 2
}

История активности прогрева#

GEThttps://app.inboxwarm.ai/api/v1/warmup-status/{emailAccountId}

Сегодняшняя активность прогрева для учётной записи: отправлено, получено, отвечено, спам, отклонено.

Аутентификация:параметр запросаapi_key

Ответы

{
  "emailAccountId": "12345",
  "date": "2026-07-15",
  "current": "active",
  "dailySendingLimit": 10,
  "sent": 12,
  "received": 10,
  "replied": 7,
  "spam": 1,
  "bounced": 0
}

Доставляемость

Получить оценку настройки#

GEThttps://app.inboxwarm.ai/api/v1/setup-score/{emailAccountId}

Кэшированная оценка работоспособности настройки (проверки DMARC, SPF, DKIM, MX, чёрных списков) для учётной записи.

Аутентификация:параметр запросаapi_key

Ответы

{
  "emailAccountId": "12345",
  "emailAccountScore": 86,
  "dmarcScore": 15,
  "spfScore": 29,
  "dkimScore": 18,
  "mxRecordScore": 9,
  "ipBlacklistScore": 5,
  "domainBlacklistScore": 10,
  "updatedAt": "2026-07-14T10:30:00.000Z",
  "manualLastRefreshedAt": "2026-07-14T10:30:00.000Z"
}

Обновить оценку настройки#

POSThttps://app.inboxwarm.ai/api/v1/setup-score/{emailAccountId}/refresh

Синхронно пересчитать оценку настройки для учётной записи.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}"
}

Ответы

{
  "emailAccountId": "12345",
  "emailAccountScore": 88,
  "dmarcScore": 15,
  "spfScore": 29,
  "dkimScore": 18,
  "mxRecordScore": 9,
  "ipBlacklistScore": 7,
  "domainBlacklistScore": 10,
  "updatedAt": "2026-07-15T09:00:00.000Z",
  "manualLastRefreshedAt": "2026-07-15T09:00:00.000Z"
}

Проверка работоспособности DNS#

GEThttps://app.inboxwarm.ai/api/v1/dns-health/{emailAccountId}

Живой поиск DNS для отправляющего домена учётной записи — успех/неудача для SPF, DKIM, DMARC, MX.

Аутентификация:параметр запросаapi_key

Ответы

{
  "emailAccountId": "12345",
  "spf": "pass",
  "dkim": "pass",
  "dmarc": "pass",
  "mx": "pass",
  "cachedAt": "2026-07-15T09:00:00.000Z"
}

Получить оценку доставляемости#

POSThttps://app.inboxwarm.ai/api/v1/deliverability-score/{emailAccountId}

Общий и по каждому ESP показатель доставляемости во входящие против спама за диапазон дат.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}",
  "startDate": "2026-06-01",
  "endDate": "2026-06-30",
  "esps": [
    "gmail",
    "outlook",
    "other"
  ]
}

Ответы

{
  "emailAccountId": "12345",
  "totalDeliverabilityRate": 88,
  "totalSentCount": 1500,
  "totalInboxCount": 1320,
  "totalSpamInboxCount": 180,
  "gmail": {
    "deliverabilityRate": 92,
    "sentCount": 500,
    "inboxCount": 460,
    "spamCount": 40
  },
  "outlook": {
    "deliverabilityRate": 92,
    "sentCount": 500,
    "inboxCount": 460,
    "spamCount": 40
  },
  "other": {
    "deliverabilityRate": 92,
    "sentCount": 500,
    "inboxCount": 460,
    "spamCount": 40
  }
}

Отчёты

Панель управления#

GEThttps://app.inboxwarm.ai/api/v1/dashboard

Сводка прогрева по всей учётной записи для всех подключённых ящиков.

Аутентификация:параметр запросаapi_key

Ответы

{
  "totalAccounts": 42,
  "activeWarmups": 30,
  "pausedWarmups": 8,
  "accountsWithErrors": 2,
  "avgSetupScore": 78.5
}

Отчёт по одной учётной записи#

POSThttps://app.inboxwarm.ai/api/v1/reports

Ежедневный отчёт о прогреве для одной учётной записи за диапазон дат.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}",
  "emailAccountId": "12345",
  "from": "2026-06-01",
  "to": "2026-06-30"
}

Ответы

{
  "emailAccountId": "12345",
  "from": "2026-06-01",
  "to": "2026-06-30",
  "days": [
    {
      "date": "2026-06-15",
      "sent": 25,
      "inbox": 20,
      "received": 22,
      "spam": 3,
      "bounced": 1,
      "undelivered": 0,
      "replied": 5,
      "deliverabilityRate": 92.5
    }
  ]
}

Массовый отчёт#

POSThttps://app.inboxwarm.ai/api/v1/reports/bulk

Ежедневные отчёты о прогреве для до 50 учётных записей за диапазон дат.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ],
  "from": "2026-06-01",
  "to": "2026-06-30"
}

Ответы

{
  "reports": [
    {
      "emailAccountId": "12345",
      "from": "2026-06-01",
      "to": "2026-06-30",
      "days": [
        {
          "date": "2026-06-15",
          "sent": 25,
          "inbox": 20,
          "received": 22,
          "spam": 3,
          "bounced": 1,
          "undelivered": 0,
          "replied": 5,
          "deliverabilityRate": 92.5
        }
      ]
    }
  ]
}

Экспортировать отчёт#

POSThttps://app.inboxwarm.ai/api/v1/reports/export

Запустить асинхронный экспорт отчётов о прогреве в CSV, доставляемый по электронной почте по готовности.

Аутентификация:поле телаapiKey

Тело запроса

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ],
  "from": "2026-06-01",
  "to": "2026-06-30"
}

Ответы

{
  "jobId": "a1b2c3d4",
  "status": "queued"
}