89 lines
5.6 KiB
Go
89 lines
5.6 KiB
Go
![]() |
package models
|
|||
|
|
|||
|
type UserDataResponse struct {
|
|||
|
HSent int64 `json:"hsent"` // Количество писем, отправленных за последний час
|
|||
|
HLimit int64 `json:"hlimit"` // Лимит на количество писем, которые можно отправить за час
|
|||
|
DSent int64 `json:"dsent"` // Количество писем, отправленных за текущий день
|
|||
|
DLimit int64 `json:"dlimit"` // Лимит на количество писем, которые можно отправить за день
|
|||
|
Quota int64 `json:"quota"` // Оставшееся количество писем, которые можно отправить в рамках текущего тарифа
|
|||
|
Validate int64 `json:"validate"` // Лимит на количество проверок наверное емейл адресов
|
|||
|
Tariff string `json:"tarif"` // Название текущего тарифа
|
|||
|
ExpiresQuota string `json:"expires_quota"` // Дата окончания квоты
|
|||
|
TariffQuota int64 `json:"tarif_quota"` // Общая квота на отправку писем, предоставляемая по тарифу
|
|||
|
Balance float64 `json:"balance"` // Баланс bucks
|
|||
|
TariffPrice float64 `json:"tarif_price"` // Тарифный план, в месяц
|
|||
|
}
|
|||
|
|
|||
|
type UserStatsResponse struct {
|
|||
|
Sent int64 `json:"sent"` // Общее количество отправленных писем
|
|||
|
Open int64 `json:"open"` // Количество открытых писем
|
|||
|
Spam int64 `json:"spam"` // Количество писем, попавших в спам
|
|||
|
Bounce int64 `json:"bounce"` // Количество писем, которые вернулись как недоставленные
|
|||
|
Unsub int64 `json:"unsub"` // Количество отписавшихся пользователей
|
|||
|
Tracking TrackingStats `json:"tracking"`
|
|||
|
}
|
|||
|
|
|||
|
type TrackingStats struct {
|
|||
|
Device DeviceStats `json:"device"` // Статистика по устройствам
|
|||
|
Activity ActivityStats `json:"activity"` // Активность пользователей в разное время суток
|
|||
|
Country map[string]int64 `json:"country"` // Статистика по странам (код страны и количество взаимодействий)
|
|||
|
}
|
|||
|
|
|||
|
type DeviceStats struct {
|
|||
|
Computer int64 `json:"computer"` // Количество взаимодействий с компьютеров
|
|||
|
Tablet int64 `json:"tablet"` // Количество взаимодействий с планшетов
|
|||
|
Mobile int64 `json:"mobile"` // Количество взаимодействий с мобильных устройств
|
|||
|
}
|
|||
|
|
|||
|
type ActivityStats struct {
|
|||
|
Morning int64 `json:"morning"` // Взаимодействия утром
|
|||
|
Day int64 `json:"day"` // Взаимодействия днем
|
|||
|
Evening int64 `json:"evening"` // Взаимодействия вечером
|
|||
|
Night int64 `json:"night"` // Взаимодействия ночью
|
|||
|
}
|
|||
|
|
|||
|
type DomainsResponse []DomainInfo
|
|||
|
|
|||
|
type DomainInfo struct {
|
|||
|
Domain string `json:"domain"` // Имя домена
|
|||
|
SPF bool `json:"spf"` // SPF запись
|
|||
|
DKIM bool `json:"dkim"` // DKIM запись
|
|||
|
CNAME bool `json:"cname"` // CNAME запись
|
|||
|
IsModeration bool `json:"isModeration"` // Статус модерации
|
|||
|
IsActive bool `json:"isActive"` // Статус активности домена
|
|||
|
}
|
|||
|
|
|||
|
// один из возможных ответов - {"result":false}
|
|||
|
// стоит чекать на длину массив
|
|||
|
type IpsResponse []IPInfo
|
|||
|
|
|||
|
type IPInfo struct {
|
|||
|
Sent int64 `json:"sent"` // Количество отправленных писем
|
|||
|
Bounce int64 `json:"bounce"` // Количество возвратов
|
|||
|
IP string `json:"ip"` // IP адрес
|
|||
|
IsInstall bool `json:"isInstall"` // Установлен ли IP
|
|||
|
IsActive bool `json:"isActive"` // Активен ли IP
|
|||
|
ExpiresDate string `json:"expiresDate"` // Дата окончания
|
|||
|
CreateDate string `json:"createDate"` // Дата создания
|
|||
|
}
|
|||
|
|
|||
|
type LogMsgResponse struct {
|
|||
|
Data []LogMsgData `json:"data"`
|
|||
|
TotalPages int64 `json:"totalPages"` // Всего страниц
|
|||
|
TotalCount int64 `json:"totalCount"` // Всего записей
|
|||
|
PerPagesCount int64 `json:"perPagesCount"` // Количество записей на странице
|
|||
|
}
|
|||
|
|
|||
|
type LogMsgData struct {
|
|||
|
MailFrom string `json:"mailfrom"` // От кого отправлено письмо
|
|||
|
MailTo string `json:"mailto"` // Кому отправлено письмо
|
|||
|
Status string `json:"status"` // Статус письма
|
|||
|
IsOpen bool `json:"is_open"` // Было ли письмо открыто
|
|||
|
Subject string `json:"subject"` // Тема письма
|
|||
|
IsUnsubscribe bool `json:"is_unsubscribe"` // Является ли письмо отпиской
|
|||
|
Tag string `json:"tag"` // Тег сообщения
|
|||
|
Response string `json:"response"` // Ответ от сервера
|
|||
|
MessageID string `json:"messageid"` // Уникальный идентификатор сообщения
|
|||
|
Date string `json:"date"` // Дата и время отправки сообщения
|
|||
|
}
|