sentdm 0.3.0 → 0.4.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 +24 -0
- data/README.md +18 -9
- data/lib/sentdm/client.rb +7 -0
- data/lib/sentdm/internal/util.rb +31 -0
- data/lib/sentdm/models/api_meta.rb +1 -9
- data/lib/sentdm/models/brand_data.rb +235 -198
- data/lib/sentdm/models/brand_with_kyc.rb +249 -214
- data/lib/sentdm/models/brands/api_response_tcr_campaign_with_use_cases.rb +0 -1
- data/lib/sentdm/models/contact_create_params.rb +13 -6
- data/lib/sentdm/models/contact_delete_params.rb +15 -1
- data/lib/sentdm/models/contact_list_params.rb +10 -2
- data/lib/sentdm/models/contact_retrieve_params.rb +13 -1
- data/lib/sentdm/models/contact_update_params.rb +20 -6
- data/lib/sentdm/models/me_retrieve_params.rb +7 -1
- data/lib/sentdm/models/me_retrieve_response.rb +152 -7
- data/lib/sentdm/models/message_retrieve_activities_params.rb +13 -1
- data/lib/sentdm/models/message_retrieve_activities_response.rb +19 -5
- data/lib/sentdm/models/message_retrieve_status_params.rb +13 -1
- data/lib/sentdm/models/message_retrieve_status_response.rb +8 -1
- data/lib/sentdm/models/message_send_params.rb +17 -10
- data/lib/sentdm/models/mutation_request.rb +6 -6
- data/lib/sentdm/models/profile_complete_params.rb +20 -6
- data/lib/sentdm/models/profile_create_params.rb +192 -10
- data/lib/sentdm/models/profile_delete_params.rb +21 -14
- data/lib/sentdm/models/profile_detail.rb +144 -95
- data/lib/sentdm/models/profile_list_params.rb +7 -1
- data/lib/sentdm/models/profile_retrieve_params.rb +13 -1
- data/lib/sentdm/models/profile_update_params.rb +146 -19
- data/lib/sentdm/models/template_create_params.rb +17 -10
- data/lib/sentdm/models/template_delete_params.rb +20 -6
- data/lib/sentdm/models/template_list_params.rb +18 -2
- data/lib/sentdm/models/template_retrieve_params.rb +13 -1
- data/lib/sentdm/models/template_update_params.rb +24 -10
- data/lib/sentdm/models/template_variable.rb +7 -1
- data/lib/sentdm/models/user_invite_params.rb +13 -6
- data/lib/sentdm/models/user_list_params.rb +7 -1
- data/lib/sentdm/models/user_remove_params.rb +20 -13
- data/lib/sentdm/models/user_retrieve_params.rb +13 -1
- data/lib/sentdm/models/user_update_role_params.rb +19 -13
- data/lib/sentdm/models/webhook_create_params.rb +13 -6
- data/lib/sentdm/models/webhook_delete_params.rb +13 -1
- data/lib/sentdm/models/webhook_list_event_types_params.rb +7 -1
- data/lib/sentdm/models/webhook_list_events_params.rb +13 -1
- data/lib/sentdm/models/webhook_list_params.rb +7 -1
- data/lib/sentdm/models/webhook_retrieve_params.rb +13 -1
- data/lib/sentdm/models/webhook_rotate_secret_params.rb +13 -1
- data/lib/sentdm/models/webhook_test_params.rb +20 -6
- data/lib/sentdm/models/webhook_toggle_status_params.rb +20 -6
- data/lib/sentdm/models/webhook_update_params.rb +20 -6
- data/lib/sentdm/models.rb +0 -12
- data/lib/sentdm/resources/brands/campaigns.rb +0 -128
- data/lib/sentdm/resources/brands.rb +0 -110
- data/lib/sentdm/resources/contacts.rb +44 -19
- data/lib/sentdm/resources/lookup.rb +0 -21
- data/lib/sentdm/resources/me.rb +25 -5
- data/lib/sentdm/resources/messages.rb +25 -8
- data/lib/sentdm/resources/profiles.rb +117 -32
- data/lib/sentdm/resources/templates.rb +48 -23
- data/lib/sentdm/resources/users.rb +41 -23
- data/lib/sentdm/resources/webhooks.rb +93 -32
- data/lib/sentdm/version.rb +1 -1
- data/lib/sentdm.rb +1 -14
- data/rbi/sentdm/client.rbi +7 -0
- data/rbi/sentdm/internal/util.rbi +20 -0
- data/rbi/sentdm/models/api_meta.rbi +4 -18
- data/rbi/sentdm/models/brand_data.rbi +326 -203
- data/rbi/sentdm/models/brand_with_kyc.rbi +334 -216
- data/rbi/sentdm/models/brands/tcr_campaign_with_use_cases.rbi +6 -8
- data/rbi/sentdm/models/contact_create_params.rbi +19 -10
- data/rbi/sentdm/models/contact_delete_params.rbi +15 -0
- data/rbi/sentdm/models/contact_list_params.rbi +11 -0
- data/rbi/sentdm/models/contact_retrieve_params.rbi +24 -5
- data/rbi/sentdm/models/contact_update_params.rbi +25 -10
- data/rbi/sentdm/models/me_retrieve_params.rbi +16 -5
- data/rbi/sentdm/models/me_retrieve_response.rbi +316 -16
- data/rbi/sentdm/models/message_retrieve_activities_params.rbi +24 -5
- data/rbi/sentdm/models/message_retrieve_activities_response.rbi +18 -6
- data/rbi/sentdm/models/message_retrieve_status_params.rbi +24 -5
- data/rbi/sentdm/models/message_retrieve_status_response.rbi +6 -0
- data/rbi/sentdm/models/message_send_params.rbi +22 -13
- data/rbi/sentdm/models/mutation_request.rbi +10 -10
- data/rbi/sentdm/models/profile_complete_params.rbi +25 -10
- data/rbi/sentdm/models/profile_create_params.rbi +323 -15
- data/rbi/sentdm/models/profile_delete_params.rbi +38 -20
- data/rbi/sentdm/models/profile_detail.rbi +184 -128
- data/rbi/sentdm/models/profile_list_params.rbi +16 -5
- data/rbi/sentdm/models/profile_retrieve_params.rbi +24 -5
- data/rbi/sentdm/models/profile_update_params.rbi +233 -26
- data/rbi/sentdm/models/template_create_params.rbi +22 -13
- data/rbi/sentdm/models/template_delete_params.rbi +25 -10
- data/rbi/sentdm/models/template_list_params.rbi +19 -0
- data/rbi/sentdm/models/template_retrieve_params.rbi +24 -5
- data/rbi/sentdm/models/template_update_params.rbi +28 -13
- data/rbi/sentdm/models/template_variable.rbi +6 -0
- data/rbi/sentdm/models/user_invite_params.rbi +19 -10
- data/rbi/sentdm/models/user_list_params.rbi +16 -5
- data/rbi/sentdm/models/user_remove_params.rbi +37 -19
- data/rbi/sentdm/models/user_retrieve_params.rbi +24 -5
- data/rbi/sentdm/models/user_update_role_params.rbi +25 -21
- data/rbi/sentdm/models/webhook_create_params.rbi +19 -10
- data/rbi/sentdm/models/webhook_delete_params.rbi +24 -5
- data/rbi/sentdm/models/webhook_list_event_types_params.rbi +16 -5
- data/rbi/sentdm/models/webhook_list_events_params.rbi +21 -1
- data/rbi/sentdm/models/webhook_list_params.rbi +9 -0
- data/rbi/sentdm/models/webhook_retrieve_params.rbi +24 -5
- data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +20 -1
- data/rbi/sentdm/models/webhook_test_params.rbi +25 -10
- data/rbi/sentdm/models/webhook_toggle_status_params.rbi +25 -10
- data/rbi/sentdm/models/webhook_update_params.rbi +25 -10
- data/rbi/sentdm/models.rbi +0 -12
- data/rbi/sentdm/resources/brands/campaigns.rbi +0 -94
- data/rbi/sentdm/resources/brands.rbi +0 -78
- data/rbi/sentdm/resources/contacts.rbi +38 -12
- data/rbi/sentdm/resources/lookup.rbi +0 -12
- data/rbi/sentdm/resources/me.rbi +26 -7
- data/rbi/sentdm/resources/messages.rbi +18 -4
- data/rbi/sentdm/resources/profiles.rbi +179 -38
- data/rbi/sentdm/resources/templates.rbi +48 -19
- data/rbi/sentdm/resources/users.rbi +48 -25
- data/rbi/sentdm/resources/webhooks.rbi +93 -20
- data/sig/sentdm/internal/util.rbs +10 -0
- data/sig/sentdm/models/api_meta.rbs +2 -16
- data/sig/sentdm/models/brand_data.rbs +188 -142
- data/sig/sentdm/models/brand_with_kyc.rbs +184 -133
- data/sig/sentdm/models/contact_create_params.rbs +16 -5
- data/sig/sentdm/models/contact_delete_params.rbs +15 -1
- data/sig/sentdm/models/contact_list_params.rbs +8 -1
- data/sig/sentdm/models/contact_retrieve_params.rbs +18 -3
- data/sig/sentdm/models/contact_update_params.rbs +18 -6
- data/sig/sentdm/models/me_retrieve_params.rbs +14 -3
- data/sig/sentdm/models/me_retrieve_response.rbs +134 -7
- data/sig/sentdm/models/message_retrieve_activities_params.rbs +18 -3
- data/sig/sentdm/models/message_retrieve_activities_response.rbs +9 -4
- data/sig/sentdm/models/message_retrieve_status_params.rbs +18 -3
- data/sig/sentdm/models/message_retrieve_status_response.rbs +5 -0
- data/sig/sentdm/models/message_send_params.rbs +15 -8
- data/sig/sentdm/models/mutation_request.rbs +5 -5
- data/sig/sentdm/models/profile_complete_params.rbs +21 -5
- data/sig/sentdm/models/profile_create_params.rbs +111 -7
- data/sig/sentdm/models/profile_delete_params.rbs +23 -9
- data/sig/sentdm/models/profile_detail.rbs +105 -84
- data/sig/sentdm/models/profile_list_params.rbs +14 -3
- data/sig/sentdm/models/profile_retrieve_params.rbs +18 -3
- data/sig/sentdm/models/profile_update_params.rbs +87 -13
- data/sig/sentdm/models/template_create_params.rbs +15 -8
- data/sig/sentdm/models/template_delete_params.rbs +20 -5
- data/sig/sentdm/models/template_list_params.rbs +13 -1
- data/sig/sentdm/models/template_retrieve_params.rbs +18 -3
- data/sig/sentdm/models/template_update_params.rbs +20 -8
- data/sig/sentdm/models/template_variable.rbs +5 -0
- data/sig/sentdm/models/user_invite_params.rbs +13 -6
- data/sig/sentdm/models/user_list_params.rbs +14 -3
- data/sig/sentdm/models/user_remove_params.rbs +23 -9
- data/sig/sentdm/models/user_retrieve_params.rbs +18 -3
- data/sig/sentdm/models/user_update_role_params.rbs +18 -13
- data/sig/sentdm/models/webhook_create_params.rbs +13 -6
- data/sig/sentdm/models/webhook_delete_params.rbs +18 -3
- data/sig/sentdm/models/webhook_list_event_types_params.rbs +13 -3
- data/sig/sentdm/models/webhook_list_events_params.rbs +17 -1
- data/sig/sentdm/models/webhook_list_params.rbs +13 -1
- data/sig/sentdm/models/webhook_retrieve_params.rbs +18 -3
- data/sig/sentdm/models/webhook_rotate_secret_params.rbs +16 -1
- data/sig/sentdm/models/webhook_test_params.rbs +21 -5
- data/sig/sentdm/models/webhook_toggle_status_params.rbs +21 -5
- data/sig/sentdm/models/webhook_update_params.rbs +18 -6
- data/sig/sentdm/models.rbs +0 -12
- data/sig/sentdm/resources/brands/campaigns.rbs +0 -29
- data/sig/sentdm/resources/brands.rbs +0 -25
- data/sig/sentdm/resources/contacts.rbs +7 -2
- data/sig/sentdm/resources/lookup.rbs +0 -5
- data/sig/sentdm/resources/me.rbs +1 -0
- data/sig/sentdm/resources/messages.rbs +4 -1
- data/sig/sentdm/resources/profiles.rbs +19 -8
- data/sig/sentdm/resources/templates.rbs +9 -3
- data/sig/sentdm/resources/users.rbs +10 -7
- data/sig/sentdm/resources/webhooks.rbs +18 -5
- metadata +2 -41
- data/lib/sentdm/models/api_response_brand_with_kyc.rb +0 -43
- data/lib/sentdm/models/brand_create_params.rb +0 -41
- data/lib/sentdm/models/brand_delete_params.rb +0 -27
- data/lib/sentdm/models/brand_list_params.rb +0 -14
- data/lib/sentdm/models/brand_list_response.rb +0 -43
- data/lib/sentdm/models/brand_update_params.rb +0 -41
- data/lib/sentdm/models/brands/campaign_create_params.rb +0 -43
- data/lib/sentdm/models/brands/campaign_delete_params.rb +0 -36
- data/lib/sentdm/models/brands/campaign_list_params.rb +0 -16
- data/lib/sentdm/models/brands/campaign_list_response.rb +0 -47
- data/lib/sentdm/models/brands/campaign_update_params.rb +0 -50
- data/lib/sentdm/models/lookup_retrieve_phone_info_params.rb +0 -14
- data/lib/sentdm/models/lookup_retrieve_phone_info_response.rb +0 -104
- data/rbi/sentdm/models/api_response_brand_with_kyc.rbi +0 -74
- data/rbi/sentdm/models/brand_create_params.rbi +0 -68
- data/rbi/sentdm/models/brand_delete_params.rbi +0 -62
- data/rbi/sentdm/models/brand_list_params.rbi +0 -27
- data/rbi/sentdm/models/brand_list_response.rbi +0 -71
- data/rbi/sentdm/models/brand_update_params.rbi +0 -68
- data/rbi/sentdm/models/brands/campaign_create_params.rbi +0 -73
- data/rbi/sentdm/models/brands/campaign_delete_params.rbi +0 -78
- data/rbi/sentdm/models/brands/campaign_list_params.rbi +0 -29
- data/rbi/sentdm/models/brands/campaign_list_response.rbi +0 -82
- data/rbi/sentdm/models/brands/campaign_update_params.rbi +0 -79
- data/rbi/sentdm/models/lookup_retrieve_phone_info_params.rbi +0 -30
- data/rbi/sentdm/models/lookup_retrieve_phone_info_response.rbi +0 -183
- data/sig/sentdm/models/api_response_brand_with_kyc.rbs +0 -39
- data/sig/sentdm/models/brand_create_params.rbs +0 -36
- data/sig/sentdm/models/brand_delete_params.rbs +0 -32
- data/sig/sentdm/models/brand_list_params.rbs +0 -14
- data/sig/sentdm/models/brand_list_response.rbs +0 -39
- data/sig/sentdm/models/brand_update_params.rbs +0 -36
- data/sig/sentdm/models/brands/campaign_create_params.rbs +0 -42
- data/sig/sentdm/models/brands/campaign_delete_params.rbs +0 -38
- data/sig/sentdm/models/brands/campaign_list_params.rbs +0 -17
- data/sig/sentdm/models/brands/campaign_list_response.rbs +0 -41
- data/sig/sentdm/models/brands/campaign_update_params.rbs +0 -47
- data/sig/sentdm/models/lookup_retrieve_phone_info_params.rbs +0 -15
- data/sig/sentdm/models/lookup_retrieve_phone_info_response.rbs +0 -102
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 05c854c79f1208c28d3ecacb5111648f56c2d850f1b2a353462a19ef9559f70f
|
|
4
|
+
data.tar.gz: 07d88b86954305d084b1dcd5a54785349979e08d66dc68b292be60845f44e05a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d464e1edb179e1b3ef4b76c017417016ff67f4d16d02345985c1177493cdb286285cf00eb4a6a9347a1361aa03a3783f8b2646d889d1fc16ef7b0a6782cde06a
|
|
7
|
+
data.tar.gz: 8bc5abf3c6429faa22188eef6711467142b6b9623fbd208ae5b6171d65f7f44beb7b9b13fad99ab9ba6c29f9d652234e1776bce5b61397f09dd24e4ba1ba89e1
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.4.0 (2026-03-11)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.3.1...v0.4.0](https://github.com/sentdm/sent-dm-ruby/compare/v0.3.1...v0.4.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** api update ([bd1c867](https://github.com/sentdm/sent-dm-ruby/commit/bd1c86786ab541d177d0dab68b56a584becadafd))
|
|
10
|
+
|
|
11
|
+
## 0.3.1 (2026-03-11)
|
|
12
|
+
|
|
13
|
+
Full Changelog: [v0.3.0...v0.3.1](https://github.com/sentdm/sent-dm-ruby/compare/v0.3.0...v0.3.1)
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
* properly mock time in ruby ci tests ([4c4ebe0](https://github.com/sentdm/sent-dm-ruby/commit/4c4ebe03e980346d3ecc508e2740ad2ded666a8e))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Chores
|
|
21
|
+
|
|
22
|
+
* **ci:** add build step ([e67706a](https://github.com/sentdm/sent-dm-ruby/commit/e67706ab8895b76ca683a3e2e47244650be6aca0))
|
|
23
|
+
* **ci:** skip uploading artifacts on stainless-internal branches ([1d6bb94](https://github.com/sentdm/sent-dm-ruby/commit/1d6bb94d3b4eb5b4383827200ead9f557c39c72f))
|
|
24
|
+
* **internal:** codegen related update ([0dd8713](https://github.com/sentdm/sent-dm-ruby/commit/0dd871352c089d8e40788912ba5c1eec907f4640))
|
|
25
|
+
* **internal:** codegen related update ([7b3ead8](https://github.com/sentdm/sent-dm-ruby/commit/7b3ead8de1ffc36ea448af5eed97ac1fc4f462bb))
|
|
26
|
+
|
|
3
27
|
## 0.3.0 (2026-02-18)
|
|
4
28
|
|
|
5
29
|
Full Changelog: [v0.2.0...v0.3.0](https://github.com/sentdm/sent-dm-ruby/compare/v0.2.0...v0.3.0)
|
data/README.md
CHANGED
|
@@ -4,6 +4,15 @@ The Sent Dm Ruby library provides convenient access to the Sent Dm REST API from
|
|
|
4
4
|
|
|
5
5
|
It is generated with [Stainless](https://www.stainless.com/).
|
|
6
6
|
|
|
7
|
+
## MCP Server
|
|
8
|
+
|
|
9
|
+
Use the Sent Dm 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
|
+
|
|
11
|
+
[](https://cursor.com/en-US/install-mcp?name=%40sentdm%2Fsentdm-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBzZW50ZG0vc2VudGRtLW1jcCJdLCJlbnYiOnsiU0VOVF9ETV9BUElfS0VZIjoiTXkgQVBJIEtleSJ9fQ)
|
|
12
|
+
[](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22%40sentdm%2Fsentdm-mcp%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40sentdm%2Fsentdm-mcp%22%5D%2C%22env%22%3A%7B%22SENT_DM_API_KEY%22%3A%22My%20API%20Key%22%7D%7D)
|
|
13
|
+
|
|
14
|
+
> Note: You may need to set environment variables in your MCP client.
|
|
15
|
+
|
|
7
16
|
## Documentation
|
|
8
17
|
|
|
9
18
|
Documentation for releases of this gem can be found [on RubyDoc](https://gemdocs.org/gems/sentdm).
|
|
@@ -17,7 +26,7 @@ To use this gem, install via Bundler by adding the following to your application
|
|
|
17
26
|
<!-- x-release-please-start-version -->
|
|
18
27
|
|
|
19
28
|
```ruby
|
|
20
|
-
gem "sentdm", "~> 0.
|
|
29
|
+
gem "sentdm", "~> 0.4.0"
|
|
21
30
|
```
|
|
22
31
|
|
|
23
32
|
<!-- x-release-please-end -->
|
|
@@ -261,23 +270,23 @@ sent_dm.messages.send_(**params)
|
|
|
261
270
|
Since this library does not depend on `sorbet-runtime`, it cannot provide [`T::Enum`](https://sorbet.org/docs/tenum) instances. Instead, we provide "tagged symbols" instead, which is always a primitive at runtime:
|
|
262
271
|
|
|
263
272
|
```ruby
|
|
264
|
-
# :
|
|
265
|
-
puts(Sentdm::
|
|
273
|
+
# :SELF_DECLARED
|
|
274
|
+
puts(Sentdm::BrandWithKYC::IdentityStatus::SELF_DECLARED)
|
|
266
275
|
|
|
267
|
-
# Revealed type: `T.all(Sentdm::
|
|
268
|
-
T.reveal_type(Sentdm::
|
|
276
|
+
# Revealed type: `T.all(Sentdm::BrandWithKYC::IdentityStatus, Symbol)`
|
|
277
|
+
T.reveal_type(Sentdm::BrandWithKYC::IdentityStatus::SELF_DECLARED)
|
|
269
278
|
```
|
|
270
279
|
|
|
271
280
|
Enum parameters have a "relaxed" type, so you can either pass in enum constants or their literal value:
|
|
272
281
|
|
|
273
282
|
```ruby
|
|
274
|
-
Sentdm::
|
|
275
|
-
|
|
283
|
+
Sentdm::BrandWithKYC.new(
|
|
284
|
+
identity_status: Sentdm::BrandWithKYC::IdentityStatus::SELF_DECLARED,
|
|
276
285
|
# …
|
|
277
286
|
)
|
|
278
287
|
|
|
279
|
-
Sentdm::
|
|
280
|
-
|
|
288
|
+
Sentdm::BrandWithKYC.new(
|
|
289
|
+
identity_status: :SELF_DECLARED,
|
|
281
290
|
# …
|
|
282
291
|
)
|
|
283
292
|
```
|
data/lib/sentdm/client.rb
CHANGED
|
@@ -20,30 +20,37 @@ module Sentdm
|
|
|
20
20
|
# @return [String]
|
|
21
21
|
attr_reader :api_key
|
|
22
22
|
|
|
23
|
+
# Configure webhook endpoints for real-time event delivery
|
|
23
24
|
# @return [Sentdm::Resources::Webhooks]
|
|
24
25
|
attr_reader :webhooks
|
|
25
26
|
|
|
27
|
+
# Invite, update, and manage organization users and roles
|
|
26
28
|
# @return [Sentdm::Resources::Users]
|
|
27
29
|
attr_reader :users
|
|
28
30
|
|
|
31
|
+
# Manage message templates with variable substitution
|
|
29
32
|
# @return [Sentdm::Resources::Templates]
|
|
30
33
|
attr_reader :templates
|
|
31
34
|
|
|
35
|
+
# Manage organization profiles
|
|
32
36
|
# @return [Sentdm::Resources::Profiles]
|
|
33
37
|
attr_reader :profiles
|
|
34
38
|
|
|
39
|
+
# Send and track SMS and WhatsApp messages
|
|
35
40
|
# @return [Sentdm::Resources::Messages]
|
|
36
41
|
attr_reader :messages
|
|
37
42
|
|
|
38
43
|
# @return [Sentdm::Resources::Lookup]
|
|
39
44
|
attr_reader :lookup
|
|
40
45
|
|
|
46
|
+
# Create, update, and manage customer contact lists
|
|
41
47
|
# @return [Sentdm::Resources::Contacts]
|
|
42
48
|
attr_reader :contacts
|
|
43
49
|
|
|
44
50
|
# @return [Sentdm::Resources::Brands]
|
|
45
51
|
attr_reader :brands
|
|
46
52
|
|
|
53
|
+
# Retrieve account details
|
|
47
54
|
# @return [Sentdm::Resources::Me]
|
|
48
55
|
attr_reader :me
|
|
49
56
|
|
data/lib/sentdm/internal/util.rb
CHANGED
|
@@ -490,6 +490,37 @@ module Sentdm
|
|
|
490
490
|
JSONL_CONTENT = %r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}
|
|
491
491
|
|
|
492
492
|
class << self
|
|
493
|
+
# @api private
|
|
494
|
+
#
|
|
495
|
+
# @param query [Hash{Symbol=>Object}]
|
|
496
|
+
#
|
|
497
|
+
# @return [Hash{Symbol=>Object}]
|
|
498
|
+
def encode_query_params(query)
|
|
499
|
+
out = {}
|
|
500
|
+
query.each { write_query_param_element!(out, _1, _2) }
|
|
501
|
+
out
|
|
502
|
+
end
|
|
503
|
+
|
|
504
|
+
# @api private
|
|
505
|
+
#
|
|
506
|
+
# @param collection [Hash{Symbol=>Object}]
|
|
507
|
+
# @param key [String]
|
|
508
|
+
# @param element [Object]
|
|
509
|
+
#
|
|
510
|
+
# @return [nil]
|
|
511
|
+
private def write_query_param_element!(collection, key, element)
|
|
512
|
+
case element
|
|
513
|
+
in Hash
|
|
514
|
+
element.each do |name, value|
|
|
515
|
+
write_query_param_element!(collection, "#{key}[#{name}]", value)
|
|
516
|
+
end
|
|
517
|
+
in Array
|
|
518
|
+
collection[key] = element.map(&:to_s).join(",")
|
|
519
|
+
else
|
|
520
|
+
collection[key] = element.to_s
|
|
521
|
+
end
|
|
522
|
+
end
|
|
523
|
+
|
|
493
524
|
# @api private
|
|
494
525
|
#
|
|
495
526
|
# @param y [Enumerator::Yielder]
|
|
@@ -9,12 +9,6 @@ module Sentdm
|
|
|
9
9
|
# @return [String, nil]
|
|
10
10
|
optional :request_id, String
|
|
11
11
|
|
|
12
|
-
# @!attribute response_time_ms
|
|
13
|
-
# Response time in milliseconds (optional)
|
|
14
|
-
#
|
|
15
|
-
# @return [Integer, nil]
|
|
16
|
-
optional :response_time_ms, Integer, nil?: true
|
|
17
|
-
|
|
18
12
|
# @!attribute timestamp
|
|
19
13
|
# Server timestamp when the response was generated
|
|
20
14
|
#
|
|
@@ -27,13 +21,11 @@ module Sentdm
|
|
|
27
21
|
# @return [String, nil]
|
|
28
22
|
optional :version, String
|
|
29
23
|
|
|
30
|
-
# @!method initialize(request_id: nil,
|
|
24
|
+
# @!method initialize(request_id: nil, timestamp: nil, version: nil)
|
|
31
25
|
# Request and response metadata
|
|
32
26
|
#
|
|
33
27
|
# @param request_id [String] Unique identifier for this request (for tracing and support)
|
|
34
28
|
#
|
|
35
|
-
# @param response_time_ms [Integer, nil] Response time in milliseconds (optional)
|
|
36
|
-
#
|
|
37
29
|
# @param timestamp [Time] Server timestamp when the response was generated
|
|
38
30
|
#
|
|
39
31
|
# @param version [String] API version used for this request
|