Go
Вспомогательные функции и константы
Что ещё определяет пакет помимо методов клиента.
Функции
| Функция | Что это |
|---|---|
| openemail.New() | Клиент. Он читает из окружения всё, что вы не указали, а client.Err() сообщает о конфигурации, которую он отклонил. |
| openemail.NewTempMail() | Клиент для одноразовых ящиков, который не несёт ключа API. |
| openemail.VerifyWebhookSignature() | Проверяет подпись доставки за постоянное время, с пятиминутным окном, которое меняет openemail.WithTolerance, и возвращает событие. |
| openemail.IsAPIKey(), openemail.IsAccessToken() | Имеет ли значение вид ключа API или токена доступа. |
| openemail.IsSealed() | Зашифровано ли сообщение сквозным шифрованием, из-за чего API не может прочитать его тело. |
| openemail.ResolveLanguage(), openemail.LanguageByCode(), openemail.IsRTLLanguage() | Ищет язык по коду, английскому названию или самоназванию в таблице, которую возвращает openemail.Languages(). |
| client.Request() | Вызывает путь, который пока не оборачивает ни один метод, с учётными данными и правилами повторов клиента. |
Типы
| Тип | Что это |
|---|---|
| openemail.Body | Тело запроса, map[string]any с именами полей API. |
| openemail.Object | Декодированный ответ с методами чтения ID, String, Int, Float, Bool, Time, Object, Objects, Strings и Has. |
| openemail.Page | Одна страница списка: Items, HasMore и NextCursor. |
| openemail.Iterator | Обход всех страниц: Next, Item, Err и All. |
| openemail.Error | Каждый сбой, с Status, Type, Code, Param, DocURL, RequestID, RetryAfter, Fields и Body. |
Константы
Пакет constants содержит каждый набор значений, которым пользуется API, сгенерированный из TypeScript SDK: события вебхуков, области доступа, статусы и остальное. Каждый элемент является константой, названной по своему набору, а у каждого набора текстовых значений есть функция, которая их перечисляет.
webhook, err := client.Webhooks.Create(ctx, openemail.Body{ "url": "https://example.com/webhooks/openemail", "events": []string{constants.WebhookEventsEmailReceived, constants.WebhookEventsEmailBounced},})if err != nil { return err} fmt.Println(webhook.ID(), len(constants.WebhookEventsValues()))