sentdm 0.37.0 → 0.38.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d680fc6fd1a90e7cfbb949b51b2318a9a5be626e7f5629eac8e94aa891efb518
4
- data.tar.gz: 51a7542758dea2afa3873d000f47d003c4212ad54808c9a1ee6b97551f14a93d
3
+ metadata.gz: 16dc14ecd9c936e5dd3491d360224828550cd817ca6948685030bba5e446f4bf
4
+ data.tar.gz: '091a8f5517a1b38d376bea98bd8790c981a6803741943cf573c3fdbb0dd5b1c3'
5
5
  SHA512:
6
- metadata.gz: 1fd26499de108ec871956cbc8f6219506a2c08cb6ce1f9aa105c2509518faf6b99eda7cfd5dda5781f2b584fbbeca3618692667ac6fe46b1cc2a4e033114f6ee
7
- data.tar.gz: 3bf07498b8d470a63f9f543b4bf0e68b88141ae345c7a7700994fb6beaf89731a01a0ddc41198275d0d64f1e8ffa8026487b14c74a6e9f9194c4b3659462223d
6
+ metadata.gz: 4aa11719a1c01c114e7a34d1f0b1d925428fb74134d1ebb587dd4c9b6f401c7373b64bfc8aaf42cd2e1f3d6580063e3443fce61bfd01a427885b605df1f41191
7
+ data.tar.gz: bc846fa52387c5b28c16c7e17e7efb5a9e6c65fc3816baa6be2df535a98ab9ca6aeba04078e2821c5e51671b37021eb45dec501cfccb9cdd7ca0ebba2f4a3a32
data/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.38.1](https://github.com/sentdm/sent-dm-ruby/compare/v0.38.0...v0.38.1) (2026-10-20)
4
+
5
+
6
+ ### Chores
7
+
8
+ * **ci:** merge the seal-back PR directly when auto-merge is refused ([9a7393d](https://github.com/sentdm/sent-dm-ruby/commit/9a7393dee833caf43136971d364bb74cb8b59bf8))
9
+
10
+ ## [0.38.0](https://github.com/sentdm/sent-dm-ruby/compare/v0.37.0...v0.38.0) (2026-10-20)
11
+
12
+
13
+ ### Features
14
+
15
+ * **api:** sync generated SDKs from the committed spec ([0f635d5](https://github.com/sentdm/sent-dm-ruby/commit/0f635d57fa2ee924000ff7c6683ca505d00dc3e2))
16
+ * **api:** sync OpenAPI spec from production ([dbd2131](https://github.com/sentdm/sent-dm-ruby/commit/dbd2131083dda1ff7b2cd11e41db535364881d65))
17
+
3
18
  ## [0.37.0](https://github.com/sentdm/sent-dm-ruby/compare/v0.36.0...v0.37.0) (2026-10-09)
4
19
 
5
20
 
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "sentdm", "~> 0.37.0"
20
+ gem "sentdm", "~> 0.38.1"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -56,6 +56,20 @@ module Sentdm
56
56
  # @return [String, nil]
57
57
  optional :outbound_number, String
58
58
 
59
+ # @!attribute referral
60
+ # The ad the contact tapped to start the conversation, present only on whatsapp
61
+ # messages sent from a Click to WhatsApp ad and omitted entirely otherwise.
62
+ #
63
+ # This is Meta's referral object passed through unchanged, with Meta's field names
64
+ # and nesting: source_url, source_id, source_type, headline, body, media_type,
65
+ # image_url (image ads), video_url and thumbnail_url (video ads), ctwa_clid and
66
+ # welcome_message.text. Which fields appear is Meta's decision: ctwa_clid in
67
+ # particular is not sent for ads shown in WhatsApp Status, so treat every field as
68
+ # optional.
69
+ #
70
+ # @return [Object, nil]
71
+ optional :referral, Sentdm::Internal::Type::Unknown, nil?: true
72
+
59
73
  # @!attribute text
60
74
  # The message body. Sent as null when the inbound message carried no text, for
61
75
  # example a media-only message. The field is always present, so read it and check
@@ -71,7 +85,7 @@ module Sentdm
71
85
  # @return [String, nil]
72
86
  optional :updated_at, String
73
87
 
74
- # @!method initialize(inbound_number:, received_at:, account_id: nil, channel: nil, media: nil, message_id: nil, outbound_number: nil, text: nil, updated_at: nil)
88
+ # @!method initialize(inbound_number:, received_at:, account_id: nil, channel: nil, media: nil, message_id: nil, outbound_number: nil, referral: nil, text: nil, updated_at: nil)
75
89
  # Some parameter documentations has been truncated, see
76
90
  # {Sentdm::Models::InboundMessageEventPayload} for more details.
77
91
  #
@@ -92,6 +106,8 @@ module Sentdm
92
106
  #
93
107
  # @param outbound_number [String] Your number in E.164 format, meaning the number the message was addressed to.
94
108
  #
109
+ # @param referral [Object, nil] The ad the contact tapped to start the conversation, present only on whatsapp
110
+ #
95
111
  # @param text [String, nil] The message body. Sent as null when the inbound message carried no text, for
96
112
  #
97
113
  # @param updated_at [String] When the message was received, in UTC (yyyy-MM-ddTHH:mm:ssZ). Same value as
@@ -316,6 +316,13 @@ module Sentdm
316
316
  # deregistered, and its routing rules stop being used. Requires admin role in the
317
317
  # organization.
318
318
  #
319
+ # A number it holds that your WhatsApp Business Account still carries refuses the
320
+ # delete with a `409 CONFLICT_012`, and nothing is deleted: the number would
321
+ # return to our shared inventory while Meta still routes WhatsApp to it, and only
322
+ # you can take it off the account — deregister **and** delete it in WhatsApp
323
+ # Manager, then try again. A `409 CONFLICT_013` means the account could not be
324
+ # read, so we cannot tell.
325
+ #
319
326
  # @overload delete(profile_id, sandbox: nil, x_profile_id: nil, request_options: {})
320
327
  #
321
328
  # @param profile_id [String] Path param: Profile ID from route parameter
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Sentdm
4
- VERSION = "0.37.0"
4
+ VERSION = "0.38.1"
5
5
  end
@@ -59,6 +59,18 @@ module Sentdm
59
59
  sig { params(outbound_number: String).void }
60
60
  attr_writer :outbound_number
61
61
 
62
+ # The ad the contact tapped to start the conversation, present only on whatsapp
63
+ # messages sent from a Click to WhatsApp ad and omitted entirely otherwise.
64
+ #
65
+ # This is Meta's referral object passed through unchanged, with Meta's field names
66
+ # and nesting: source_url, source_id, source_type, headline, body, media_type,
67
+ # image_url (image ads), video_url and thumbnail_url (video ads), ctwa_clid and
68
+ # welcome_message.text. Which fields appear is Meta's decision: ctwa_clid in
69
+ # particular is not sent for ads shown in WhatsApp Status, so treat every field as
70
+ # optional.
71
+ sig { returns(T.nilable(T.anything)) }
72
+ attr_accessor :referral
73
+
62
74
  # The message body. Sent as null when the inbound message carried no text, for
63
75
  # example a media-only message. The field is always present, so read it and check
64
76
  # for null rather than checking whether the key exists.
@@ -87,6 +99,7 @@ module Sentdm
87
99
  ),
88
100
  message_id: String,
89
101
  outbound_number: String,
102
+ referral: T.nilable(T.anything),
90
103
  text: T.nilable(String),
91
104
  updated_at: String
92
105
  ).returns(T.attached_class)
@@ -115,6 +128,16 @@ module Sentdm
115
128
  message_id: nil,
116
129
  # Your number in E.164 format, meaning the number the message was addressed to.
117
130
  outbound_number: nil,
131
+ # The ad the contact tapped to start the conversation, present only on whatsapp
132
+ # messages sent from a Click to WhatsApp ad and omitted entirely otherwise.
133
+ #
134
+ # This is Meta's referral object passed through unchanged, with Meta's field names
135
+ # and nesting: source_url, source_id, source_type, headline, body, media_type,
136
+ # image_url (image ads), video_url and thumbnail_url (video ads), ctwa_clid and
137
+ # welcome_message.text. Which fields appear is Meta's decision: ctwa_clid in
138
+ # particular is not sent for ads shown in WhatsApp Status, so treat every field as
139
+ # optional.
140
+ referral: nil,
118
141
  # The message body. Sent as null when the inbound message carried no text, for
119
142
  # example a media-only message. The field is always present, so read it and check
120
143
  # for null rather than checking whether the key exists.
@@ -136,6 +159,7 @@ module Sentdm
136
159
  T.nilable(T::Array[Sentdm::InboundMessageEventPayload::Media]),
137
160
  message_id: String,
138
161
  outbound_number: String,
162
+ referral: T.nilable(T.anything),
139
163
  text: T.nilable(String),
140
164
  updated_at: String
141
165
  }
@@ -385,6 +385,13 @@ module Sentdm
385
385
  # inventory and can go to whoever asks next, its own WhatsApp account is
386
386
  # deregistered, and its routing rules stop being used. Requires admin role in the
387
387
  # organization.
388
+ #
389
+ # A number it holds that your WhatsApp Business Account still carries refuses the
390
+ # delete with a `409 CONFLICT_012`, and nothing is deleted: the number would
391
+ # return to our shared inventory while Meta still routes WhatsApp to it, and only
392
+ # you can take it off the account — deregister **and** delete it in WhatsApp
393
+ # Manager, then try again. A `409 CONFLICT_013` means the account could not be
394
+ # read, so we cannot tell.
388
395
  sig do
389
396
  params(
390
397
  profile_id: String,
@@ -9,6 +9,7 @@ module Sentdm
9
9
  media: ::Array[Sentdm::InboundMessageEventPayload::Media]?,
10
10
  message_id: String,
11
11
  outbound_number: String,
12
+ referral: top?,
12
13
  text: String?,
13
14
  updated_at: String
14
15
  }
@@ -36,6 +37,8 @@ module Sentdm
36
37
 
37
38
  def outbound_number=: (String) -> String
38
39
 
40
+ attr_accessor referral: top?
41
+
39
42
  attr_accessor text: String?
40
43
 
41
44
  attr_reader updated_at: String?
@@ -50,6 +53,7 @@ module Sentdm
50
53
  ?media: ::Array[Sentdm::InboundMessageEventPayload::Media]?,
51
54
  ?message_id: String,
52
55
  ?outbound_number: String,
56
+ ?referral: top?,
53
57
  ?text: String?,
54
58
  ?updated_at: String
55
59
  ) -> void
@@ -62,6 +66,7 @@ module Sentdm
62
66
  media: ::Array[Sentdm::InboundMessageEventPayload::Media]?,
63
67
  message_id: String,
64
68
  outbound_number: String,
69
+ referral: top?,
65
70
  text: String?,
66
71
  updated_at: String
67
72
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sentdm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.37.0
4
+ version: 0.38.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sent
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-10-09 00:00:00.000000000 Z
11
+ date: 2026-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi