ark-email 0.5.2 → 0.7.0
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 +4 -4
- data/CHANGELOG.md +22 -0
- data/README.md +3 -3
- data/lib/ark_email/models/email_send_batch_params.rb +31 -7
- data/lib/ark_email/models/email_send_params.rb +46 -27
- data/lib/ark_email/models/email_send_raw_params.rb +9 -1
- data/lib/ark_email/models/suppression_bulk_create_params.rb +4 -2
- data/lib/ark_email/models/suppression_create_params.rb +3 -3
- data/lib/ark_email/models/tracking_create_params.rb +12 -12
- data/lib/ark_email/models/tracking_update_params.rb +12 -12
- data/lib/ark_email/models/webhook_create_params.rb +26 -23
- data/lib/ark_email/models/webhook_update_params.rb +10 -10
- data/lib/ark_email/resources/emails.rb +15 -11
- data/lib/ark_email/resources/suppressions.rb +1 -1
- data/lib/ark_email/resources/tracking.rb +8 -8
- data/lib/ark_email/resources/webhooks.rb +10 -10
- data/lib/ark_email/version.rb +1 -1
- data/rbi/ark_email/models/email_send_batch_params.rbi +42 -19
- data/rbi/ark_email/models/email_send_params.rbi +71 -71
- data/rbi/ark_email/models/email_send_raw_params.rbi +8 -0
- data/rbi/ark_email/models/suppression_bulk_create_params.rbi +11 -7
- data/rbi/ark_email/models/suppression_create_params.rbi +5 -8
- data/rbi/ark_email/models/tracking_create_params.rbi +18 -27
- data/rbi/ark_email/models/tracking_update_params.rbi +20 -32
- data/rbi/ark_email/models/webhook_create_params.rbi +40 -36
- data/rbi/ark_email/models/webhook_update_params.rbi +15 -30
- data/rbi/ark_email/resources/emails.rbi +35 -19
- data/rbi/ark_email/resources/suppressions.rbi +2 -2
- data/rbi/ark_email/resources/tracking.rbi +15 -15
- data/rbi/ark_email/resources/webhooks.rbi +19 -17
- data/sig/ark_email/models/email_send_batch_params.rbs +16 -17
- data/sig/ark_email/models/email_send_params.rbs +36 -49
- data/sig/ark_email/models/email_send_raw_params.rbs +10 -1
- data/sig/ark_email/models/suppression_bulk_create_params.rbs +4 -6
- data/sig/ark_email/models/suppression_create_params.rbs +4 -6
- data/sig/ark_email/models/tracking_create_params.rbs +16 -22
- data/sig/ark_email/models/tracking_update_params.rbs +16 -24
- data/sig/ark_email/models/webhook_create_params.rbs +12 -16
- data/sig/ark_email/models/webhook_update_params.rbs +20 -30
- data/sig/ark_email/resources/emails.rbs +10 -8
- data/sig/ark_email/resources/suppressions.rbs +1 -1
- data/sig/ark_email/resources/tracking.rbs +8 -8
- data/sig/ark_email/resources/webhooks.rbs +8 -8
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ddf19df44b85deecef1d6cbf6590336a3309035c29a4407967df568b5ac9ca19
|
|
4
|
+
data.tar.gz: d7048ca3b1397cd9c1ff148be90bb0bc24bcb691d543f511f8c94a7e9e6e3109
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1d9d815fed0a695d07f4fc015c0b05e9864dbbdbe7f905566032eef3f13eee959276aa7b4abe256eaa668b73c4b690f7e94e5cef31c8ad4bedef0bfeb0ef7ae0
|
|
7
|
+
data.tar.gz: 45de3d27d11501f0430b2f32ee215bea62af5884e1a3c2507a36d6e833b734e22d3f6b3cb2f9de3a208225adce8546f50087fa54e78fde260fcbf9a1c9381854
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.7.0 (2026-01-14)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.6.0...v0.7.0](https://github.com/ArkHQ-io/ark-ruby/compare/v0.6.0...v0.7.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** add metadata ([ce7e4f9](https://github.com/ArkHQ-io/ark-ruby/commit/ce7e4f902f732cd6cddd18d7efe81faddb6400c4))
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Chores
|
|
13
|
+
|
|
14
|
+
* fix typo in descriptions ([56e8b92](https://github.com/ArkHQ-io/ark-ruby/commit/56e8b9247d89c53d9e522e5785f52be79b7abdd7))
|
|
15
|
+
|
|
16
|
+
## 0.6.0 (2026-01-13)
|
|
17
|
+
|
|
18
|
+
Full Changelog: [v0.5.2...v0.6.0](https://github.com/ArkHQ-io/ark-ruby/compare/v0.5.2...v0.6.0)
|
|
19
|
+
|
|
20
|
+
### Features
|
|
21
|
+
|
|
22
|
+
* **api:** manual updates ([d2ec147](https://github.com/ArkHQ-io/ark-ruby/commit/d2ec1479545bbc9000607cd6270798cfe6da5882))
|
|
23
|
+
* **api:** manual updates ([187b4cc](https://github.com/ArkHQ-io/ark-ruby/commit/187b4cc4ab952a33a00e82282249ebf48eb02c5a))
|
|
24
|
+
|
|
3
25
|
## 0.5.2 (2026-01-13)
|
|
4
26
|
|
|
5
27
|
Full Changelog: [v0.5.1...v0.5.2](https://github.com/ArkHQ-io/ark-ruby/compare/v0.5.1...v0.5.2)
|
data/README.md
CHANGED
|
@@ -8,8 +8,8 @@ It is generated with [Stainless](https://www.stainless.com/).
|
|
|
8
8
|
|
|
9
9
|
Use the Ark MCP Server to enable AI assistants to interact with this API, allowing them to explore endpoints, make test requests, and use documentation to help integrate this SDK into your application.
|
|
10
10
|
|
|
11
|
-
[](https://cursor.com/en-US/install-mcp?name=ark-email-mcp&config=
|
|
12
|
-
[](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22ark-email-mcp%22%2C%
|
|
11
|
+
[](https://cursor.com/en-US/install-mcp?name=ark-email-mcp&config=eyJuYW1lIjoiYXJrLWVtYWlsLW1jcCIsInRyYW5zcG9ydCI6InNzZSIsInVybCI6Imh0dHBzOi8vYXJrLW1jcC5zdGxtY3AuY29tL3NzZSJ9)
|
|
12
|
+
[](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22ark-email-mcp%22%2C%22type%22%3A%22sse%22%2C%22url%22%3A%22https%3A%2F%2Fark-mcp.stlmcp.com%2Fsse%22%7D)
|
|
13
13
|
|
|
14
14
|
> Note: You may need to set environment variables in your MCP client.
|
|
15
15
|
|
|
@@ -26,7 +26,7 @@ To use this gem, install via Bundler by adding the following to your application
|
|
|
26
26
|
<!-- x-release-please-start-version -->
|
|
27
27
|
|
|
28
28
|
```ruby
|
|
29
|
-
gem "ark-email", "~> 0.
|
|
29
|
+
gem "ark-email", "~> 0.7.0"
|
|
30
30
|
```
|
|
31
31
|
|
|
32
32
|
<!-- x-release-please-end -->
|
|
@@ -46,24 +46,48 @@ module ArkEmail
|
|
|
46
46
|
# @!attribute html
|
|
47
47
|
#
|
|
48
48
|
# @return [String, nil]
|
|
49
|
-
optional :html, String
|
|
49
|
+
optional :html, String, nil?: true
|
|
50
|
+
|
|
51
|
+
# @!attribute metadata
|
|
52
|
+
# Custom key-value pairs attached to an email for webhook correlation.
|
|
53
|
+
#
|
|
54
|
+
# When you send an email with metadata, these key-value pairs are:
|
|
55
|
+
#
|
|
56
|
+
# - **Stored** with the message
|
|
57
|
+
# - **Returned** in all webhook event payloads (MessageSent, MessageBounced, etc.)
|
|
58
|
+
# - **Never visible** to email recipients
|
|
59
|
+
#
|
|
60
|
+
# This is useful for correlating webhook events with your internal systems (e.g.,
|
|
61
|
+
# user IDs, order IDs, campaign identifiers).
|
|
62
|
+
#
|
|
63
|
+
# @return [Hash{Symbol=>String}, nil]
|
|
64
|
+
optional :metadata, ArkEmail::Internal::Type::HashOf[String], nil?: true
|
|
50
65
|
|
|
51
66
|
# @!attribute tag
|
|
52
67
|
#
|
|
53
68
|
# @return [String, nil]
|
|
54
|
-
optional :tag, String
|
|
69
|
+
optional :tag, String, nil?: true
|
|
55
70
|
|
|
56
71
|
# @!attribute text
|
|
57
72
|
#
|
|
58
73
|
# @return [String, nil]
|
|
59
|
-
optional :text, String
|
|
74
|
+
optional :text, String, nil?: true
|
|
60
75
|
|
|
61
|
-
# @!method initialize(subject:, to:, html: nil, tag: nil, text: nil)
|
|
76
|
+
# @!method initialize(subject:, to:, html: nil, metadata: nil, tag: nil, text: nil)
|
|
77
|
+
# Some parameter documentations has been truncated, see
|
|
78
|
+
# {ArkEmail::Models::EmailSendBatchParams::Email} for more details.
|
|
79
|
+
#
|
|
62
80
|
# @param subject [String]
|
|
81
|
+
#
|
|
63
82
|
# @param to [Array<String>]
|
|
64
|
-
#
|
|
65
|
-
# @param
|
|
66
|
-
#
|
|
83
|
+
#
|
|
84
|
+
# @param html [String, nil]
|
|
85
|
+
#
|
|
86
|
+
# @param metadata [Hash{Symbol=>String}, nil] Custom key-value pairs attached to an email for webhook correlation.
|
|
87
|
+
#
|
|
88
|
+
# @param tag [String, nil]
|
|
89
|
+
#
|
|
90
|
+
# @param text [String, nil]
|
|
67
91
|
end
|
|
68
92
|
end
|
|
69
93
|
end
|
|
@@ -34,61 +34,78 @@ module ArkEmail
|
|
|
34
34
|
required :to, ArkEmail::Internal::Type::ArrayOf[String]
|
|
35
35
|
|
|
36
36
|
# @!attribute attachments
|
|
37
|
-
# File attachments
|
|
37
|
+
# File attachments (accepts null)
|
|
38
38
|
#
|
|
39
39
|
# @return [Array<ArkEmail::Models::EmailSendParams::Attachment>, nil]
|
|
40
|
-
optional :attachments,
|
|
40
|
+
optional :attachments,
|
|
41
|
+
-> { ArkEmail::Internal::Type::ArrayOf[ArkEmail::EmailSendParams::Attachment] },
|
|
42
|
+
nil?: true
|
|
41
43
|
|
|
42
44
|
# @!attribute bcc
|
|
43
|
-
# BCC recipients
|
|
45
|
+
# BCC recipients (accepts null)
|
|
44
46
|
#
|
|
45
47
|
# @return [Array<String>, nil]
|
|
46
|
-
optional :bcc, ArkEmail::Internal::Type::ArrayOf[String]
|
|
48
|
+
optional :bcc, ArkEmail::Internal::Type::ArrayOf[String], nil?: true
|
|
47
49
|
|
|
48
50
|
# @!attribute cc
|
|
49
|
-
# CC recipients
|
|
51
|
+
# CC recipients (accepts null)
|
|
50
52
|
#
|
|
51
53
|
# @return [Array<String>, nil]
|
|
52
|
-
optional :cc, ArkEmail::Internal::Type::ArrayOf[String]
|
|
54
|
+
optional :cc, ArkEmail::Internal::Type::ArrayOf[String], nil?: true
|
|
53
55
|
|
|
54
56
|
# @!attribute headers
|
|
55
|
-
# Custom email headers
|
|
57
|
+
# Custom email headers (accepts null)
|
|
56
58
|
#
|
|
57
59
|
# @return [Hash{Symbol=>String}, nil]
|
|
58
|
-
optional :headers, ArkEmail::Internal::Type::HashOf[String]
|
|
60
|
+
optional :headers, ArkEmail::Internal::Type::HashOf[String], nil?: true
|
|
59
61
|
|
|
60
62
|
# @!attribute html
|
|
61
|
-
# HTML body content. Maximum 5MB (5,242,880 characters). Combined
|
|
62
|
-
# attachments, the total message must not exceed 14MB.
|
|
63
|
+
# HTML body content (accepts null). Maximum 5MB (5,242,880 characters). Combined
|
|
64
|
+
# with attachments, the total message must not exceed 14MB.
|
|
63
65
|
#
|
|
64
66
|
# @return [String, nil]
|
|
65
|
-
optional :html, String
|
|
67
|
+
optional :html, String, nil?: true
|
|
68
|
+
|
|
69
|
+
# @!attribute metadata
|
|
70
|
+
# Custom key-value pairs attached to an email for webhook correlation.
|
|
71
|
+
#
|
|
72
|
+
# When you send an email with metadata, these key-value pairs are:
|
|
73
|
+
#
|
|
74
|
+
# - **Stored** with the message
|
|
75
|
+
# - **Returned** in all webhook event payloads (MessageSent, MessageBounced, etc.)
|
|
76
|
+
# - **Never visible** to email recipients
|
|
77
|
+
#
|
|
78
|
+
# This is useful for correlating webhook events with your internal systems (e.g.,
|
|
79
|
+
# user IDs, order IDs, campaign identifiers).
|
|
80
|
+
#
|
|
81
|
+
# @return [Hash{Symbol=>String}, nil]
|
|
82
|
+
optional :metadata, ArkEmail::Internal::Type::HashOf[String], nil?: true
|
|
66
83
|
|
|
67
84
|
# @!attribute reply_to
|
|
68
|
-
# Reply-to address
|
|
85
|
+
# Reply-to address (accepts null)
|
|
69
86
|
#
|
|
70
87
|
# @return [String, nil]
|
|
71
|
-
optional :reply_to, String, api_name: :replyTo
|
|
88
|
+
optional :reply_to, String, api_name: :replyTo, nil?: true
|
|
72
89
|
|
|
73
90
|
# @!attribute tag
|
|
74
|
-
# Tag for categorization and filtering
|
|
91
|
+
# Tag for categorization and filtering (accepts null)
|
|
75
92
|
#
|
|
76
93
|
# @return [String, nil]
|
|
77
|
-
optional :tag, String
|
|
94
|
+
optional :tag, String, nil?: true
|
|
78
95
|
|
|
79
96
|
# @!attribute text
|
|
80
|
-
# Plain text body (auto-generated from HTML if not provided).
|
|
81
|
-
# (5,242,880 characters).
|
|
97
|
+
# Plain text body (accepts null, auto-generated from HTML if not provided).
|
|
98
|
+
# Maximum 5MB (5,242,880 characters).
|
|
82
99
|
#
|
|
83
100
|
# @return [String, nil]
|
|
84
|
-
optional :text, String
|
|
101
|
+
optional :text, String, nil?: true
|
|
85
102
|
|
|
86
103
|
# @!attribute idempotency_key
|
|
87
104
|
#
|
|
88
105
|
# @return [String, nil]
|
|
89
106
|
optional :idempotency_key, String
|
|
90
107
|
|
|
91
|
-
# @!method initialize(from:, subject:, to:, attachments: nil, bcc: nil, cc: nil, headers: nil, html: nil, reply_to: nil, tag: nil, text: nil, idempotency_key: nil, request_options: {})
|
|
108
|
+
# @!method initialize(from:, subject:, to:, attachments: nil, bcc: nil, cc: nil, headers: nil, html: nil, metadata: nil, reply_to: nil, tag: nil, text: nil, idempotency_key: nil, request_options: {})
|
|
92
109
|
# Some parameter documentations has been truncated, see
|
|
93
110
|
# {ArkEmail::Models::EmailSendParams} for more details.
|
|
94
111
|
#
|
|
@@ -98,21 +115,23 @@ module ArkEmail
|
|
|
98
115
|
#
|
|
99
116
|
# @param to [Array<String>] Recipient email addresses (max 50)
|
|
100
117
|
#
|
|
101
|
-
# @param attachments [Array<ArkEmail::Models::EmailSendParams::Attachment
|
|
118
|
+
# @param attachments [Array<ArkEmail::Models::EmailSendParams::Attachment>, nil] File attachments (accepts null)
|
|
119
|
+
#
|
|
120
|
+
# @param bcc [Array<String>, nil] BCC recipients (accepts null)
|
|
102
121
|
#
|
|
103
|
-
# @param
|
|
122
|
+
# @param cc [Array<String>, nil] CC recipients (accepts null)
|
|
104
123
|
#
|
|
105
|
-
# @param
|
|
124
|
+
# @param headers [Hash{Symbol=>String}, nil] Custom email headers (accepts null)
|
|
106
125
|
#
|
|
107
|
-
# @param
|
|
126
|
+
# @param html [String, nil] HTML body content (accepts null).
|
|
108
127
|
#
|
|
109
|
-
# @param
|
|
128
|
+
# @param metadata [Hash{Symbol=>String}, nil] Custom key-value pairs attached to an email for webhook correlation.
|
|
110
129
|
#
|
|
111
|
-
# @param reply_to [String] Reply-to address
|
|
130
|
+
# @param reply_to [String, nil] Reply-to address (accepts null)
|
|
112
131
|
#
|
|
113
|
-
# @param tag [String] Tag for categorization and filtering
|
|
132
|
+
# @param tag [String, nil] Tag for categorization and filtering (accepts null)
|
|
114
133
|
#
|
|
115
|
-
# @param text [String] Plain text body (auto-generated from HTML if not provided).
|
|
134
|
+
# @param text [String, nil] Plain text body (accepts null, auto-generated from HTML if not provided).
|
|
116
135
|
#
|
|
117
136
|
# @param idempotency_key [String]
|
|
118
137
|
#
|
|
@@ -25,13 +25,21 @@ module ArkEmail
|
|
|
25
25
|
# @return [Array<String>]
|
|
26
26
|
required :rcpt_to, ArkEmail::Internal::Type::ArrayOf[String], api_name: :rcptTo
|
|
27
27
|
|
|
28
|
-
# @!
|
|
28
|
+
# @!attribute bounce
|
|
29
|
+
# Whether this is a bounce message (accepts null)
|
|
30
|
+
#
|
|
31
|
+
# @return [Boolean, nil]
|
|
32
|
+
optional :bounce, ArkEmail::Internal::Type::Boolean, nil?: true
|
|
33
|
+
|
|
34
|
+
# @!method initialize(data:, mail_from:, rcpt_to:, bounce: nil, request_options: {})
|
|
29
35
|
# @param data [String] Base64-encoded RFC 2822 message
|
|
30
36
|
#
|
|
31
37
|
# @param mail_from [String] Envelope sender address
|
|
32
38
|
#
|
|
33
39
|
# @param rcpt_to [Array<String>] Envelope recipient addresses
|
|
34
40
|
#
|
|
41
|
+
# @param bounce [Boolean, nil] Whether this is a bounce message (accepts null)
|
|
42
|
+
#
|
|
35
43
|
# @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}]
|
|
36
44
|
end
|
|
37
45
|
end
|
|
@@ -24,13 +24,15 @@ module ArkEmail
|
|
|
24
24
|
required :address, String
|
|
25
25
|
|
|
26
26
|
# @!attribute reason
|
|
27
|
+
# Reason for suppression (accepts null)
|
|
27
28
|
#
|
|
28
29
|
# @return [String, nil]
|
|
29
|
-
optional :reason, String
|
|
30
|
+
optional :reason, String, nil?: true
|
|
30
31
|
|
|
31
32
|
# @!method initialize(address:, reason: nil)
|
|
32
33
|
# @param address [String]
|
|
33
|
-
#
|
|
34
|
+
#
|
|
35
|
+
# @param reason [String, nil] Reason for suppression (accepts null)
|
|
34
36
|
end
|
|
35
37
|
end
|
|
36
38
|
end
|
|
@@ -14,15 +14,15 @@ module ArkEmail
|
|
|
14
14
|
required :address, String
|
|
15
15
|
|
|
16
16
|
# @!attribute reason
|
|
17
|
-
# Reason for suppression
|
|
17
|
+
# Reason for suppression (accepts null)
|
|
18
18
|
#
|
|
19
19
|
# @return [String, nil]
|
|
20
|
-
optional :reason, String
|
|
20
|
+
optional :reason, String, nil?: true
|
|
21
21
|
|
|
22
22
|
# @!method initialize(address:, reason: nil, request_options: {})
|
|
23
23
|
# @param address [String] Email address to suppress
|
|
24
24
|
#
|
|
25
|
-
# @param reason [String] Reason for suppression
|
|
25
|
+
# @param reason [String, nil] Reason for suppression (accepts null)
|
|
26
26
|
#
|
|
27
27
|
# @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}]
|
|
28
28
|
end
|
|
@@ -10,8 +10,8 @@ module ArkEmail
|
|
|
10
10
|
# @!attribute domain_id
|
|
11
11
|
# ID of the sending domain to attach this track domain to
|
|
12
12
|
#
|
|
13
|
-
# @return [
|
|
14
|
-
required :domain_id,
|
|
13
|
+
# @return [Integer]
|
|
14
|
+
required :domain_id, Integer, api_name: :domainId
|
|
15
15
|
|
|
16
16
|
# @!attribute name
|
|
17
17
|
# Subdomain name (e.g., 'track' for track.yourdomain.com)
|
|
@@ -20,33 +20,33 @@ module ArkEmail
|
|
|
20
20
|
required :name, String
|
|
21
21
|
|
|
22
22
|
# @!attribute ssl_enabled
|
|
23
|
-
# Enable SSL for tracking URLs (
|
|
23
|
+
# Enable SSL for tracking URLs (accepts null, defaults to true)
|
|
24
24
|
#
|
|
25
25
|
# @return [Boolean, nil]
|
|
26
|
-
optional :ssl_enabled, ArkEmail::Internal::Type::Boolean, api_name: :sslEnabled
|
|
26
|
+
optional :ssl_enabled, ArkEmail::Internal::Type::Boolean, api_name: :sslEnabled, nil?: true
|
|
27
27
|
|
|
28
28
|
# @!attribute track_clicks
|
|
29
|
-
# Enable click tracking
|
|
29
|
+
# Enable click tracking (accepts null, defaults to true)
|
|
30
30
|
#
|
|
31
31
|
# @return [Boolean, nil]
|
|
32
|
-
optional :track_clicks, ArkEmail::Internal::Type::Boolean, api_name: :trackClicks
|
|
32
|
+
optional :track_clicks, ArkEmail::Internal::Type::Boolean, api_name: :trackClicks, nil?: true
|
|
33
33
|
|
|
34
34
|
# @!attribute track_opens
|
|
35
|
-
# Enable open tracking (tracking pixel)
|
|
35
|
+
# Enable open tracking (tracking pixel, accepts null, defaults to true)
|
|
36
36
|
#
|
|
37
37
|
# @return [Boolean, nil]
|
|
38
|
-
optional :track_opens, ArkEmail::Internal::Type::Boolean, api_name: :trackOpens
|
|
38
|
+
optional :track_opens, ArkEmail::Internal::Type::Boolean, api_name: :trackOpens, nil?: true
|
|
39
39
|
|
|
40
40
|
# @!method initialize(domain_id:, name:, ssl_enabled: nil, track_clicks: nil, track_opens: nil, request_options: {})
|
|
41
|
-
# @param domain_id [
|
|
41
|
+
# @param domain_id [Integer] ID of the sending domain to attach this track domain to
|
|
42
42
|
#
|
|
43
43
|
# @param name [String] Subdomain name (e.g., 'track' for track.yourdomain.com)
|
|
44
44
|
#
|
|
45
|
-
# @param ssl_enabled [Boolean] Enable SSL for tracking URLs (
|
|
45
|
+
# @param ssl_enabled [Boolean, nil] Enable SSL for tracking URLs (accepts null, defaults to true)
|
|
46
46
|
#
|
|
47
|
-
# @param track_clicks [Boolean] Enable click tracking
|
|
47
|
+
# @param track_clicks [Boolean, nil] Enable click tracking (accepts null, defaults to true)
|
|
48
48
|
#
|
|
49
|
-
# @param track_opens [Boolean] Enable open tracking (tracking pixel)
|
|
49
|
+
# @param track_opens [Boolean, nil] Enable open tracking (tracking pixel, accepts null, defaults to true)
|
|
50
50
|
#
|
|
51
51
|
# @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}]
|
|
52
52
|
end
|
|
@@ -8,37 +8,37 @@ module ArkEmail
|
|
|
8
8
|
include ArkEmail::Internal::Type::RequestParameters
|
|
9
9
|
|
|
10
10
|
# @!attribute excluded_click_domains
|
|
11
|
-
# Comma-separated list of domains to exclude from click tracking
|
|
11
|
+
# Comma-separated list of domains to exclude from click tracking (accepts null)
|
|
12
12
|
#
|
|
13
13
|
# @return [String, nil]
|
|
14
|
-
optional :excluded_click_domains, String, api_name: :excludedClickDomains
|
|
14
|
+
optional :excluded_click_domains, String, api_name: :excludedClickDomains, nil?: true
|
|
15
15
|
|
|
16
16
|
# @!attribute ssl_enabled
|
|
17
|
-
# Enable or disable SSL for tracking URLs
|
|
17
|
+
# Enable or disable SSL for tracking URLs (accepts null)
|
|
18
18
|
#
|
|
19
19
|
# @return [Boolean, nil]
|
|
20
|
-
optional :ssl_enabled, ArkEmail::Internal::Type::Boolean, api_name: :sslEnabled
|
|
20
|
+
optional :ssl_enabled, ArkEmail::Internal::Type::Boolean, api_name: :sslEnabled, nil?: true
|
|
21
21
|
|
|
22
22
|
# @!attribute track_clicks
|
|
23
|
-
# Enable or disable click tracking
|
|
23
|
+
# Enable or disable click tracking (accepts null)
|
|
24
24
|
#
|
|
25
25
|
# @return [Boolean, nil]
|
|
26
|
-
optional :track_clicks, ArkEmail::Internal::Type::Boolean, api_name: :trackClicks
|
|
26
|
+
optional :track_clicks, ArkEmail::Internal::Type::Boolean, api_name: :trackClicks, nil?: true
|
|
27
27
|
|
|
28
28
|
# @!attribute track_opens
|
|
29
|
-
# Enable or disable open tracking
|
|
29
|
+
# Enable or disable open tracking (accepts null)
|
|
30
30
|
#
|
|
31
31
|
# @return [Boolean, nil]
|
|
32
|
-
optional :track_opens, ArkEmail::Internal::Type::Boolean, api_name: :trackOpens
|
|
32
|
+
optional :track_opens, ArkEmail::Internal::Type::Boolean, api_name: :trackOpens, nil?: true
|
|
33
33
|
|
|
34
34
|
# @!method initialize(excluded_click_domains: nil, ssl_enabled: nil, track_clicks: nil, track_opens: nil, request_options: {})
|
|
35
|
-
# @param excluded_click_domains [String] Comma-separated list of domains to exclude from click tracking
|
|
35
|
+
# @param excluded_click_domains [String, nil] Comma-separated list of domains to exclude from click tracking (accepts null)
|
|
36
36
|
#
|
|
37
|
-
# @param ssl_enabled [Boolean] Enable or disable SSL for tracking URLs
|
|
37
|
+
# @param ssl_enabled [Boolean, nil] Enable or disable SSL for tracking URLs (accepts null)
|
|
38
38
|
#
|
|
39
|
-
# @param track_clicks [Boolean] Enable or disable click tracking
|
|
39
|
+
# @param track_clicks [Boolean, nil] Enable or disable click tracking (accepts null)
|
|
40
40
|
#
|
|
41
|
-
# @param track_opens [Boolean] Enable or disable open tracking
|
|
41
|
+
# @param track_opens [Boolean, nil] Enable or disable open tracking (accepts null)
|
|
42
42
|
#
|
|
43
43
|
# @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}]
|
|
44
44
|
end
|
|
@@ -7,21 +7,6 @@ module ArkEmail
|
|
|
7
7
|
extend ArkEmail::Internal::Type::RequestParameters::Converter
|
|
8
8
|
include ArkEmail::Internal::Type::RequestParameters
|
|
9
9
|
|
|
10
|
-
# @!attribute events
|
|
11
|
-
# Events to subscribe to:
|
|
12
|
-
#
|
|
13
|
-
# - `MessageSent` - Email successfully delivered to recipient's server
|
|
14
|
-
# - `MessageDelayed` - Temporary delivery failure, will retry
|
|
15
|
-
# - `MessageDeliveryFailed` - Permanent delivery failure
|
|
16
|
-
# - `MessageHeld` - Email held for manual review
|
|
17
|
-
# - `MessageBounced` - Email bounced back
|
|
18
|
-
# - `MessageLinkClicked` - Recipient clicked a tracked link
|
|
19
|
-
# - `MessageLoaded` - Recipient opened the email (tracking pixel loaded)
|
|
20
|
-
# - `DomainDNSError` - DNS configuration issue detected
|
|
21
|
-
#
|
|
22
|
-
# @return [Array<Symbol, ArkEmail::Models::WebhookCreateParams::Event>]
|
|
23
|
-
required :events, -> { ArkEmail::Internal::Type::ArrayOf[enum: ArkEmail::WebhookCreateParams::Event] }
|
|
24
|
-
|
|
25
10
|
# @!attribute name
|
|
26
11
|
# Webhook name for identification
|
|
27
12
|
#
|
|
@@ -35,29 +20,47 @@ module ArkEmail
|
|
|
35
20
|
required :url, String
|
|
36
21
|
|
|
37
22
|
# @!attribute all_events
|
|
38
|
-
# Subscribe to all events (ignores events array)
|
|
23
|
+
# Subscribe to all events (ignores events array, accepts null)
|
|
39
24
|
#
|
|
40
25
|
# @return [Boolean, nil]
|
|
41
|
-
optional :all_events, ArkEmail::Internal::Type::Boolean, api_name: :allEvents
|
|
26
|
+
optional :all_events, ArkEmail::Internal::Type::Boolean, api_name: :allEvents, nil?: true
|
|
42
27
|
|
|
43
28
|
# @!attribute enabled
|
|
29
|
+
# Whether the webhook is enabled (accepts null)
|
|
44
30
|
#
|
|
45
31
|
# @return [Boolean, nil]
|
|
46
|
-
optional :enabled, ArkEmail::Internal::Type::Boolean
|
|
32
|
+
optional :enabled, ArkEmail::Internal::Type::Boolean, nil?: true
|
|
33
|
+
|
|
34
|
+
# @!attribute events
|
|
35
|
+
# Events to subscribe to (accepts null):
|
|
36
|
+
#
|
|
37
|
+
# - `MessageSent` - Email successfully delivered to recipient's server
|
|
38
|
+
# - `MessageDelayed` - Temporary delivery failure, will retry
|
|
39
|
+
# - `MessageDeliveryFailed` - Permanent delivery failure
|
|
40
|
+
# - `MessageHeld` - Email held for manual review
|
|
41
|
+
# - `MessageBounced` - Email bounced back
|
|
42
|
+
# - `MessageLinkClicked` - Recipient clicked a tracked link
|
|
43
|
+
# - `MessageLoaded` - Recipient opened the email (tracking pixel loaded)
|
|
44
|
+
# - `DomainDNSError` - DNS configuration issue detected
|
|
45
|
+
#
|
|
46
|
+
# @return [Array<Symbol, ArkEmail::Models::WebhookCreateParams::Event>, nil]
|
|
47
|
+
optional :events,
|
|
48
|
+
-> { ArkEmail::Internal::Type::ArrayOf[enum: ArkEmail::WebhookCreateParams::Event] },
|
|
49
|
+
nil?: true
|
|
47
50
|
|
|
48
|
-
# @!method initialize(
|
|
51
|
+
# @!method initialize(name:, url:, all_events: nil, enabled: nil, events: nil, request_options: {})
|
|
49
52
|
# Some parameter documentations has been truncated, see
|
|
50
53
|
# {ArkEmail::Models::WebhookCreateParams} for more details.
|
|
51
54
|
#
|
|
52
|
-
# @param events [Array<Symbol, ArkEmail::Models::WebhookCreateParams::Event>] Events to subscribe to:
|
|
53
|
-
#
|
|
54
55
|
# @param name [String] Webhook name for identification
|
|
55
56
|
#
|
|
56
57
|
# @param url [String] HTTPS endpoint URL
|
|
57
58
|
#
|
|
58
|
-
# @param all_events [Boolean] Subscribe to all events (ignores events array)
|
|
59
|
+
# @param all_events [Boolean, nil] Subscribe to all events (ignores events array, accepts null)
|
|
60
|
+
#
|
|
61
|
+
# @param enabled [Boolean, nil] Whether the webhook is enabled (accepts null)
|
|
59
62
|
#
|
|
60
|
-
# @param
|
|
63
|
+
# @param events [Array<Symbol, ArkEmail::Models::WebhookCreateParams::Event>, nil] Events to subscribe to (accepts null):
|
|
61
64
|
#
|
|
62
65
|
# @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}]
|
|
63
66
|
|
|
@@ -10,34 +10,34 @@ module ArkEmail
|
|
|
10
10
|
# @!attribute all_events
|
|
11
11
|
#
|
|
12
12
|
# @return [Boolean, nil]
|
|
13
|
-
optional :all_events, ArkEmail::Internal::Type::Boolean, api_name: :allEvents
|
|
13
|
+
optional :all_events, ArkEmail::Internal::Type::Boolean, api_name: :allEvents, nil?: true
|
|
14
14
|
|
|
15
15
|
# @!attribute enabled
|
|
16
16
|
#
|
|
17
17
|
# @return [Boolean, nil]
|
|
18
|
-
optional :enabled, ArkEmail::Internal::Type::Boolean
|
|
18
|
+
optional :enabled, ArkEmail::Internal::Type::Boolean, nil?: true
|
|
19
19
|
|
|
20
20
|
# @!attribute events
|
|
21
21
|
#
|
|
22
22
|
# @return [Array<String>, nil]
|
|
23
|
-
optional :events, ArkEmail::Internal::Type::ArrayOf[String]
|
|
23
|
+
optional :events, ArkEmail::Internal::Type::ArrayOf[String], nil?: true
|
|
24
24
|
|
|
25
25
|
# @!attribute name
|
|
26
26
|
#
|
|
27
27
|
# @return [String, nil]
|
|
28
|
-
optional :name, String
|
|
28
|
+
optional :name, String, nil?: true
|
|
29
29
|
|
|
30
30
|
# @!attribute url
|
|
31
31
|
#
|
|
32
32
|
# @return [String, nil]
|
|
33
|
-
optional :url, String
|
|
33
|
+
optional :url, String, nil?: true
|
|
34
34
|
|
|
35
35
|
# @!method initialize(all_events: nil, enabled: nil, events: nil, name: nil, url: nil, request_options: {})
|
|
36
|
-
# @param all_events [Boolean]
|
|
37
|
-
# @param enabled [Boolean]
|
|
38
|
-
# @param events [Array<String
|
|
39
|
-
# @param name [String]
|
|
40
|
-
# @param url [String]
|
|
36
|
+
# @param all_events [Boolean, nil]
|
|
37
|
+
# @param enabled [Boolean, nil]
|
|
38
|
+
# @param events [Array<String>, nil]
|
|
39
|
+
# @param name [String, nil]
|
|
40
|
+
# @param url [String, nil]
|
|
41
41
|
# @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}]
|
|
42
42
|
end
|
|
43
43
|
end
|
|
@@ -142,7 +142,7 @@ module ArkEmail
|
|
|
142
142
|
# - `GET /emails/{id}/deliveries` - View delivery attempts
|
|
143
143
|
# - `POST /emails/{id}/retry` - Retry failed delivery
|
|
144
144
|
#
|
|
145
|
-
# @overload send_(from:, subject:, to:, attachments: nil, bcc: nil, cc: nil, headers: nil, html: nil, reply_to: nil, tag: nil, text: nil, idempotency_key: nil, request_options: {})
|
|
145
|
+
# @overload send_(from:, subject:, to:, attachments: nil, bcc: nil, cc: nil, headers: nil, html: nil, metadata: nil, reply_to: nil, tag: nil, text: nil, idempotency_key: nil, request_options: {})
|
|
146
146
|
#
|
|
147
147
|
# @param from [String] Body param: Sender email address. Must be from a verified domain.
|
|
148
148
|
#
|
|
@@ -150,21 +150,23 @@ module ArkEmail
|
|
|
150
150
|
#
|
|
151
151
|
# @param to [Array<String>] Body param: Recipient email addresses (max 50)
|
|
152
152
|
#
|
|
153
|
-
# @param attachments [Array<ArkEmail::Models::EmailSendParams::Attachment
|
|
153
|
+
# @param attachments [Array<ArkEmail::Models::EmailSendParams::Attachment>, nil] Body param: File attachments (accepts null)
|
|
154
154
|
#
|
|
155
|
-
# @param bcc [Array<String
|
|
155
|
+
# @param bcc [Array<String>, nil] Body param: BCC recipients (accepts null)
|
|
156
156
|
#
|
|
157
|
-
# @param cc [Array<String
|
|
157
|
+
# @param cc [Array<String>, nil] Body param: CC recipients (accepts null)
|
|
158
158
|
#
|
|
159
|
-
# @param headers [Hash{Symbol=>String}] Body param: Custom email headers
|
|
159
|
+
# @param headers [Hash{Symbol=>String}, nil] Body param: Custom email headers (accepts null)
|
|
160
160
|
#
|
|
161
|
-
# @param html [String] Body param: HTML body content.
|
|
161
|
+
# @param html [String, nil] Body param: HTML body content (accepts null).
|
|
162
162
|
#
|
|
163
|
-
# @param
|
|
163
|
+
# @param metadata [Hash{Symbol=>String}, nil] Body param: Custom key-value pairs attached to an email for webhook correlation.
|
|
164
164
|
#
|
|
165
|
-
# @param
|
|
165
|
+
# @param reply_to [String, nil] Body param: Reply-to address (accepts null)
|
|
166
166
|
#
|
|
167
|
-
# @param
|
|
167
|
+
# @param tag [String, nil] Body param: Tag for categorization and filtering (accepts null)
|
|
168
|
+
#
|
|
169
|
+
# @param text [String, nil] Body param: Plain text body (accepts null, auto-generated from HTML if not provi
|
|
168
170
|
#
|
|
169
171
|
# @param idempotency_key [String] Header param: Unique key for idempotent requests. If a request with this key was
|
|
170
172
|
#
|
|
@@ -199,7 +201,7 @@ module ArkEmail
|
|
|
199
201
|
#
|
|
200
202
|
# @overload send_batch(emails:, from:, idempotency_key: nil, request_options: {})
|
|
201
203
|
#
|
|
202
|
-
# @param emails [Array<ArkEmail::Models::EmailSendBatchParams::Email>] Body param
|
|
204
|
+
# @param emails [Array<ArkEmail::Models::EmailSendBatchParams::Email>] Body param
|
|
203
205
|
#
|
|
204
206
|
# @param from [String] Body param: Sender email for all messages
|
|
205
207
|
#
|
|
@@ -228,7 +230,7 @@ module ArkEmail
|
|
|
228
230
|
#
|
|
229
231
|
# The `data` field should contain the base64-encoded raw email.
|
|
230
232
|
#
|
|
231
|
-
# @overload send_raw(data:, mail_from:, rcpt_to:, request_options: {})
|
|
233
|
+
# @overload send_raw(data:, mail_from:, rcpt_to:, bounce: nil, request_options: {})
|
|
232
234
|
#
|
|
233
235
|
# @param data [String] Base64-encoded RFC 2822 message
|
|
234
236
|
#
|
|
@@ -236,6 +238,8 @@ module ArkEmail
|
|
|
236
238
|
#
|
|
237
239
|
# @param rcpt_to [Array<String>] Envelope recipient addresses
|
|
238
240
|
#
|
|
241
|
+
# @param bounce [Boolean, nil] Whether this is a bounce message (accepts null)
|
|
242
|
+
#
|
|
239
243
|
# @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
240
244
|
#
|
|
241
245
|
# @return [ArkEmail::Models::EmailSendRawResponse]
|
|
@@ -10,7 +10,7 @@ module ArkEmail
|
|
|
10
10
|
#
|
|
11
11
|
# @param address [String] Email address to suppress
|
|
12
12
|
#
|
|
13
|
-
# @param reason [String] Reason for suppression
|
|
13
|
+
# @param reason [String, nil] Reason for suppression (accepts null)
|
|
14
14
|
#
|
|
15
15
|
# @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
16
16
|
#
|