# json
## Описание метода

Осуществляется с помощью POST-запроса. Событие для отправки письма определяется на стороне клиента. Название операции и набор принимаемых полей настраиваются в системе Майндбокс. Подробней про вызов метода можно прочитать [здесь](https://developers.mindbox.ru/docs/v3).

```xml title="Универсальная операция"
POST https://api.mindbox.ru/v3/operations/{синхронная/асинхронная операция}?endpointId={уникальный идентификатор сайта/мобильного приложения/и т.п.}&operation={название операции}&deviceUUID={уникальный идентификатор устройства}&{transactionId}={Id транзакции в вашей системе}

Accept: application/json
Content-Type: application/json
Authorization: SecretKey {Секретный ключ, обязательность уточнить у менеджера}

{
  "customer": {
    "email": "<Email>"
  },
  "emailMailing": {
    "customParameters": {
      "{Имя параметра}": "{Значение параметра}"
    },
    "attachments": [
      {
        "fileName": "<Имя прикрепляемого файла>",
        "body": {
          "fileId": "<Идентификатор прикрепляемого файла>"
        }
      }    
    ]
  },
  "executionDateTimeUtc": "<Дата и время выполнения (можно использовать для выполнения запроса задним числом)>"
}
```

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

* `customer/email` — может быть любой другой идентификатор клиента, зависит от настроек операции.
* `emailMailing` — объект для передачи дополнительных параметров при их наличии. Может меняться на `smsMailing/viberMailing/mobilePushMailing/webPushMailing` в зависимости от канала рассылок.
* `customParameters` — объект для передачи [пользовательских параметров](https://help.mindbox.ru/docs/custom-parameters-operation) при их наличии.
* `attachments` — массив для передачи [вложений](https://help.mindbox.ru/docs/email-with-attachment) при их наличии.

**transactionId** — это ключ идемпотентности, который используется как уникальный идентификатор транзакции отправки письма в вашей системе (необязательный параметр).

:::info
  [Подробнее о ключе идемпотентности.](https://help.mindbox.ru/docs/idempotentnost#kak-sozdat-klyuch-idempotentnosti)
:::

По этому идентификатору можно узнать статус рассылки: была ли доставлена, открыта и т.п. Если в Mindbox уже зарегистрирована транзакция с таким `transactionId`, то повторно рассылка не будет отправлена и в логе запроса будет сообщение **Transaction already processed**. Если в случае ошибки вы вызываете операцию повторно, то `transactionId` передавать обязательно. Иначе рассылка может отправиться одному и тому же человеку несколько раз.

:::danger
  Отправка Email в режиме `sync` не поддерживает использование `transactionId` — сообщения уйдут клиенту дважды. Для отправки письма используйте режим `async`.

  Если все же необходимо настроить операцию в синхронном режиме с использованием ключа идемпотентности, обратитесь к менеджеру вашего проекта.
:::

<br />
