pepipost_gem 2.5.0 → 5.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE +6 -13
- data/README.md +123 -77
- data/lib/pepipost.rb +74 -0
- data/lib/{pepipost_gem → pepipost}/api_helper.rb +5 -3
- data/lib/pepipost/configuration.rb +24 -0
- data/lib/{pepipost_gem → pepipost}/controllers/base_controller.rb +10 -5
- data/lib/pepipost/controllers/domain_controller.rb +68 -0
- data/lib/pepipost/controllers/domain_delete_controller.rb +67 -0
- data/lib/pepipost/controllers/events_controller.rb +104 -0
- data/lib/pepipost/controllers/mail_send_controller.rb +54 -0
- data/lib/pepipost/controllers/setrecurringcreditddetails_controller.rb +68 -0
- data/lib/pepipost/controllers/stats_controller.rb +82 -0
- data/lib/pepipost/controllers/subaccounts_controller.rb +68 -0
- data/lib/pepipost/controllers/subaccounts_create_subaccount_controller.rb +68 -0
- data/lib/pepipost/controllers/subaccounts_delete_controller.rb +67 -0
- data/lib/pepipost/controllers/subaccounts_get_sub_accounts_controller.rb +71 -0
- data/lib/pepipost/controllers/subaccounts_setsubaccountcredit_controller.rb +68 -0
- data/lib/pepipost/controllers/subaccounts_update_subaccount_controller.rb +67 -0
- data/lib/pepipost/controllers/suppression_controller.rb +121 -0
- data/lib/{pepipost_gem → pepipost}/exceptions/api_exception.rb +5 -3
- data/lib/pepipost/http/auth/custom_header_auth.rb +16 -0
- data/lib/{pepipost_gem → pepipost}/http/faraday_client.rb +17 -8
- data/lib/{pepipost_gem → pepipost}/http/http_call_back.rb +5 -3
- data/lib/{pepipost_gem → pepipost}/http/http_client.rb +5 -3
- data/lib/{pepipost_gem → pepipost}/http/http_context.rb +5 -3
- data/lib/{pepipost_gem → pepipost}/http/http_method_enum.rb +5 -3
- data/lib/{pepipost_gem → pepipost}/http/http_request.rb +5 -3
- data/lib/{pepipost_gem → pepipost}/http/http_response.rb +5 -3
- data/lib/pepipost/models/action_enum.rb +18 -0
- data/lib/pepipost/models/add_email_or_domain_to_suppression_list.rb +48 -0
- data/lib/pepipost/models/aggregated_by_enum.rb +20 -0
- data/lib/pepipost/models/attachments.rb +44 -0
- data/lib/{pepipost_gem → pepipost}/models/base_model.rb +5 -3
- data/lib/pepipost/models/content.rb +44 -0
- data/lib/pepipost/models/create_subaccount.rb +76 -0
- data/lib/pepipost/models/delete_domain.rb +35 -0
- data/lib/pepipost/models/delete_subacoount.rb +35 -0
- data/lib/pepipost/models/domain_struct.rb +45 -0
- data/lib/pepipost/models/email_struct.rb +44 -0
- data/lib/pepipost/models/enable_or_disable_subacoount.rb +44 -0
- data/lib/pepipost/models/events_enum.rb +44 -0
- data/lib/pepipost/models/from.rb +44 -0
- data/lib/pepipost/models/personalizations.rb +135 -0
- data/lib/pepipost/models/remove_email_or_domain_to_suppression_list.rb +48 -0
- data/lib/pepipost/models/send.rb +164 -0
- data/lib/pepipost/models/settings.rb +71 -0
- data/lib/pepipost/models/sort_enum.rb +17 -0
- data/lib/pepipost/models/timeperiod_enum.rb +20 -0
- data/lib/pepipost/models/type_enum.rb +17 -0
- data/lib/pepipost/models/update_credis_of_subaccount.rb +54 -0
- data/lib/pepipost/models/update_recurring_credis_of_subaccount.rb +80 -0
- data/lib/pepipost/models/update_subaccount.rb +72 -0
- data/lib/pepipost/pepipost_client.rb +99 -0
- metadata +98 -54
- data/lib/pepipost_gem.rb +0 -40
- data/lib/pepipost_gem/configuration.rb +0 -17
- data/lib/pepipost_gem/controllers/email_controller.rb +0 -59
- data/lib/pepipost_gem/models/attachments.rb +0 -42
- data/lib/pepipost_gem/models/attribute.rb +0 -42
- data/lib/pepipost_gem/models/email_body.rb +0 -119
- data/lib/pepipost_gem/models/email_body_attachments.rb +0 -42
- data/lib/pepipost_gem/models/from.rb +0 -42
- data/lib/pepipost_gem/models/personalizations.rb +0 -85
- data/lib/pepipost_gem/models/send_email_error.rb +0 -42
- data/lib/pepipost_gem/models/send_email_response.rb +0 -52
- data/lib/pepipost_gem/models/settings.rb +0 -69
- data/lib/pepipost_gem/pepipost_gem_client.rb +0 -19
@@ -0,0 +1,35 @@
|
|
1
|
+
# pepipost
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0 (
|
4
|
+
# https://apimatic.io ).
|
5
|
+
|
6
|
+
module Pepipost
|
7
|
+
# Deletesubaccount modal
|
8
|
+
class DeleteSubacoount < BaseModel
|
9
|
+
# The username of the subaccount
|
10
|
+
# @return [String]
|
11
|
+
attr_accessor :username
|
12
|
+
|
13
|
+
# A mapping from model property names to API property names.
|
14
|
+
def self.names
|
15
|
+
@_hash = {} if @_hash.nil?
|
16
|
+
@_hash['username'] = 'username'
|
17
|
+
@_hash
|
18
|
+
end
|
19
|
+
|
20
|
+
def initialize(username = nil)
|
21
|
+
@username = username
|
22
|
+
end
|
23
|
+
|
24
|
+
# Creates an instance of the object from a hash.
|
25
|
+
def self.from_hash(hash)
|
26
|
+
return nil unless hash
|
27
|
+
|
28
|
+
# Extract variables from the hash.
|
29
|
+
username = hash['username']
|
30
|
+
|
31
|
+
# Create object from extracted values.
|
32
|
+
DeleteSubacoount.new(username)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# pepipost
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0 (
|
4
|
+
# https://apimatic.io ).
|
5
|
+
|
6
|
+
module Pepipost
|
7
|
+
# Domain Modal
|
8
|
+
class DomainStruct < BaseModel
|
9
|
+
# The domain you wish to include in the 'From' header of your emails.
|
10
|
+
# @return [String]
|
11
|
+
attr_accessor :domain
|
12
|
+
|
13
|
+
# The subdomain which will be used for tracking opens, clicks and
|
14
|
+
# unsubscribe
|
15
|
+
# @return [String]
|
16
|
+
attr_accessor :envelope_name
|
17
|
+
|
18
|
+
# A mapping from model property names to API property names.
|
19
|
+
def self.names
|
20
|
+
@_hash = {} if @_hash.nil?
|
21
|
+
@_hash['domain'] = 'domain'
|
22
|
+
@_hash['envelope_name'] = 'envelopeName'
|
23
|
+
@_hash
|
24
|
+
end
|
25
|
+
|
26
|
+
def initialize(domain = nil,
|
27
|
+
envelope_name = nil)
|
28
|
+
@domain = domain
|
29
|
+
@envelope_name = envelope_name
|
30
|
+
end
|
31
|
+
|
32
|
+
# Creates an instance of the object from a hash.
|
33
|
+
def self.from_hash(hash)
|
34
|
+
return nil unless hash
|
35
|
+
|
36
|
+
# Extract variables from the hash.
|
37
|
+
domain = hash['domain']
|
38
|
+
envelope_name = hash['envelopeName']
|
39
|
+
|
40
|
+
# Create object from extracted values.
|
41
|
+
DomainStruct.new(domain,
|
42
|
+
envelope_name)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# pepipost
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0 (
|
4
|
+
# https://apimatic.io ).
|
5
|
+
|
6
|
+
module Pepipost
|
7
|
+
# To, CC and Bcc email Address structure
|
8
|
+
class EmailStruct < BaseModel
|
9
|
+
# Name of recipient
|
10
|
+
# @return [String]
|
11
|
+
attr_accessor :name
|
12
|
+
|
13
|
+
# Email of recipient
|
14
|
+
# @return [String]
|
15
|
+
attr_accessor :email
|
16
|
+
|
17
|
+
# A mapping from model property names to API property names.
|
18
|
+
def self.names
|
19
|
+
@_hash = {} if @_hash.nil?
|
20
|
+
@_hash['name'] = 'name'
|
21
|
+
@_hash['email'] = 'email'
|
22
|
+
@_hash
|
23
|
+
end
|
24
|
+
|
25
|
+
def initialize(name = nil,
|
26
|
+
email = nil)
|
27
|
+
@name = name
|
28
|
+
@email = email
|
29
|
+
end
|
30
|
+
|
31
|
+
# Creates an instance of the object from a hash.
|
32
|
+
def self.from_hash(hash)
|
33
|
+
return nil unless hash
|
34
|
+
|
35
|
+
# Extract variables from the hash.
|
36
|
+
name = hash['name']
|
37
|
+
email = hash['email']
|
38
|
+
|
39
|
+
# Create object from extracted values.
|
40
|
+
EmailStruct.new(name,
|
41
|
+
email)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# pepipost
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0 (
|
4
|
+
# https://apimatic.io ).
|
5
|
+
|
6
|
+
module Pepipost
|
7
|
+
# EnableDisablesubaccount modal
|
8
|
+
class EnableOrDisableSubacoount < BaseModel
|
9
|
+
# The username of the subaccount
|
10
|
+
# @return [String]
|
11
|
+
attr_accessor :username
|
12
|
+
|
13
|
+
# Flag to indicate whether the subaccount should be enabled or disabled.
|
14
|
+
# @return [Boolean]
|
15
|
+
attr_accessor :disabled
|
16
|
+
|
17
|
+
# A mapping from model property names to API property names.
|
18
|
+
def self.names
|
19
|
+
@_hash = {} if @_hash.nil?
|
20
|
+
@_hash['username'] = 'username'
|
21
|
+
@_hash['disabled'] = 'disabled'
|
22
|
+
@_hash
|
23
|
+
end
|
24
|
+
|
25
|
+
def initialize(username = nil,
|
26
|
+
disabled = nil)
|
27
|
+
@username = username
|
28
|
+
@disabled = disabled
|
29
|
+
end
|
30
|
+
|
31
|
+
# Creates an instance of the object from a hash.
|
32
|
+
def self.from_hash(hash)
|
33
|
+
return nil unless hash
|
34
|
+
|
35
|
+
# Extract variables from the hash.
|
36
|
+
username = hash['username']
|
37
|
+
disabled = hash['disabled']
|
38
|
+
|
39
|
+
# Create object from extracted values.
|
40
|
+
EnableOrDisableSubacoount.new(username,
|
41
|
+
disabled)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# pepipost
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0 (
|
4
|
+
# https://apimatic.io ).
|
5
|
+
|
6
|
+
module Pepipost
|
7
|
+
# events.
|
8
|
+
class EventsEnum
|
9
|
+
EVENTS_ENUM = [
|
10
|
+
# TODO: Write general description for PROCESSED
|
11
|
+
PROCESSED = 'processed'.freeze,
|
12
|
+
|
13
|
+
# TODO: Write general description for SENT
|
14
|
+
SENT = 'sent'.freeze,
|
15
|
+
|
16
|
+
# TODO: Write general description for OPEN
|
17
|
+
OPEN = 'open'.freeze,
|
18
|
+
|
19
|
+
# TODO: Write general description for CLICK
|
20
|
+
CLICK = 'click'.freeze,
|
21
|
+
|
22
|
+
# TODO: Write general description for UNSUBSCRIBE
|
23
|
+
UNSUBSCRIBE = 'unsubscribe'.freeze,
|
24
|
+
|
25
|
+
# TODO: Write general description for BOUNCE
|
26
|
+
BOUNCE = 'bounce'.freeze,
|
27
|
+
|
28
|
+
# TODO: Write general description for SOFTBOUNCE
|
29
|
+
SOFTBOUNCE = 'softbounce'.freeze,
|
30
|
+
|
31
|
+
# TODO: Write general description for SPAM
|
32
|
+
SPAM = 'spam'.freeze,
|
33
|
+
|
34
|
+
# TODO: Write general description for INVALID
|
35
|
+
INVALID = 'invalid'.freeze,
|
36
|
+
|
37
|
+
# TODO: Write general description for DROPPED
|
38
|
+
DROPPED = 'dropped'.freeze,
|
39
|
+
|
40
|
+
# TODO: Write general description for HARDBOUNCE
|
41
|
+
HARDBOUNCE = 'hardbounce'.freeze
|
42
|
+
].freeze
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# pepipost
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0 (
|
4
|
+
# https://apimatic.io ).
|
5
|
+
|
6
|
+
module Pepipost
|
7
|
+
# Email address representing the sender of the mail
|
8
|
+
class From < BaseModel
|
9
|
+
# TODO: Write general description for this method
|
10
|
+
# @return [String]
|
11
|
+
attr_accessor :email
|
12
|
+
|
13
|
+
# TODO: Write general description for this method
|
14
|
+
# @return [String]
|
15
|
+
attr_accessor :name
|
16
|
+
|
17
|
+
# A mapping from model property names to API property names.
|
18
|
+
def self.names
|
19
|
+
@_hash = {} if @_hash.nil?
|
20
|
+
@_hash['email'] = 'email'
|
21
|
+
@_hash['name'] = 'name'
|
22
|
+
@_hash
|
23
|
+
end
|
24
|
+
|
25
|
+
def initialize(email = nil,
|
26
|
+
name = nil)
|
27
|
+
@email = email
|
28
|
+
@name = name
|
29
|
+
end
|
30
|
+
|
31
|
+
# Creates an instance of the object from a hash.
|
32
|
+
def self.from_hash(hash)
|
33
|
+
return nil unless hash
|
34
|
+
|
35
|
+
# Extract variables from the hash.
|
36
|
+
email = hash['email']
|
37
|
+
name = hash['name']
|
38
|
+
|
39
|
+
# Create object from extracted values.
|
40
|
+
From.new(email,
|
41
|
+
name)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,135 @@
|
|
1
|
+
# pepipost
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0 (
|
4
|
+
# https://apimatic.io ).
|
5
|
+
|
6
|
+
module Pepipost
|
7
|
+
# Personalizations
|
8
|
+
class Personalizations < BaseModel
|
9
|
+
# Dynamic attributes
|
10
|
+
# @return [Object]
|
11
|
+
attr_accessor :attributes
|
12
|
+
|
13
|
+
# Dynamic headers attributes
|
14
|
+
# @return [Object]
|
15
|
+
attr_accessor :headers
|
16
|
+
|
17
|
+
# Attachments to individuals recipient
|
18
|
+
# @return [List of Attachments]
|
19
|
+
attr_accessor :attachments
|
20
|
+
|
21
|
+
# To email-address
|
22
|
+
# @return [List of EmailStruct]
|
23
|
+
attr_accessor :to
|
24
|
+
|
25
|
+
# CC email-address
|
26
|
+
# @return [List of EmailStruct]
|
27
|
+
attr_accessor :cc
|
28
|
+
|
29
|
+
# Bcc email-addresses
|
30
|
+
# @return [List of EmailStruct]
|
31
|
+
attr_accessor :bcc
|
32
|
+
|
33
|
+
# token to which is json string
|
34
|
+
# @return [String]
|
35
|
+
attr_accessor :token_to
|
36
|
+
|
37
|
+
# token cc which is json string
|
38
|
+
# @return [String]
|
39
|
+
attr_accessor :token_cc
|
40
|
+
|
41
|
+
# token bcc which is json string
|
42
|
+
# @return [String]
|
43
|
+
attr_accessor :token_bcc
|
44
|
+
|
45
|
+
# A mapping from model property names to API property names.
|
46
|
+
def self.names
|
47
|
+
@_hash = {} if @_hash.nil?
|
48
|
+
@_hash['attributes'] = 'attributes'
|
49
|
+
@_hash['headers'] = 'headers'
|
50
|
+
@_hash['attachments'] = 'attachments'
|
51
|
+
@_hash['to'] = 'to'
|
52
|
+
@_hash['cc'] = 'cc'
|
53
|
+
@_hash['bcc'] = 'bcc'
|
54
|
+
@_hash['token_to'] = 'token_to'
|
55
|
+
@_hash['token_cc'] = 'token_cc'
|
56
|
+
@_hash['token_bcc'] = 'token_bcc'
|
57
|
+
@_hash
|
58
|
+
end
|
59
|
+
|
60
|
+
def initialize(to = nil,
|
61
|
+
attributes = nil,
|
62
|
+
headers = nil,
|
63
|
+
attachments = nil,
|
64
|
+
cc = nil,
|
65
|
+
bcc = nil,
|
66
|
+
token_to = nil,
|
67
|
+
token_cc = nil,
|
68
|
+
token_bcc = nil)
|
69
|
+
@attributes = attributes
|
70
|
+
@headers = headers
|
71
|
+
@attachments = attachments
|
72
|
+
@to = to
|
73
|
+
@cc = cc
|
74
|
+
@bcc = bcc
|
75
|
+
@token_to = token_to
|
76
|
+
@token_cc = token_cc
|
77
|
+
@token_bcc = token_bcc
|
78
|
+
end
|
79
|
+
|
80
|
+
# Creates an instance of the object from a hash.
|
81
|
+
def self.from_hash(hash)
|
82
|
+
return nil unless hash
|
83
|
+
|
84
|
+
# Extract variables from the hash.
|
85
|
+
# Parameter is an array, so we need to iterate through it
|
86
|
+
to = nil
|
87
|
+
unless hash['to'].nil?
|
88
|
+
to = []
|
89
|
+
hash['to'].each do |structure|
|
90
|
+
to << (EmailStruct.from_hash(structure) if structure)
|
91
|
+
end
|
92
|
+
end
|
93
|
+
attributes = hash['attributes']
|
94
|
+
headers = hash['headers']
|
95
|
+
# Parameter is an array, so we need to iterate through it
|
96
|
+
attachments = nil
|
97
|
+
unless hash['attachments'].nil?
|
98
|
+
attachments = []
|
99
|
+
hash['attachments'].each do |structure|
|
100
|
+
attachments << (Attachments.from_hash(structure) if structure)
|
101
|
+
end
|
102
|
+
end
|
103
|
+
# Parameter is an array, so we need to iterate through it
|
104
|
+
cc = nil
|
105
|
+
unless hash['cc'].nil?
|
106
|
+
cc = []
|
107
|
+
hash['cc'].each do |structure|
|
108
|
+
cc << (EmailStruct.from_hash(structure) if structure)
|
109
|
+
end
|
110
|
+
end
|
111
|
+
# Parameter is an array, so we need to iterate through it
|
112
|
+
bcc = nil
|
113
|
+
unless hash['bcc'].nil?
|
114
|
+
bcc = []
|
115
|
+
hash['bcc'].each do |structure|
|
116
|
+
bcc << (EmailStruct.from_hash(structure) if structure)
|
117
|
+
end
|
118
|
+
end
|
119
|
+
token_to = hash['token_to']
|
120
|
+
token_cc = hash['token_cc']
|
121
|
+
token_bcc = hash['token_bcc']
|
122
|
+
|
123
|
+
# Create object from extracted values.
|
124
|
+
Personalizations.new(to,
|
125
|
+
attributes,
|
126
|
+
headers,
|
127
|
+
attachments,
|
128
|
+
cc,
|
129
|
+
bcc,
|
130
|
+
token_to,
|
131
|
+
token_cc,
|
132
|
+
token_bcc)
|
133
|
+
end
|
134
|
+
end
|
135
|
+
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
# pepipost
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0 (
|
4
|
+
# https://apimatic.io ).
|
5
|
+
|
6
|
+
module Pepipost
|
7
|
+
# Remove Suppression modal
|
8
|
+
class RemoveEmailOrDomainToSuppressionList < BaseModel
|
9
|
+
# List one or more recipient domains to be removed from the suppression list
|
10
|
+
# here. <br>\nComma separate the values to suppress multiple recipient
|
11
|
+
# domains.
|
12
|
+
# @return [String]
|
13
|
+
attr_accessor :domain
|
14
|
+
|
15
|
+
# List one or more email addresses to be removed from the suppression list
|
16
|
+
# here. <br>\nComma separate the values to suppress multiple email
|
17
|
+
# addresses.
|
18
|
+
# @return [String]
|
19
|
+
attr_accessor :email
|
20
|
+
|
21
|
+
# A mapping from model property names to API property names.
|
22
|
+
def self.names
|
23
|
+
@_hash = {} if @_hash.nil?
|
24
|
+
@_hash['domain'] = 'domain'
|
25
|
+
@_hash['email'] = 'email'
|
26
|
+
@_hash
|
27
|
+
end
|
28
|
+
|
29
|
+
def initialize(domain = nil,
|
30
|
+
email = nil)
|
31
|
+
@domain = domain
|
32
|
+
@email = email
|
33
|
+
end
|
34
|
+
|
35
|
+
# Creates an instance of the object from a hash.
|
36
|
+
def self.from_hash(hash)
|
37
|
+
return nil unless hash
|
38
|
+
|
39
|
+
# Extract variables from the hash.
|
40
|
+
domain = hash['domain']
|
41
|
+
email = hash['email']
|
42
|
+
|
43
|
+
# Create object from extracted values.
|
44
|
+
RemoveEmailOrDomainToSuppressionList.new(domain,
|
45
|
+
email)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|