{
  "name": "sendinbox",
  "label": "SendInbox",
  "version": 1,
  "description": "Триггеры и действия SendInbox поверх REST API v1: письма, подписчики, автоматизации, события.",
  "language": "ru",
  "audience": "global",
  "base": {
    "baseUrl": "https://app.working-esender.ru/api/v1",
    "headers": { "Authorization": "Bearer {{connection.apiKey}}" },
    "response": {
      "error": {
        "message": "[{{statusCode}}] {{ifempty(body.error, 'Ошибка запроса к SendInbox')}}"
      }
    }
  },
  "connection": {
    "name": "sendinbox",
    "label": "SendInbox — API-ключ",
    "type": "apikey",
    "parameters": [
      {
        "name": "apiKey",
        "type": "text",
        "label": "API-ключ",
        "required": true,
        "help": "Кабинет SendInbox → Настройки → API-ключи (sk_live_…)."
      }
    ],
    "verify": { "url": "/me", "method": "GET" }
  },
  "webhooks": [
    {
      "name": "events",
      "label": "События писем",
      "type": "web",
      "connection": "sendinbox",
      "attach": {
        "url": "/hooks",
        "method": "POST",
        "body": { "url": "{{webhook.url}}", "events": "{{join(parameters.events, ',')}}" },
        "response": { "data": { "id": "{{body.id}}" } }
      },
      "detach": { "url": "/hooks/{{webhook.id}}", "method": "DELETE" },
      "respond": { "status": 200 },
      "parameters": [
        {
          "name": "events",
          "type": "array",
          "label": "Типы событий",
          "help": "Пусто = все.",
          "validate": { "enum": ["sent", "delivered", "open", "click", "hard_bounce", "soft_bounce", "spam", "unsubscribe", "deferred"] }
        }
      ]
    }
  ],
  "modules": [
    {
      "name": "watchEvents",
      "label": "Наблюдать события писем",
      "description": "Мгновенный триггер: доставка / открытие / клик / отписка / жалоба / возврат.",
      "type": "trigger",
      "typeOptions": "instant",
      "webhook": "events",
      "interface": [
        { "name": "event", "type": "text", "label": "Событие" },
        { "name": "email", "type": "email", "label": "E-mail" },
        { "name": "message_id", "type": "text", "label": "ID письма" },
        { "name": "campaign_id", "type": "text", "label": "ID кампании" },
        { "name": "url", "type": "url", "label": "URL (клик)" },
        { "name": "timestamp", "type": "date", "label": "Время" }
      ],
      "samples": { "events": [{ "event": "open", "email": "user@mail.ru", "message_id": "msg_123", "timestamp": "2026-01-01T10:00:00.000Z" }] }
    },
    {
      "name": "addSubscriber",
      "label": "Добавить подписчика",
      "description": "Создаёт подписчика (при указании списка — сразу в список).",
      "type": "action",
      "connection": "sendinbox",
      "communication": {
        "url": "/subscribers",
        "method": "POST",
        "body": { "email": "{{parameters.email}}", "name": "{{parameters.name}}", "phone": "{{parameters.phone}}", "list": "{{parameters.list}}" },
        "response": { "output": "{{body.subscriber}}" }
      },
      "parameters": [
        { "name": "email", "type": "email", "label": "E-mail", "required": true },
        { "name": "name", "type": "text", "label": "Имя" },
        { "name": "phone", "type": "text", "label": "Телефон" },
        { "name": "list", "type": "text", "label": "ID списка" }
      ]
    },
    {
      "name": "sendEmail",
      "label": "Отправить письмо",
      "description": "Транзакционное письмо с подтверждённого домена (DKIM, трекинг).",
      "type": "action",
      "connection": "sendinbox",
      "communication": {
        "url": "/emails",
        "method": "POST",
        "body": { "to": "{{parameters.to}}", "subject": "{{parameters.subject}}", "html": "{{parameters.html}}", "fromEmail": "{{parameters.fromEmail}}", "fromName": "{{parameters.fromName}}" }
      },
      "parameters": [
        { "name": "to", "type": "email", "label": "Кому", "required": true },
        { "name": "subject", "type": "text", "label": "Тема", "required": true },
        { "name": "html", "type": "text", "label": "HTML", "required": true },
        { "name": "fromEmail", "type": "email", "label": "От кого", "required": true },
        { "name": "fromName", "type": "text", "label": "Имя отправителя" }
      ]
    },
    {
      "name": "triggerAutomation",
      "label": "Запустить автоматизацию",
      "description": "Инициирует событийные цепочки для контакта.",
      "type": "action",
      "connection": "sendinbox",
      "communication": {
        "url": "/automations/trigger",
        "method": "POST",
        "body": { "event": "{{parameters.event}}", "email": "{{parameters.email}}", "data": "{{parameters.data}}" }
      },
      "parameters": [
        { "name": "event", "type": "text", "label": "Событие", "required": true },
        { "name": "email", "type": "email", "label": "E-mail контакта", "required": true },
        { "name": "data", "type": "collection", "label": "Данные" }
      ]
    }
  ]
}
