ark-email 0.14.0 → 0.15.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 +15 -0
- data/README.md +3 -3
- data/lib/ark_email/client.rb +4 -0
- data/lib/ark_email/models/dns_record.rb +49 -19
- data/lib/ark_email/models/domain_create_response.rb +117 -25
- data/lib/ark_email/models/domain_list_response.rb +12 -13
- data/lib/ark_email/models/domain_retrieve_response.rb +117 -25
- data/lib/ark_email/models/domain_verify_response.rb +117 -25
- data/lib/ark_email/models/track_domain.rb +6 -2
- data/lib/ark_email/models/usage_retrieve_params.rb +14 -0
- data/lib/ark_email/models/usage_retrieve_response.rb +270 -0
- data/lib/ark_email/models/webhook_create_params.rb +0 -2
- data/lib/ark_email/models/webhook_create_response.rb +0 -2
- data/lib/ark_email/models/webhook_list_deliveries_params.rb +0 -2
- data/lib/ark_email/models/webhook_list_deliveries_response.rb +0 -2
- data/lib/ark_email/models/webhook_retrieve_delivery_response.rb +0 -2
- data/lib/ark_email/models/webhook_retrieve_response.rb +0 -2
- data/lib/ark_email/models/webhook_test_params.rb +0 -2
- data/lib/ark_email/models/webhook_update_response.rb +0 -2
- data/lib/ark_email/models.rb +2 -0
- data/lib/ark_email/resources/usage.rb +51 -0
- data/lib/ark_email/version.rb +1 -1
- data/lib/ark_email.rb +3 -0
- data/rbi/ark_email/client.rbi +3 -0
- data/rbi/ark_email/models/dns_record.rbi +57 -22
- data/rbi/ark_email/models/domain_create_response.rbi +189 -28
- data/rbi/ark_email/models/domain_list_response.rbi +13 -19
- data/rbi/ark_email/models/domain_retrieve_response.rbi +191 -28
- data/rbi/ark_email/models/domain_verify_response.rbi +189 -28
- data/rbi/ark_email/models/track_domain.rbi +4 -2
- data/rbi/ark_email/models/usage_retrieve_params.rbi +27 -0
- data/rbi/ark_email/models/usage_retrieve_response.rbi +511 -0
- data/rbi/ark_email/models/webhook_create_params.rbi +0 -10
- data/rbi/ark_email/models/webhook_create_response.rbi +0 -10
- data/rbi/ark_email/models/webhook_list_deliveries_params.rbi +0 -10
- data/rbi/ark_email/models/webhook_list_deliveries_response.rbi +0 -10
- data/rbi/ark_email/models/webhook_retrieve_delivery_response.rbi +0 -10
- data/rbi/ark_email/models/webhook_retrieve_response.rbi +0 -10
- data/rbi/ark_email/models/webhook_test_params.rbi +0 -10
- data/rbi/ark_email/models/webhook_update_response.rbi +0 -10
- data/rbi/ark_email/models.rbi +2 -0
- data/rbi/ark_email/resources/usage.rbi +40 -0
- data/sig/ark_email/client.rbs +2 -0
- data/sig/ark_email/models/dns_record.rbs +5 -0
- data/sig/ark_email/models/domain_create_response.rbs +27 -20
- data/sig/ark_email/models/domain_list_response.rbs +4 -16
- data/sig/ark_email/models/domain_retrieve_response.rbs +27 -20
- data/sig/ark_email/models/domain_verify_response.rbs +27 -20
- data/sig/ark_email/models/usage_retrieve_params.rbs +15 -0
- data/sig/ark_email/models/usage_retrieve_response.rbs +212 -0
- data/sig/ark_email/models/webhook_create_params.rbs +0 -4
- data/sig/ark_email/models/webhook_create_response.rbs +0 -4
- data/sig/ark_email/models/webhook_list_deliveries_params.rbs +0 -4
- data/sig/ark_email/models/webhook_list_deliveries_response.rbs +0 -4
- data/sig/ark_email/models/webhook_retrieve_delivery_response.rbs +0 -4
- data/sig/ark_email/models/webhook_retrieve_response.rbs +0 -4
- data/sig/ark_email/models/webhook_test_params.rbs +0 -4
- data/sig/ark_email/models/webhook_update_response.rbs +0 -4
- data/sig/ark_email/models.rbs +2 -0
- data/sig/ark_email/resources/usage.rbs +11 -0
- metadata +11 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2ab2c267c0272df886fd6e21d8c157bf1534777bdf72da459141654a96e31866
|
|
4
|
+
data.tar.gz: 84150c3d0ec9b98e472fd7e76f584dd380122359adab410691ab95efb9beb887
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0400a57909216e295f59867461f74717a4815f8e2b3db006d5afe0625e6683c74281069c2db3e3888ce5c7acaccc9f6472a7c7f9952cc1fb3024eb1acf8bb226
|
|
7
|
+
data.tar.gz: 00aaabff41043bc684fcb450aff04f3367927068d6500fd8e3ff67d62b34bcfbd48cfa3f6b071ea1da24c0094d8198feadb06942e721eef441000769b0f209fb
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.15.0 (2026-01-29)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.14.0...v0.15.0](https://github.com/ArkHQ-io/ark-ruby/compare/v0.14.0...v0.15.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** add usage and SendLimit Headers ([82a3ef2](https://github.com/ArkHQ-io/ark-ruby/commit/82a3ef2e4e91a97d9194304c82c1fe3daa9c6d7b))
|
|
10
|
+
* **api:** api update ([5e6a325](https://github.com/ArkHQ-io/ark-ruby/commit/5e6a325e656a4708985e0f9b02adec7947ceff3d))
|
|
11
|
+
* **api:** domain list improvement ([c5dd0aa](https://github.com/ArkHQ-io/ark-ruby/commit/c5dd0aae60d7bd626b13c34dab6a502832fe50d7))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
* **docs:** fix mcp installation instructions for remote servers ([c5e6779](https://github.com/ArkHQ-io/ark-ruby/commit/c5e677982f2b09306b5cff24e6bb1c563a121f3b))
|
|
17
|
+
|
|
3
18
|
## 0.14.0 (2026-01-25)
|
|
4
19
|
|
|
5
20
|
Full Changelog: [v0.13.0...v0.14.0](https://github.com/ArkHQ-io/ark-ruby/compare/v0.13.0...v0.14.0)
|
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%22type%22%3A%
|
|
11
|
+
[](https://cursor.com/en-US/install-mcp?name=ark-email-mcp&config=eyJuYW1lIjoiYXJrLWVtYWlsLW1jcCIsInRyYW5zcG9ydCI6Imh0dHAiLCJ1cmwiOiJodHRwczovL2Fyay1tY3Auc3RsbWNwLmNvbSIsImhlYWRlcnMiOnsieC1hcmstYXBpLWtleSI6Ik15IEFQSSBLZXkifX0)
|
|
12
|
+
[](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22ark-email-mcp%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fark-mcp.stlmcp.com%22%2C%22headers%22%3A%7B%22x-ark-api-key%22%3A%22My%20API%20Key%22%7D%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.15.0"
|
|
30
30
|
```
|
|
31
31
|
|
|
32
32
|
<!-- x-release-please-end -->
|
data/lib/ark_email/client.rb
CHANGED
|
@@ -42,6 +42,9 @@ module ArkEmail
|
|
|
42
42
|
# @return [ArkEmail::Resources::Logs]
|
|
43
43
|
attr_reader :logs
|
|
44
44
|
|
|
45
|
+
# @return [ArkEmail::Resources::Usage]
|
|
46
|
+
attr_reader :usage
|
|
47
|
+
|
|
45
48
|
# @api private
|
|
46
49
|
#
|
|
47
50
|
# @return [Hash{String=>String}]
|
|
@@ -101,6 +104,7 @@ module ArkEmail
|
|
|
101
104
|
@webhooks = ArkEmail::Resources::Webhooks.new(client: self)
|
|
102
105
|
@tracking = ArkEmail::Resources::Tracking.new(client: self)
|
|
103
106
|
@logs = ArkEmail::Resources::Logs.new(client: self)
|
|
107
|
+
@usage = ArkEmail::Resources::Usage.new(client: self)
|
|
104
108
|
end
|
|
105
109
|
end
|
|
106
110
|
end
|
|
@@ -3,48 +3,78 @@
|
|
|
3
3
|
module ArkEmail
|
|
4
4
|
module Models
|
|
5
5
|
class DNSRecord < ArkEmail::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute full_name
|
|
7
|
+
# The complete fully-qualified domain name (FQDN). Use this as a reference to
|
|
8
|
+
# verify the record is configured correctly.
|
|
9
|
+
#
|
|
10
|
+
# @return [String]
|
|
11
|
+
required :full_name, String, api_name: :fullName
|
|
12
|
+
|
|
6
13
|
# @!attribute name
|
|
7
|
-
# DNS
|
|
14
|
+
# The relative hostname to enter in your DNS provider. Most DNS providers
|
|
15
|
+
# auto-append the zone name, so you only need to enter this relative part.
|
|
16
|
+
#
|
|
17
|
+
# - `"@"` means the apex/root of the zone (for root domains)
|
|
18
|
+
# - `"mail"` for a subdomain like `mail.example.com`
|
|
19
|
+
# - `"ark-xyz._domainkey.mail"` for DKIM on a subdomain
|
|
8
20
|
#
|
|
9
21
|
# @return [String]
|
|
10
22
|
required :name, String
|
|
11
23
|
|
|
12
24
|
# @!attribute type
|
|
13
|
-
# DNS record type
|
|
25
|
+
# The DNS record type to create
|
|
14
26
|
#
|
|
15
27
|
# @return [Symbol, ArkEmail::Models::DNSRecord::Type]
|
|
16
28
|
required :type, enum: -> { ArkEmail::DNSRecord::Type }
|
|
17
29
|
|
|
18
30
|
# @!attribute value
|
|
19
|
-
# DNS record
|
|
31
|
+
# The value to set for the DNS record
|
|
20
32
|
#
|
|
21
33
|
# @return [String]
|
|
22
34
|
required :value, String
|
|
23
35
|
|
|
24
36
|
# @!attribute status
|
|
25
|
-
#
|
|
37
|
+
# Current verification status of this DNS record:
|
|
26
38
|
#
|
|
27
|
-
# - `OK` - Record is correctly configured
|
|
28
|
-
# - `Missing` - Record not found in DNS
|
|
29
|
-
# - `Invalid` - Record exists but has
|
|
30
|
-
# - `null` -
|
|
39
|
+
# - `OK` - Record is correctly configured and verified
|
|
40
|
+
# - `Missing` - Record was not found in your DNS
|
|
41
|
+
# - `Invalid` - Record exists but has an incorrect value
|
|
42
|
+
# - `null` - Record has not been checked yet
|
|
31
43
|
#
|
|
32
44
|
# @return [Symbol, ArkEmail::Models::DNSRecord::Status, nil]
|
|
33
45
|
optional :status, enum: -> { ArkEmail::DNSRecord::Status }, nil?: true
|
|
34
46
|
|
|
35
|
-
# @!method initialize(name:, type:, value:, status: nil)
|
|
47
|
+
# @!method initialize(full_name:, name:, type:, value:, status: nil)
|
|
36
48
|
# Some parameter documentations has been truncated, see
|
|
37
49
|
# {ArkEmail::Models::DNSRecord} for more details.
|
|
38
50
|
#
|
|
39
|
-
#
|
|
51
|
+
# A DNS record that needs to be configured in your domain's DNS settings.
|
|
52
|
+
#
|
|
53
|
+
# The `name` field contains the relative hostname to enter in your DNS provider
|
|
54
|
+
# (which auto-appends the zone). The `fullName` field contains the complete
|
|
55
|
+
# fully-qualified domain name (FQDN) for reference.
|
|
56
|
+
#
|
|
57
|
+
# **Example for subdomain `mail.example.com`:**
|
|
58
|
+
#
|
|
59
|
+
# - `name`: `"mail"` (what you enter in DNS provider)
|
|
60
|
+
# - `fullName`: `"mail.example.com"` (the complete hostname)
|
|
61
|
+
#
|
|
62
|
+
# **Example for root domain `example.com`:**
|
|
63
|
+
#
|
|
64
|
+
# - `name`: `"@"` (DNS shorthand for apex/root)
|
|
65
|
+
# - `fullName`: `"example.com"`
|
|
66
|
+
#
|
|
67
|
+
# @param full_name [String] The complete fully-qualified domain name (FQDN).
|
|
68
|
+
#
|
|
69
|
+
# @param name [String] The relative hostname to enter in your DNS provider.
|
|
40
70
|
#
|
|
41
|
-
# @param type [Symbol, ArkEmail::Models::DNSRecord::Type] DNS record type
|
|
71
|
+
# @param type [Symbol, ArkEmail::Models::DNSRecord::Type] The DNS record type to create
|
|
42
72
|
#
|
|
43
|
-
# @param value [String] DNS record
|
|
73
|
+
# @param value [String] The value to set for the DNS record
|
|
44
74
|
#
|
|
45
|
-
# @param status [Symbol, ArkEmail::Models::DNSRecord::Status, nil]
|
|
75
|
+
# @param status [Symbol, ArkEmail::Models::DNSRecord::Status, nil] Current verification status of this DNS record:
|
|
46
76
|
|
|
47
|
-
# DNS record type
|
|
77
|
+
# The DNS record type to create
|
|
48
78
|
#
|
|
49
79
|
# @see ArkEmail::Models::DNSRecord#type
|
|
50
80
|
module Type
|
|
@@ -58,12 +88,12 @@ module ArkEmail
|
|
|
58
88
|
# @return [Array<Symbol>]
|
|
59
89
|
end
|
|
60
90
|
|
|
61
|
-
#
|
|
91
|
+
# Current verification status of this DNS record:
|
|
62
92
|
#
|
|
63
|
-
# - `OK` - Record is correctly configured
|
|
64
|
-
# - `Missing` - Record not found in DNS
|
|
65
|
-
# - `Invalid` - Record exists but has
|
|
66
|
-
# - `null` -
|
|
93
|
+
# - `OK` - Record is correctly configured and verified
|
|
94
|
+
# - `Missing` - Record was not found in your DNS
|
|
95
|
+
# - `Invalid` - Record exists but has an incorrect value
|
|
96
|
+
# - `null` - Record has not been checked yet
|
|
67
97
|
#
|
|
68
98
|
# @see ArkEmail::Models::DNSRecord#status
|
|
69
99
|
module Status
|
|
@@ -27,82 +27,174 @@ module ArkEmail
|
|
|
27
27
|
# @see ArkEmail::Models::DomainCreateResponse#data
|
|
28
28
|
class Data < ArkEmail::Internal::Type::BaseModel
|
|
29
29
|
# @!attribute id
|
|
30
|
-
#
|
|
30
|
+
# Unique domain identifier
|
|
31
31
|
#
|
|
32
|
-
# @return [
|
|
33
|
-
required :id,
|
|
32
|
+
# @return [Integer]
|
|
33
|
+
required :id, Integer
|
|
34
34
|
|
|
35
35
|
# @!attribute created_at
|
|
36
|
+
# Timestamp when the domain was added
|
|
36
37
|
#
|
|
37
38
|
# @return [Time]
|
|
38
39
|
required :created_at, Time, api_name: :createdAt
|
|
39
40
|
|
|
40
41
|
# @!attribute dns_records
|
|
42
|
+
# DNS records that must be added to your domain's DNS settings. Null if records
|
|
43
|
+
# are not yet generated.
|
|
44
|
+
#
|
|
45
|
+
# **Important:** The `name` field contains the relative hostname that you should
|
|
46
|
+
# enter in your DNS provider. Most DNS providers auto-append the zone name, so you
|
|
47
|
+
# only need to enter the relative part.
|
|
48
|
+
#
|
|
49
|
+
# For subdomains like `mail.example.com`, the zone is `example.com`, so:
|
|
50
|
+
#
|
|
51
|
+
# - SPF `name` would be `mail` (not `@`)
|
|
52
|
+
# - DKIM `name` would be `ark-xyz._domainkey.mail`
|
|
53
|
+
# - Return Path `name` would be `psrp.mail`
|
|
41
54
|
#
|
|
42
|
-
# @return [ArkEmail::Models::DomainCreateResponse::Data::DNSRecords]
|
|
55
|
+
# @return [ArkEmail::Models::DomainCreateResponse::Data::DNSRecords, nil]
|
|
43
56
|
required :dns_records,
|
|
44
57
|
-> { ArkEmail::Models::DomainCreateResponse::Data::DNSRecords },
|
|
45
|
-
api_name: :dnsRecords
|
|
58
|
+
api_name: :dnsRecords,
|
|
59
|
+
nil?: true
|
|
46
60
|
|
|
47
61
|
# @!attribute name
|
|
48
|
-
#
|
|
62
|
+
# The domain name used for sending emails
|
|
49
63
|
#
|
|
50
64
|
# @return [String]
|
|
51
65
|
required :name, String
|
|
52
66
|
|
|
53
67
|
# @!attribute uuid
|
|
68
|
+
# UUID of the domain
|
|
54
69
|
#
|
|
55
70
|
# @return [String]
|
|
56
71
|
required :uuid, String
|
|
57
72
|
|
|
58
73
|
# @!attribute verified
|
|
59
|
-
# Whether DNS
|
|
74
|
+
# Whether all DNS records (SPF, DKIM, Return Path) are correctly configured.
|
|
75
|
+
# Domain must be verified before sending emails.
|
|
60
76
|
#
|
|
61
77
|
# @return [Boolean]
|
|
62
78
|
required :verified, ArkEmail::Internal::Type::Boolean
|
|
63
79
|
|
|
64
80
|
# @!attribute verified_at
|
|
65
|
-
#
|
|
81
|
+
# Timestamp when the domain ownership was verified, or null if not yet verified
|
|
66
82
|
#
|
|
67
83
|
# @return [Time, nil]
|
|
68
84
|
optional :verified_at, Time, api_name: :verifiedAt, nil?: true
|
|
69
85
|
|
|
70
86
|
# @!method initialize(id:, created_at:, dns_records:, name:, uuid:, verified:, verified_at: nil)
|
|
71
|
-
#
|
|
87
|
+
# Some parameter documentations has been truncated, see
|
|
88
|
+
# {ArkEmail::Models::DomainCreateResponse::Data} for more details.
|
|
72
89
|
#
|
|
73
|
-
# @param
|
|
90
|
+
# @param id [Integer] Unique domain identifier
|
|
74
91
|
#
|
|
75
|
-
# @param
|
|
92
|
+
# @param created_at [Time] Timestamp when the domain was added
|
|
76
93
|
#
|
|
77
|
-
# @param
|
|
94
|
+
# @param dns_records [ArkEmail::Models::DomainCreateResponse::Data::DNSRecords, nil] DNS records that must be added to your domain's DNS settings. Null if records ar
|
|
78
95
|
#
|
|
79
|
-
# @param
|
|
96
|
+
# @param name [String] The domain name used for sending emails
|
|
80
97
|
#
|
|
81
|
-
# @param
|
|
98
|
+
# @param uuid [String] UUID of the domain
|
|
82
99
|
#
|
|
83
|
-
# @param
|
|
100
|
+
# @param verified [Boolean] Whether all DNS records (SPF, DKIM, Return Path) are correctly configured. Domai
|
|
101
|
+
#
|
|
102
|
+
# @param verified_at [Time, nil] Timestamp when the domain ownership was verified, or null if not yet verified
|
|
84
103
|
|
|
85
104
|
# @see ArkEmail::Models::DomainCreateResponse::Data#dns_records
|
|
86
105
|
class DNSRecords < ArkEmail::Internal::Type::BaseModel
|
|
87
106
|
# @!attribute dkim
|
|
107
|
+
# A DNS record that needs to be configured in your domain's DNS settings.
|
|
108
|
+
#
|
|
109
|
+
# The `name` field contains the relative hostname to enter in your DNS provider
|
|
110
|
+
# (which auto-appends the zone). The `fullName` field contains the complete
|
|
111
|
+
# fully-qualified domain name (FQDN) for reference.
|
|
112
|
+
#
|
|
113
|
+
# **Example for subdomain `mail.example.com`:**
|
|
114
|
+
#
|
|
115
|
+
# - `name`: `"mail"` (what you enter in DNS provider)
|
|
116
|
+
# - `fullName`: `"mail.example.com"` (the complete hostname)
|
|
88
117
|
#
|
|
89
|
-
#
|
|
90
|
-
|
|
118
|
+
# **Example for root domain `example.com`:**
|
|
119
|
+
#
|
|
120
|
+
# - `name`: `"@"` (DNS shorthand for apex/root)
|
|
121
|
+
# - `fullName`: `"example.com"`
|
|
122
|
+
#
|
|
123
|
+
# @return [ArkEmail::Models::DNSRecord, nil]
|
|
124
|
+
optional :dkim, -> { ArkEmail::DNSRecord }, nil?: true
|
|
91
125
|
|
|
92
126
|
# @!attribute return_path
|
|
127
|
+
# A DNS record that needs to be configured in your domain's DNS settings.
|
|
128
|
+
#
|
|
129
|
+
# The `name` field contains the relative hostname to enter in your DNS provider
|
|
130
|
+
# (which auto-appends the zone). The `fullName` field contains the complete
|
|
131
|
+
# fully-qualified domain name (FQDN) for reference.
|
|
132
|
+
#
|
|
133
|
+
# **Example for subdomain `mail.example.com`:**
|
|
134
|
+
#
|
|
135
|
+
# - `name`: `"mail"` (what you enter in DNS provider)
|
|
136
|
+
# - `fullName`: `"mail.example.com"` (the complete hostname)
|
|
137
|
+
#
|
|
138
|
+
# **Example for root domain `example.com`:**
|
|
139
|
+
#
|
|
140
|
+
# - `name`: `"@"` (DNS shorthand for apex/root)
|
|
141
|
+
# - `fullName`: `"example.com"`
|
|
93
142
|
#
|
|
94
|
-
# @return [ArkEmail::Models::DNSRecord]
|
|
95
|
-
|
|
143
|
+
# @return [ArkEmail::Models::DNSRecord, nil]
|
|
144
|
+
optional :return_path, -> { ArkEmail::DNSRecord }, api_name: :returnPath, nil?: true
|
|
96
145
|
|
|
97
146
|
# @!attribute spf
|
|
147
|
+
# A DNS record that needs to be configured in your domain's DNS settings.
|
|
98
148
|
#
|
|
99
|
-
#
|
|
100
|
-
|
|
149
|
+
# The `name` field contains the relative hostname to enter in your DNS provider
|
|
150
|
+
# (which auto-appends the zone). The `fullName` field contains the complete
|
|
151
|
+
# fully-qualified domain name (FQDN) for reference.
|
|
152
|
+
#
|
|
153
|
+
# **Example for subdomain `mail.example.com`:**
|
|
154
|
+
#
|
|
155
|
+
# - `name`: `"mail"` (what you enter in DNS provider)
|
|
156
|
+
# - `fullName`: `"mail.example.com"` (the complete hostname)
|
|
157
|
+
#
|
|
158
|
+
# **Example for root domain `example.com`:**
|
|
159
|
+
#
|
|
160
|
+
# - `name`: `"@"` (DNS shorthand for apex/root)
|
|
161
|
+
# - `fullName`: `"example.com"`
|
|
162
|
+
#
|
|
163
|
+
# @return [ArkEmail::Models::DNSRecord, nil]
|
|
164
|
+
optional :spf, -> { ArkEmail::DNSRecord }, nil?: true
|
|
165
|
+
|
|
166
|
+
# @!attribute zone
|
|
167
|
+
# The DNS zone (registrable domain) where records should be added. This is the
|
|
168
|
+
# root domain that your DNS provider manages. For `mail.example.com`, the zone is
|
|
169
|
+
# `example.com`. For `example.co.uk`, the zone is `example.co.uk`.
|
|
170
|
+
#
|
|
171
|
+
# @return [String, nil]
|
|
172
|
+
optional :zone, String
|
|
101
173
|
|
|
102
|
-
# @!method initialize(dkim
|
|
103
|
-
#
|
|
104
|
-
#
|
|
105
|
-
#
|
|
174
|
+
# @!method initialize(dkim: nil, return_path: nil, spf: nil, zone: nil)
|
|
175
|
+
# Some parameter documentations has been truncated, see
|
|
176
|
+
# {ArkEmail::Models::DomainCreateResponse::Data::DNSRecords} for more details.
|
|
177
|
+
#
|
|
178
|
+
# DNS records that must be added to your domain's DNS settings. Null if records
|
|
179
|
+
# are not yet generated.
|
|
180
|
+
#
|
|
181
|
+
# **Important:** The `name` field contains the relative hostname that you should
|
|
182
|
+
# enter in your DNS provider. Most DNS providers auto-append the zone name, so you
|
|
183
|
+
# only need to enter the relative part.
|
|
184
|
+
#
|
|
185
|
+
# For subdomains like `mail.example.com`, the zone is `example.com`, so:
|
|
186
|
+
#
|
|
187
|
+
# - SPF `name` would be `mail` (not `@`)
|
|
188
|
+
# - DKIM `name` would be `ark-xyz._domainkey.mail`
|
|
189
|
+
# - Return Path `name` would be `psrp.mail`
|
|
190
|
+
#
|
|
191
|
+
# @param dkim [ArkEmail::Models::DNSRecord, nil] A DNS record that needs to be configured in your domain's DNS settings.
|
|
192
|
+
#
|
|
193
|
+
# @param return_path [ArkEmail::Models::DNSRecord, nil] A DNS record that needs to be configured in your domain's DNS settings.
|
|
194
|
+
#
|
|
195
|
+
# @param spf [ArkEmail::Models::DNSRecord, nil] A DNS record that needs to be configured in your domain's DNS settings.
|
|
196
|
+
#
|
|
197
|
+
# @param zone [String] The DNS zone (registrable domain) where records should be added.
|
|
106
198
|
end
|
|
107
199
|
end
|
|
108
200
|
end
|
|
@@ -37,34 +37,33 @@ module ArkEmail
|
|
|
37
37
|
|
|
38
38
|
class Domain < ArkEmail::Internal::Type::BaseModel
|
|
39
39
|
# @!attribute id
|
|
40
|
-
#
|
|
40
|
+
# Unique domain identifier
|
|
41
41
|
#
|
|
42
|
-
# @return [
|
|
43
|
-
required :id,
|
|
44
|
-
|
|
45
|
-
# @!attribute dns_ok
|
|
46
|
-
#
|
|
47
|
-
# @return [Boolean]
|
|
48
|
-
required :dns_ok, ArkEmail::Internal::Type::Boolean, api_name: :dnsOk
|
|
42
|
+
# @return [Integer]
|
|
43
|
+
required :id, Integer
|
|
49
44
|
|
|
50
45
|
# @!attribute name
|
|
46
|
+
# The domain name used for sending emails
|
|
51
47
|
#
|
|
52
48
|
# @return [String]
|
|
53
49
|
required :name, String
|
|
54
50
|
|
|
55
51
|
# @!attribute verified
|
|
52
|
+
# Whether all DNS records (SPF, DKIM, Return Path) are correctly configured.
|
|
53
|
+
# Domain must be verified before sending emails.
|
|
56
54
|
#
|
|
57
55
|
# @return [Boolean]
|
|
58
56
|
required :verified, ArkEmail::Internal::Type::Boolean
|
|
59
57
|
|
|
60
|
-
# @!method initialize(id:,
|
|
61
|
-
#
|
|
58
|
+
# @!method initialize(id:, name:, verified:)
|
|
59
|
+
# Some parameter documentations has been truncated, see
|
|
60
|
+
# {ArkEmail::Models::DomainListResponse::Data::Domain} for more details.
|
|
62
61
|
#
|
|
63
|
-
# @param
|
|
62
|
+
# @param id [Integer] Unique domain identifier
|
|
64
63
|
#
|
|
65
|
-
# @param name [String]
|
|
64
|
+
# @param name [String] The domain name used for sending emails
|
|
66
65
|
#
|
|
67
|
-
# @param verified [Boolean]
|
|
66
|
+
# @param verified [Boolean] Whether all DNS records (SPF, DKIM, Return Path) are correctly configured. Domai
|
|
68
67
|
end
|
|
69
68
|
end
|
|
70
69
|
end
|
|
@@ -27,82 +27,174 @@ module ArkEmail
|
|
|
27
27
|
# @see ArkEmail::Models::DomainRetrieveResponse#data
|
|
28
28
|
class Data < ArkEmail::Internal::Type::BaseModel
|
|
29
29
|
# @!attribute id
|
|
30
|
-
#
|
|
30
|
+
# Unique domain identifier
|
|
31
31
|
#
|
|
32
|
-
# @return [
|
|
33
|
-
required :id,
|
|
32
|
+
# @return [Integer]
|
|
33
|
+
required :id, Integer
|
|
34
34
|
|
|
35
35
|
# @!attribute created_at
|
|
36
|
+
# Timestamp when the domain was added
|
|
36
37
|
#
|
|
37
38
|
# @return [Time]
|
|
38
39
|
required :created_at, Time, api_name: :createdAt
|
|
39
40
|
|
|
40
41
|
# @!attribute dns_records
|
|
42
|
+
# DNS records that must be added to your domain's DNS settings. Null if records
|
|
43
|
+
# are not yet generated.
|
|
44
|
+
#
|
|
45
|
+
# **Important:** The `name` field contains the relative hostname that you should
|
|
46
|
+
# enter in your DNS provider. Most DNS providers auto-append the zone name, so you
|
|
47
|
+
# only need to enter the relative part.
|
|
48
|
+
#
|
|
49
|
+
# For subdomains like `mail.example.com`, the zone is `example.com`, so:
|
|
50
|
+
#
|
|
51
|
+
# - SPF `name` would be `mail` (not `@`)
|
|
52
|
+
# - DKIM `name` would be `ark-xyz._domainkey.mail`
|
|
53
|
+
# - Return Path `name` would be `psrp.mail`
|
|
41
54
|
#
|
|
42
|
-
# @return [ArkEmail::Models::DomainRetrieveResponse::Data::DNSRecords]
|
|
55
|
+
# @return [ArkEmail::Models::DomainRetrieveResponse::Data::DNSRecords, nil]
|
|
43
56
|
required :dns_records,
|
|
44
57
|
-> { ArkEmail::Models::DomainRetrieveResponse::Data::DNSRecords },
|
|
45
|
-
api_name: :dnsRecords
|
|
58
|
+
api_name: :dnsRecords,
|
|
59
|
+
nil?: true
|
|
46
60
|
|
|
47
61
|
# @!attribute name
|
|
48
|
-
#
|
|
62
|
+
# The domain name used for sending emails
|
|
49
63
|
#
|
|
50
64
|
# @return [String]
|
|
51
65
|
required :name, String
|
|
52
66
|
|
|
53
67
|
# @!attribute uuid
|
|
68
|
+
# UUID of the domain
|
|
54
69
|
#
|
|
55
70
|
# @return [String]
|
|
56
71
|
required :uuid, String
|
|
57
72
|
|
|
58
73
|
# @!attribute verified
|
|
59
|
-
# Whether DNS
|
|
74
|
+
# Whether all DNS records (SPF, DKIM, Return Path) are correctly configured.
|
|
75
|
+
# Domain must be verified before sending emails.
|
|
60
76
|
#
|
|
61
77
|
# @return [Boolean]
|
|
62
78
|
required :verified, ArkEmail::Internal::Type::Boolean
|
|
63
79
|
|
|
64
80
|
# @!attribute verified_at
|
|
65
|
-
#
|
|
81
|
+
# Timestamp when the domain ownership was verified, or null if not yet verified
|
|
66
82
|
#
|
|
67
83
|
# @return [Time, nil]
|
|
68
84
|
optional :verified_at, Time, api_name: :verifiedAt, nil?: true
|
|
69
85
|
|
|
70
86
|
# @!method initialize(id:, created_at:, dns_records:, name:, uuid:, verified:, verified_at: nil)
|
|
71
|
-
#
|
|
87
|
+
# Some parameter documentations has been truncated, see
|
|
88
|
+
# {ArkEmail::Models::DomainRetrieveResponse::Data} for more details.
|
|
72
89
|
#
|
|
73
|
-
# @param
|
|
90
|
+
# @param id [Integer] Unique domain identifier
|
|
74
91
|
#
|
|
75
|
-
# @param
|
|
92
|
+
# @param created_at [Time] Timestamp when the domain was added
|
|
76
93
|
#
|
|
77
|
-
# @param
|
|
94
|
+
# @param dns_records [ArkEmail::Models::DomainRetrieveResponse::Data::DNSRecords, nil] DNS records that must be added to your domain's DNS settings. Null if records ar
|
|
78
95
|
#
|
|
79
|
-
# @param
|
|
96
|
+
# @param name [String] The domain name used for sending emails
|
|
80
97
|
#
|
|
81
|
-
# @param
|
|
98
|
+
# @param uuid [String] UUID of the domain
|
|
82
99
|
#
|
|
83
|
-
# @param
|
|
100
|
+
# @param verified [Boolean] Whether all DNS records (SPF, DKIM, Return Path) are correctly configured. Domai
|
|
101
|
+
#
|
|
102
|
+
# @param verified_at [Time, nil] Timestamp when the domain ownership was verified, or null if not yet verified
|
|
84
103
|
|
|
85
104
|
# @see ArkEmail::Models::DomainRetrieveResponse::Data#dns_records
|
|
86
105
|
class DNSRecords < ArkEmail::Internal::Type::BaseModel
|
|
87
106
|
# @!attribute dkim
|
|
107
|
+
# A DNS record that needs to be configured in your domain's DNS settings.
|
|
108
|
+
#
|
|
109
|
+
# The `name` field contains the relative hostname to enter in your DNS provider
|
|
110
|
+
# (which auto-appends the zone). The `fullName` field contains the complete
|
|
111
|
+
# fully-qualified domain name (FQDN) for reference.
|
|
112
|
+
#
|
|
113
|
+
# **Example for subdomain `mail.example.com`:**
|
|
114
|
+
#
|
|
115
|
+
# - `name`: `"mail"` (what you enter in DNS provider)
|
|
116
|
+
# - `fullName`: `"mail.example.com"` (the complete hostname)
|
|
88
117
|
#
|
|
89
|
-
#
|
|
90
|
-
|
|
118
|
+
# **Example for root domain `example.com`:**
|
|
119
|
+
#
|
|
120
|
+
# - `name`: `"@"` (DNS shorthand for apex/root)
|
|
121
|
+
# - `fullName`: `"example.com"`
|
|
122
|
+
#
|
|
123
|
+
# @return [ArkEmail::Models::DNSRecord, nil]
|
|
124
|
+
optional :dkim, -> { ArkEmail::DNSRecord }, nil?: true
|
|
91
125
|
|
|
92
126
|
# @!attribute return_path
|
|
127
|
+
# A DNS record that needs to be configured in your domain's DNS settings.
|
|
128
|
+
#
|
|
129
|
+
# The `name` field contains the relative hostname to enter in your DNS provider
|
|
130
|
+
# (which auto-appends the zone). The `fullName` field contains the complete
|
|
131
|
+
# fully-qualified domain name (FQDN) for reference.
|
|
132
|
+
#
|
|
133
|
+
# **Example for subdomain `mail.example.com`:**
|
|
134
|
+
#
|
|
135
|
+
# - `name`: `"mail"` (what you enter in DNS provider)
|
|
136
|
+
# - `fullName`: `"mail.example.com"` (the complete hostname)
|
|
137
|
+
#
|
|
138
|
+
# **Example for root domain `example.com`:**
|
|
139
|
+
#
|
|
140
|
+
# - `name`: `"@"` (DNS shorthand for apex/root)
|
|
141
|
+
# - `fullName`: `"example.com"`
|
|
93
142
|
#
|
|
94
|
-
# @return [ArkEmail::Models::DNSRecord]
|
|
95
|
-
|
|
143
|
+
# @return [ArkEmail::Models::DNSRecord, nil]
|
|
144
|
+
optional :return_path, -> { ArkEmail::DNSRecord }, api_name: :returnPath, nil?: true
|
|
96
145
|
|
|
97
146
|
# @!attribute spf
|
|
147
|
+
# A DNS record that needs to be configured in your domain's DNS settings.
|
|
98
148
|
#
|
|
99
|
-
#
|
|
100
|
-
|
|
149
|
+
# The `name` field contains the relative hostname to enter in your DNS provider
|
|
150
|
+
# (which auto-appends the zone). The `fullName` field contains the complete
|
|
151
|
+
# fully-qualified domain name (FQDN) for reference.
|
|
152
|
+
#
|
|
153
|
+
# **Example for subdomain `mail.example.com`:**
|
|
154
|
+
#
|
|
155
|
+
# - `name`: `"mail"` (what you enter in DNS provider)
|
|
156
|
+
# - `fullName`: `"mail.example.com"` (the complete hostname)
|
|
157
|
+
#
|
|
158
|
+
# **Example for root domain `example.com`:**
|
|
159
|
+
#
|
|
160
|
+
# - `name`: `"@"` (DNS shorthand for apex/root)
|
|
161
|
+
# - `fullName`: `"example.com"`
|
|
162
|
+
#
|
|
163
|
+
# @return [ArkEmail::Models::DNSRecord, nil]
|
|
164
|
+
optional :spf, -> { ArkEmail::DNSRecord }, nil?: true
|
|
165
|
+
|
|
166
|
+
# @!attribute zone
|
|
167
|
+
# The DNS zone (registrable domain) where records should be added. This is the
|
|
168
|
+
# root domain that your DNS provider manages. For `mail.example.com`, the zone is
|
|
169
|
+
# `example.com`. For `example.co.uk`, the zone is `example.co.uk`.
|
|
170
|
+
#
|
|
171
|
+
# @return [String, nil]
|
|
172
|
+
optional :zone, String
|
|
101
173
|
|
|
102
|
-
# @!method initialize(dkim
|
|
103
|
-
#
|
|
104
|
-
#
|
|
105
|
-
#
|
|
174
|
+
# @!method initialize(dkim: nil, return_path: nil, spf: nil, zone: nil)
|
|
175
|
+
# Some parameter documentations has been truncated, see
|
|
176
|
+
# {ArkEmail::Models::DomainRetrieveResponse::Data::DNSRecords} for more details.
|
|
177
|
+
#
|
|
178
|
+
# DNS records that must be added to your domain's DNS settings. Null if records
|
|
179
|
+
# are not yet generated.
|
|
180
|
+
#
|
|
181
|
+
# **Important:** The `name` field contains the relative hostname that you should
|
|
182
|
+
# enter in your DNS provider. Most DNS providers auto-append the zone name, so you
|
|
183
|
+
# only need to enter the relative part.
|
|
184
|
+
#
|
|
185
|
+
# For subdomains like `mail.example.com`, the zone is `example.com`, so:
|
|
186
|
+
#
|
|
187
|
+
# - SPF `name` would be `mail` (not `@`)
|
|
188
|
+
# - DKIM `name` would be `ark-xyz._domainkey.mail`
|
|
189
|
+
# - Return Path `name` would be `psrp.mail`
|
|
190
|
+
#
|
|
191
|
+
# @param dkim [ArkEmail::Models::DNSRecord, nil] A DNS record that needs to be configured in your domain's DNS settings.
|
|
192
|
+
#
|
|
193
|
+
# @param return_path [ArkEmail::Models::DNSRecord, nil] A DNS record that needs to be configured in your domain's DNS settings.
|
|
194
|
+
#
|
|
195
|
+
# @param spf [ArkEmail::Models::DNSRecord, nil] A DNS record that needs to be configured in your domain's DNS settings.
|
|
196
|
+
#
|
|
197
|
+
# @param zone [String] The DNS zone (registrable domain) where records should be added.
|
|
106
198
|
end
|
|
107
199
|
end
|
|
108
200
|
end
|