helo-email-sdk 1.0.0.pre.beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/lib/helo/api_error.rb +23 -0
- data/lib/helo/apis/activity.rb +24 -0
- data/lib/helo/apis/broadcasts.rb +30 -0
- data/lib/helo/apis/channels.rb +35 -0
- data/lib/helo/apis/domains.rb +45 -0
- data/lib/helo/apis/sending.rb +43 -0
- data/lib/helo/apis/statistics.rb +25 -0
- data/lib/helo/apis/suppressions.rb +25 -0
- data/lib/helo/apis/webhooks.rb +40 -0
- data/lib/helo/client.rb +20 -0
- data/lib/helo/configuration.rb +9 -0
- data/lib/helo/core/api.rb +22 -0
- data/lib/helo/core/api_error.rb +23 -0
- data/lib/helo/core/array_type.rb +32 -0
- data/lib/helo/core/client.rb +75 -0
- data/lib/helo/core/configuration.rb +18 -0
- data/lib/helo/core/model.rb +129 -0
- data/lib/helo/core/model_type.rb +32 -0
- data/lib/helo/enums/attachment_disposition.rb +12 -0
- data/lib/helo/enums/broadcast_status.rb +14 -0
- data/lib/helo/enums/delivery_type.rb +12 -0
- data/lib/helo/enums/dns_record_status.rb +14 -0
- data/lib/helo/enums/dns_record_type.rb +12 -0
- data/lib/helo/enums/event_type.rb +19 -0
- data/lib/helo/enums/mail_type.rb +12 -0
- data/lib/helo/enums/suppression_reason.rb +14 -0
- data/lib/helo/enums/webhook_event.rb +19 -0
- data/lib/helo/models/accepted_webhook_payload.rb +17 -0
- data/lib/helo/models/activity_event.rb +19 -0
- data/lib/helo/models/activity_list_events_request.rb +20 -0
- data/lib/helo/models/activity_list_messages_request.rb +19 -0
- data/lib/helo/models/activity_mail_address.rb +10 -0
- data/lib/helo/models/attachment.rb +13 -0
- data/lib/helo/models/bounced_webhook_payload.rb +18 -0
- data/lib/helo/models/broadcast_content.rb +15 -0
- data/lib/helo/models/broadcast_content_attachment.rb +11 -0
- data/lib/helo/models/broadcast_content_template.rb +11 -0
- data/lib/helo/models/broadcast_details_response.rb +19 -0
- data/lib/helo/models/broadcast_failure_response.rb +12 -0
- data/lib/helo/models/broadcast_response.rb +14 -0
- data/lib/helo/models/broadcast_statistics.rb +15 -0
- data/lib/helo/models/broadcast_tracking.rb +10 -0
- data/lib/helo/models/broadcasts_list_failures_request.rb +11 -0
- data/lib/helo/models/broadcasts_list_request.rb +14 -0
- data/lib/helo/models/broadcasts_list_suppressions_request.rb +11 -0
- data/lib/helo/models/channel_basic_response.rb +12 -0
- data/lib/helo/models/channel_details_response.rb +14 -0
- data/lib/helo/models/channel_tracking.rb +10 -0
- data/lib/helo/models/channels_list_request.rb +14 -0
- data/lib/helo/models/clicked_webhook_payload.rb +18 -0
- data/lib/helo/models/complained_webhook_payload.rb +18 -0
- data/lib/helo/models/create_channel_request.rb +11 -0
- data/lib/helo/models/create_channel_tracking.rb +10 -0
- data/lib/helo/models/create_domain_request.rb +10 -0
- data/lib/helo/models/create_suppressions_request.rb +11 -0
- data/lib/helo/models/create_suppressions_response.rb +9 -0
- data/lib/helo/models/create_webhook_request.rb +13 -0
- data/lib/helo/models/delivered_webhook_payload.rb +18 -0
- data/lib/helo/models/delivery_stats.rb +15 -0
- data/lib/helo/models/dns_record_response.rb +13 -0
- data/lib/helo/models/dns_records_response.rb +13 -0
- data/lib/helo/models/domain_channel_response.rb +12 -0
- data/lib/helo/models/domain_response.rb +13 -0
- data/lib/helo/models/domain_with_dns_response.rb +14 -0
- data/lib/helo/models/domains_list_request.rb +13 -0
- data/lib/helo/models/error_response.rb +16 -0
- data/lib/helo/models/mail_address.rb +10 -0
- data/lib/helo/models/message.rb +17 -0
- data/lib/helo/models/message_details_response.rb +30 -0
- data/lib/helo/models/message_details_response_attachment.rb +11 -0
- data/lib/helo/models/message_details_response_event.rb +12 -0
- data/lib/helo/models/message_details_response_tracking.rb +10 -0
- data/lib/helo/models/opened_webhook_payload.rb +18 -0
- data/lib/helo/models/paginated_events_response.rb +11 -0
- data/lib/helo/models/paginated_messages_response.rb +11 -0
- data/lib/helo/models/paginated_response_of_broadcast.rb +10 -0
- data/lib/helo/models/paginated_response_of_broadcast_failure.rb +10 -0
- data/lib/helo/models/paginated_response_of_broadcast_suppression.rb +10 -0
- data/lib/helo/models/paginated_response_of_domain_response.rb +10 -0
- data/lib/helo/models/paginated_response_of_suppression_response.rb +10 -0
- data/lib/helo/models/pagination_result_of_channel_basic_response.rb +10 -0
- data/lib/helo/models/pagination_result_of_webhook_response.rb +10 -0
- data/lib/helo/models/processed_webhook_payload.rb +17 -0
- data/lib/helo/models/recipient_event_fields.rb +10 -0
- data/lib/helo/models/recipient_headers.rb +11 -0
- data/lib/helo/models/remove_suppression_result.rb +11 -0
- data/lib/helo/models/remove_suppressions_request.rb +11 -0
- data/lib/helo/models/remove_suppressions_response.rb +9 -0
- data/lib/helo/models/resubscribed_webhook_payload.rb +18 -0
- data/lib/helo/models/send_broadcast_request.rb +17 -0
- data/lib/helo/models/send_broadcast_request_message.rb +15 -0
- data/lib/helo/models/send_broadcast_request_template.rb +13 -0
- data/lib/helo/models/send_broadcast_request_tracking.rb +10 -0
- data/lib/helo/models/send_broadcast_response.rb +10 -0
- data/lib/helo/models/send_message_accepted_response.rb +11 -0
- data/lib/helo/models/send_message_batch_request.rb +9 -0
- data/lib/helo/models/send_message_batch_response.rb +9 -0
- data/lib/helo/models/send_message_failed_response.rb +11 -0
- data/lib/helo/models/send_message_request.rb +22 -0
- data/lib/helo/models/send_message_request_template.rb +13 -0
- data/lib/helo/models/send_message_request_tracking.rb +10 -0
- data/lib/helo/models/send_message_response.rb +8 -0
- data/lib/helo/models/statistics_daily_response.rb +9 -0
- data/lib/helo/models/statistics_daily_response_result.rb +11 -0
- data/lib/helo/models/statistics_hourly_response.rb +9 -0
- data/lib/helo/models/statistics_hourly_response_result.rb +11 -0
- data/lib/helo/models/statistics_retrieve_daily_request.rb +14 -0
- data/lib/helo/models/statistics_retrieve_hourly_request.rb +13 -0
- data/lib/helo/models/statistics_retrieve_totals_request.rb +13 -0
- data/lib/helo/models/statistics_totals_response.rb +10 -0
- data/lib/helo/models/suppression_response.rb +11 -0
- data/lib/helo/models/suppression_result.rb +11 -0
- data/lib/helo/models/suppressions_list_request.rb +15 -0
- data/lib/helo/models/unsubscribed_webhook_payload.rb +18 -0
- data/lib/helo/models/update_channel_request.rb +11 -0
- data/lib/helo/models/update_channel_tracking.rb +10 -0
- data/lib/helo/models/update_domain_request.rb +9 -0
- data/lib/helo/models/update_webhook_request.rb +13 -0
- data/lib/helo/models/validation_error.rb +9 -0
- data/lib/helo/models/webhook_header.rb +10 -0
- data/lib/helo/models/webhook_last_response.rb +11 -0
- data/lib/helo/models/webhook_payload_common.rb +15 -0
- data/lib/helo/models/webhook_response.rb +16 -0
- data/lib/helo/models/webhooks_list_request.rb +12 -0
- data/lib/helo/version.rb +5 -0
- data/lib/helo-email-sdk.rb +3 -0
- data/lib/helo.rb +35 -0
- metadata +239 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class BroadcastStatus
|
|
5
|
+
ACCEPTED = "accepted"
|
|
6
|
+
PROCESSING = "processing"
|
|
7
|
+
COMPLETED = "completed"
|
|
8
|
+
CANCELED = "canceled"
|
|
9
|
+
|
|
10
|
+
def self.all
|
|
11
|
+
[ACCEPTED, PROCESSING, COMPLETED, CANCELED].freeze
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class EventType
|
|
5
|
+
ACCEPTED = "accepted"
|
|
6
|
+
PROCESSED = "processed"
|
|
7
|
+
DELIVERED = "delivered"
|
|
8
|
+
BOUNCED = "bounced"
|
|
9
|
+
OPENED = "opened"
|
|
10
|
+
CLICKED = "clicked"
|
|
11
|
+
COMPLAINED = "complained"
|
|
12
|
+
UNSUBSCRIBED = "unsubscribed"
|
|
13
|
+
RESUBSCRIBED = "resubscribed"
|
|
14
|
+
|
|
15
|
+
def self.all
|
|
16
|
+
[ACCEPTED, PROCESSED, DELIVERED, BOUNCED, OPENED, CLICKED, COMPLAINED, UNSUBSCRIBED, RESUBSCRIBED].freeze
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class SuppressionReason
|
|
5
|
+
BOUNCE = "bounce"
|
|
6
|
+
COMPLAINT = "complaint"
|
|
7
|
+
UNSUBSCRIBE = "unsubscribe"
|
|
8
|
+
MANUAL = "manual"
|
|
9
|
+
|
|
10
|
+
def self.all
|
|
11
|
+
[BOUNCE, COMPLAINT, UNSUBSCRIBE, MANUAL].freeze
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class WebhookEvent
|
|
5
|
+
ACCEPTED = "accepted"
|
|
6
|
+
PROCESSED = "processed"
|
|
7
|
+
BOUNCED = "bounced"
|
|
8
|
+
DELIVERED = "delivered"
|
|
9
|
+
OPENED = "opened"
|
|
10
|
+
CLICKED = "clicked"
|
|
11
|
+
COMPLAINED = "complained"
|
|
12
|
+
UNSUBSCRIBED = "unsubscribed"
|
|
13
|
+
RESUBSCRIBED = "resubscribed"
|
|
14
|
+
|
|
15
|
+
def self.all
|
|
16
|
+
[ACCEPTED, PROCESSED, BOUNCED, DELIVERED, OPENED, CLICKED, COMPLAINED, UNSUBSCRIBED, RESUBSCRIBED].freeze
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class AcceptedWebhookPayload
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :event_type, :string, key: "eventType"
|
|
8
|
+
api_attribute :recipients, key: "recipients"
|
|
9
|
+
api_attribute :timestamp, :datetime, key: "timestamp"
|
|
10
|
+
api_attribute :message_id, :string, key: "messageId"
|
|
11
|
+
api_attribute :channel_id, :string, key: "channelId"
|
|
12
|
+
api_attribute :mail_type, :string, key: "mailType"
|
|
13
|
+
api_attribute :subject, :string, key: "subject"
|
|
14
|
+
api_attribute :tags, key: "tags"
|
|
15
|
+
api_attribute :metadata, key: "metadata"
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class ActivityEvent
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :message_id, :string, key: "messageId"
|
|
8
|
+
api_attribute :channel_id, :string, key: "channelId"
|
|
9
|
+
api_attribute :mail_type, :string, key: "mailType"
|
|
10
|
+
api_attribute :mail_source, :string, key: "mailSource"
|
|
11
|
+
api_attribute :event_type, :string, key: "eventType"
|
|
12
|
+
api_attribute :timestamp, :datetime, key: "timestamp"
|
|
13
|
+
api_attribute :subject, :string, key: "subject"
|
|
14
|
+
api_attribute :recipients, key: "recipients"
|
|
15
|
+
api_attribute :tags, key: "tags"
|
|
16
|
+
api_attribute :metadata, key: "metadata"
|
|
17
|
+
api_attribute :details, key: "details"
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
# Generated request model for query parameters
|
|
5
|
+
class ActivityListEventsRequest
|
|
6
|
+
include Helo::Core::Model
|
|
7
|
+
|
|
8
|
+
api_attribute :channel_id, :string, key: "channelId"
|
|
9
|
+
api_attribute :message_id, :string, key: "messageId"
|
|
10
|
+
api_attribute :after, :integer, key: "after"
|
|
11
|
+
api_attribute :start_date, :datetime, key: "startDate"
|
|
12
|
+
api_attribute :end_date, :datetime, key: "endDate"
|
|
13
|
+
api_attribute :limit, :integer, key: "limit"
|
|
14
|
+
api_attribute :recipient, :string, key: "recipient"
|
|
15
|
+
api_attribute :subject, :string, key: "subject"
|
|
16
|
+
api_attribute :tags, key: "tags", explode: false
|
|
17
|
+
api_attribute :mail_type, :string, key: "mailType"
|
|
18
|
+
api_attribute :event_types, key: "eventTypes", explode: false
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
# Generated request model for query parameters
|
|
5
|
+
class ActivityListMessagesRequest
|
|
6
|
+
include Helo::Core::Model
|
|
7
|
+
|
|
8
|
+
api_attribute :channel_id, :string, key: "channelId"
|
|
9
|
+
api_attribute :after, :integer, key: "after"
|
|
10
|
+
api_attribute :start_date, :datetime, key: "startDate"
|
|
11
|
+
api_attribute :end_date, :datetime, key: "endDate"
|
|
12
|
+
api_attribute :limit, :integer, key: "limit"
|
|
13
|
+
api_attribute :recipient, :string, key: "recipient"
|
|
14
|
+
api_attribute :subject, :string, key: "subject"
|
|
15
|
+
api_attribute :tags, key: "tags", explode: false
|
|
16
|
+
api_attribute :mail_type, :string, key: "mailType"
|
|
17
|
+
api_attribute :status, :string, key: "status"
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class Attachment
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :content, :string, key: "content"
|
|
8
|
+
api_attribute :content_id, :string, key: "contentId"
|
|
9
|
+
api_attribute :content_type, :string, key: "contentType"
|
|
10
|
+
api_attribute :file_name, :string, key: "fileName"
|
|
11
|
+
api_attribute :disposition, :string, key: "disposition"
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class BouncedWebhookPayload
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :event_type, :string, key: "eventType"
|
|
8
|
+
api_attribute :recipient, :string, key: "recipient"
|
|
9
|
+
api_attribute :details, :string, key: "details"
|
|
10
|
+
api_attribute :timestamp, :datetime, key: "timestamp"
|
|
11
|
+
api_attribute :message_id, :string, key: "messageId"
|
|
12
|
+
api_attribute :channel_id, :string, key: "channelId"
|
|
13
|
+
api_attribute :mail_type, :string, key: "mailType"
|
|
14
|
+
api_attribute :subject, :string, key: "subject"
|
|
15
|
+
api_attribute :tags, key: "tags"
|
|
16
|
+
api_attribute :metadata, key: "metadata"
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class BroadcastContent
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :from, Helo::Core::ModelType.new("Helo::MailAddress"), key: "from"
|
|
8
|
+
api_attribute :reply_to, Helo::Core::ArrayType.new("Helo::MailAddress"), key: "replyTo"
|
|
9
|
+
api_attribute :template, Helo::Core::ModelType.new("Helo::BroadcastContentTemplate"), key: "template"
|
|
10
|
+
api_attribute :attachments, Helo::Core::ArrayType.new("Helo::BroadcastContentAttachment"), key: "attachments"
|
|
11
|
+
api_attribute :tags, key: "tags"
|
|
12
|
+
api_attribute :headers, key: "headers"
|
|
13
|
+
api_attribute :metadata, key: "metadata"
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class BroadcastContentAttachment
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :file_name, :string, key: "fileName"
|
|
8
|
+
api_attribute :disposition, :string, key: "disposition"
|
|
9
|
+
api_attribute :size, :integer, key: "size"
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class BroadcastContentTemplate
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :subject, :string, key: "subject"
|
|
8
|
+
api_attribute :html, :string, key: "html"
|
|
9
|
+
api_attribute :text, :string, key: "text"
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class BroadcastDetailsResponse
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :id, :string, key: "id"
|
|
8
|
+
api_attribute :created_at, :datetime, key: "createdAt"
|
|
9
|
+
api_attribute :status, :string, key: "status"
|
|
10
|
+
api_attribute :subject, :string, key: "subject"
|
|
11
|
+
api_attribute :completion, :string, key: "completion"
|
|
12
|
+
api_attribute :messages, :integer, key: "messages"
|
|
13
|
+
api_attribute :failed, :integer, key: "failed"
|
|
14
|
+
api_attribute :suppressed, :integer, key: "suppressed"
|
|
15
|
+
api_attribute :content, Helo::Core::ModelType.new("Helo::BroadcastContent"), key: "content"
|
|
16
|
+
api_attribute :tracking, Helo::Core::ModelType.new("Helo::BroadcastTracking"), key: "tracking"
|
|
17
|
+
api_attribute :statistics, Helo::Core::ModelType.new("Helo::BroadcastStatistics"), key: "statistics"
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class BroadcastFailureResponse
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :recipients, Helo::Core::ModelType.new("Helo::RecipientHeaders"), key: "recipients"
|
|
8
|
+
api_attribute :message_index, :integer, key: "messageIndex"
|
|
9
|
+
api_attribute :error_code, :string, key: "errorCode"
|
|
10
|
+
api_attribute :error_message, :string, key: "errorMessage"
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class BroadcastResponse
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :id, :string, key: "id"
|
|
8
|
+
api_attribute :created_at, :datetime, key: "createdAt"
|
|
9
|
+
api_attribute :status, :string, key: "status"
|
|
10
|
+
api_attribute :subject, :string, key: "subject"
|
|
11
|
+
api_attribute :completion, :string, key: "completion"
|
|
12
|
+
api_attribute :messages, :integer, key: "messages"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class BroadcastStatistics
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :sent, :integer, key: "sent"
|
|
8
|
+
api_attribute :delivered, :integer, key: "delivered"
|
|
9
|
+
api_attribute :bounced, :integer, key: "bounced"
|
|
10
|
+
api_attribute :opened, :integer, key: "opened"
|
|
11
|
+
api_attribute :clicked, :integer, key: "clicked"
|
|
12
|
+
api_attribute :complained, :integer, key: "complained"
|
|
13
|
+
api_attribute :unsubscribed, :integer, key: "unsubscribed"
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
# Generated request model for query parameters
|
|
5
|
+
class BroadcastsListFailuresRequest
|
|
6
|
+
include Helo::Core::Model
|
|
7
|
+
|
|
8
|
+
api_attribute :limit, :integer, key: "limit"
|
|
9
|
+
api_attribute :offset, :integer, key: "offset"
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
# Generated request model for query parameters
|
|
5
|
+
class BroadcastsListRequest
|
|
6
|
+
include Helo::Core::Model
|
|
7
|
+
|
|
8
|
+
api_attribute :channel_id, :string, key: "channelId"
|
|
9
|
+
api_attribute :status, :string, key: "status"
|
|
10
|
+
api_attribute :subject, :string, key: "subject"
|
|
11
|
+
api_attribute :limit, :integer, key: "limit"
|
|
12
|
+
api_attribute :offset, :integer, key: "offset"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
# Generated request model for query parameters
|
|
5
|
+
class BroadcastsListSuppressionsRequest
|
|
6
|
+
include Helo::Core::Model
|
|
7
|
+
|
|
8
|
+
api_attribute :limit, :integer, key: "limit"
|
|
9
|
+
api_attribute :offset, :integer, key: "offset"
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class ChannelBasicResponse
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :id, :string, key: "id"
|
|
8
|
+
api_attribute :name, :string, key: "name"
|
|
9
|
+
api_attribute :delivery_type, :string, key: "deliveryType"
|
|
10
|
+
api_attribute :created_at, :datetime, key: "createdAt"
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class ChannelDetailsResponse
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :id, :string, key: "id"
|
|
8
|
+
api_attribute :name, :string, key: "name"
|
|
9
|
+
api_attribute :delivery_type, :string, key: "deliveryType"
|
|
10
|
+
api_attribute :created_at, :datetime, key: "createdAt"
|
|
11
|
+
api_attribute :updated_at, :datetime, key: "updatedAt"
|
|
12
|
+
api_attribute :tracking, Helo::Core::ModelType.new("Helo::ChannelTracking"), key: "tracking"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
# Generated request model for query parameters
|
|
5
|
+
class ChannelsListRequest
|
|
6
|
+
include Helo::Core::Model
|
|
7
|
+
|
|
8
|
+
api_attribute :limit, :integer, key: "limit"
|
|
9
|
+
api_attribute :offset, :integer, key: "offset"
|
|
10
|
+
api_attribute :name, :string, key: "name"
|
|
11
|
+
api_attribute :channel_ids, key: "channelIds", explode: false
|
|
12
|
+
api_attribute :delivery_type, :string, key: "deliveryType"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class ClickedWebhookPayload
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :event_type, :string, key: "eventType"
|
|
8
|
+
api_attribute :recipient, :string, key: "recipient"
|
|
9
|
+
api_attribute :details, :string, key: "details"
|
|
10
|
+
api_attribute :timestamp, :datetime, key: "timestamp"
|
|
11
|
+
api_attribute :message_id, :string, key: "messageId"
|
|
12
|
+
api_attribute :channel_id, :string, key: "channelId"
|
|
13
|
+
api_attribute :mail_type, :string, key: "mailType"
|
|
14
|
+
api_attribute :subject, :string, key: "subject"
|
|
15
|
+
api_attribute :tags, key: "tags"
|
|
16
|
+
api_attribute :metadata, key: "metadata"
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class ComplainedWebhookPayload
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :event_type, :string, key: "eventType"
|
|
8
|
+
api_attribute :recipient, :string, key: "recipient"
|
|
9
|
+
api_attribute :details, :string, key: "details"
|
|
10
|
+
api_attribute :timestamp, :datetime, key: "timestamp"
|
|
11
|
+
api_attribute :message_id, :string, key: "messageId"
|
|
12
|
+
api_attribute :channel_id, :string, key: "channelId"
|
|
13
|
+
api_attribute :mail_type, :string, key: "mailType"
|
|
14
|
+
api_attribute :subject, :string, key: "subject"
|
|
15
|
+
api_attribute :tags, key: "tags"
|
|
16
|
+
api_attribute :metadata, key: "metadata"
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class CreateChannelRequest
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :name, :string, key: "name"
|
|
8
|
+
api_attribute :delivery_type, :string, key: "deliveryType"
|
|
9
|
+
api_attribute :tracking, Helo::Core::ModelType.new("Helo::CreateChannelTracking"), key: "tracking"
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class CreateSuppressionsRequest
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :channel_id, :string, key: "channelId"
|
|
8
|
+
api_attribute :mail_type, :string, key: "mailType"
|
|
9
|
+
api_attribute :emails, key: "emails"
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class CreateWebhookRequest
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :url, :string, key: "url"
|
|
8
|
+
api_attribute :events, key: "events"
|
|
9
|
+
api_attribute :channel_id, :string, key: "channelId"
|
|
10
|
+
api_attribute :additional_headers, Helo::Core::ArrayType.new("Helo::WebhookHeader"), key: "additionalHeaders"
|
|
11
|
+
api_attribute :enabled, :boolean, key: "enabled"
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class DeliveredWebhookPayload
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :event_type, :string, key: "eventType"
|
|
8
|
+
api_attribute :recipient, :string, key: "recipient"
|
|
9
|
+
api_attribute :details, :string, key: "details"
|
|
10
|
+
api_attribute :timestamp, :datetime, key: "timestamp"
|
|
11
|
+
api_attribute :message_id, :string, key: "messageId"
|
|
12
|
+
api_attribute :channel_id, :string, key: "channelId"
|
|
13
|
+
api_attribute :mail_type, :string, key: "mailType"
|
|
14
|
+
api_attribute :subject, :string, key: "subject"
|
|
15
|
+
api_attribute :tags, key: "tags"
|
|
16
|
+
api_attribute :metadata, key: "metadata"
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class DeliveryStats
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :sent, :integer, key: "sent"
|
|
8
|
+
api_attribute :delivered, :integer, key: "delivered"
|
|
9
|
+
api_attribute :opened, :integer, key: "opened"
|
|
10
|
+
api_attribute :clicked, :integer, key: "clicked"
|
|
11
|
+
api_attribute :bounced, :integer, key: "bounced"
|
|
12
|
+
api_attribute :unsubscribed, :integer, key: "unsubscribed"
|
|
13
|
+
api_attribute :complained, :integer, key: "complained"
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class DnsRecordResponse
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :type, :string, key: "type"
|
|
8
|
+
api_attribute :host, :string, key: "host"
|
|
9
|
+
api_attribute :value, :string, key: "value"
|
|
10
|
+
api_attribute :status, :string, key: "status"
|
|
11
|
+
api_attribute :last_checked_at, :datetime, key: "lastCheckedAt"
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class DnsRecordsResponse
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :domain_key_active, Helo::Core::ModelType.new("Helo::DnsRecordResponse"), key: "domainKeyActive"
|
|
8
|
+
api_attribute :domain_key_pending, Helo::Core::ModelType.new("Helo::DnsRecordResponse"), key: "domainKeyPending"
|
|
9
|
+
api_attribute :return_path, Helo::Core::ArrayType.new("Helo::DnsRecordResponse"), key: "returnPath"
|
|
10
|
+
api_attribute :tracking, Helo::Core::ModelType.new("Helo::DnsRecordResponse"), key: "tracking"
|
|
11
|
+
api_attribute :unsubscribe, Helo::Core::ModelType.new("Helo::DnsRecordResponse"), key: "unsubscribe"
|
|
12
|
+
end
|
|
13
|
+
end
|