telnyx 5.151.0 → 5.152.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.
Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -538
  3. data/README.md +1 -1
  4. data/lib/telnyx/models/advanced_order_create_params.rb +1 -86
  5. data/lib/telnyx/models/advanced_order_update_requirement_group_params.rb +1 -88
  6. data/lib/telnyx/models/dir/email_verification_status_wrapped.rb +82 -0
  7. data/lib/telnyx/models/dir/reference.rb +125 -0
  8. data/lib/telnyx/models/dir/reference_create_params.rb +43 -0
  9. data/lib/telnyx/models/dir/reference_input.rb +74 -0
  10. data/lib/telnyx/models/dir/reference_list.rb +18 -0
  11. data/lib/telnyx/models/dir/reference_list_params.rb +22 -0
  12. data/lib/telnyx/models/dir/reference_update_params.rb +103 -0
  13. data/lib/telnyx/models/dir/reference_update_response.rb +23 -0
  14. data/lib/telnyx/models/dir/verify_email_confirm_params.rb +31 -0
  15. data/lib/telnyx/models/dir/verify_email_create_params.rb +22 -0
  16. data/lib/telnyx/models/dir/verify_email_list_params.rb +22 -0
  17. data/lib/telnyx/models/dir_update_infringement_params.rb +6 -2
  18. data/lib/telnyx/models/enterprises/dir_create_params.rb +10 -10
  19. data/lib/telnyx/models/storage/kv_create_params.rb +24 -0
  20. data/lib/telnyx/models/storage/kv_delete_params.rb +22 -0
  21. data/lib/telnyx/models/storage/kv_list_params.rb +32 -0
  22. data/lib/telnyx/models/storage/kv_namespace.rb +75 -0
  23. data/lib/telnyx/models/storage/kv_namespace_response_wrapper.rb +18 -0
  24. data/lib/telnyx/models/storage/kv_retrieve_params.rb +22 -0
  25. data/lib/telnyx/models/storage/kvs/key_delete_params.rb +30 -0
  26. data/lib/telnyx/models/storage/kvs/key_list_params.rb +49 -0
  27. data/lib/telnyx/models/storage/kvs/key_list_response.rb +82 -0
  28. data/lib/telnyx/models/storage/kvs/key_retrieve_params.rb +30 -0
  29. data/lib/telnyx/models/storage/kvs/key_update_params.rb +53 -0
  30. data/lib/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_params.rb +31 -0
  31. data/lib/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_response.rb +54 -0
  32. data/lib/telnyx/resources/dir/references.rb +139 -0
  33. data/lib/telnyx/resources/dir/verify_email.rb +91 -0
  34. data/lib/telnyx/resources/dir.rb +17 -1
  35. data/lib/telnyx/resources/documents.rb +1 -1
  36. data/lib/telnyx/resources/enterprises/dir.rb +3 -3
  37. data/lib/telnyx/resources/storage/kvs/keys.rb +154 -0
  38. data/lib/telnyx/resources/storage/kvs.rb +115 -0
  39. data/lib/telnyx/resources/storage.rb +5 -0
  40. data/lib/telnyx/resources/whatsapp/phone_numbers.rb +27 -0
  41. data/lib/telnyx/version.rb +1 -1
  42. data/lib/telnyx.rb +28 -2
  43. data/rbi/telnyx/models/advanced_order_create_params.rbi +4 -198
  44. data/rbi/telnyx/models/advanced_order_update_requirement_group_params.rbi +2 -219
  45. data/rbi/telnyx/models/ai/assistant_get_texml_response.rbi +1 -1
  46. data/rbi/telnyx/models/ai/assistants/instruction_enhance_response.rbi +1 -1
  47. data/rbi/telnyx/models/dir/email_verification_status_wrapped.rbi +184 -0
  48. data/rbi/telnyx/models/dir/reference.rbi +162 -0
  49. data/rbi/telnyx/models/dir/reference_create_params.rbi +66 -0
  50. data/rbi/telnyx/models/dir/reference_input.rbi +93 -0
  51. data/rbi/telnyx/models/dir/reference_list.rbi +29 -0
  52. data/rbi/telnyx/models/dir/reference_list_params.rbi +37 -0
  53. data/rbi/telnyx/models/dir/reference_update_params.rbi +154 -0
  54. data/rbi/telnyx/models/dir/reference_update_response.rbi +39 -0
  55. data/rbi/telnyx/models/dir/verify_email_confirm_params.rbi +54 -0
  56. data/rbi/telnyx/models/dir/verify_email_create_params.rbi +40 -0
  57. data/rbi/telnyx/models/dir/verify_email_list_params.rbi +37 -0
  58. data/rbi/telnyx/models/dir_update_infringement_params.rbi +4 -2
  59. data/rbi/telnyx/models/enterprises/dir_create_params.rbi +10 -13
  60. data/rbi/telnyx/models/messaging_profiles/autoresp_config_delete_response.rbi +1 -1
  61. data/rbi/telnyx/models/storage/kv_create_params.rbi +42 -0
  62. data/rbi/telnyx/models/storage/kv_delete_params.rbi +37 -0
  63. data/rbi/telnyx/models/storage/kv_list_params.rbi +59 -0
  64. data/rbi/telnyx/models/storage/kv_namespace.rbi +131 -0
  65. data/rbi/telnyx/models/storage/kv_namespace_response_wrapper.rbi +35 -0
  66. data/rbi/telnyx/models/storage/kv_retrieve_params.rbi +37 -0
  67. data/rbi/telnyx/models/storage/kvs/key_delete_params.rbi +50 -0
  68. data/rbi/telnyx/models/storage/kvs/key_list_params.rbi +81 -0
  69. data/rbi/telnyx/models/storage/kvs/key_list_response.rbi +179 -0
  70. data/rbi/telnyx/models/storage/kvs/key_retrieve_params.rbi +50 -0
  71. data/rbi/telnyx/models/storage/kvs/key_update_params.rbi +77 -0
  72. data/rbi/telnyx/models/sub_number_orders_report_download_response.rbi +1 -1
  73. data/rbi/telnyx/models/telephony_credential_create_token_response.rbi +1 -1
  74. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_params.rbi +54 -0
  75. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_response.rbi +125 -0
  76. data/rbi/telnyx/models/wireguard_peer_retrieve_config_response.rbi +1 -1
  77. data/rbi/telnyx/resources/dir/references.rbi +114 -0
  78. data/rbi/telnyx/resources/dir/verify_email.rbi +70 -0
  79. data/rbi/telnyx/resources/dir.rbi +13 -1
  80. data/rbi/telnyx/resources/enterprises/dir.rbi +4 -4
  81. data/rbi/telnyx/resources/storage/kvs/keys.rbi +115 -0
  82. data/rbi/telnyx/resources/storage/kvs.rbi +87 -0
  83. data/rbi/telnyx/resources/storage.rbi +4 -0
  84. data/rbi/telnyx/resources/whatsapp/phone_numbers.rbi +21 -0
  85. data/sig/telnyx/models/advanced_order_create_params.rbs +3 -99
  86. data/sig/telnyx/models/advanced_order_update_requirement_group_params.rbs +3 -94
  87. data/sig/telnyx/models/dir/email_verification_status_wrapped.rbs +69 -0
  88. data/sig/telnyx/models/dir/reference.rbs +88 -0
  89. data/sig/telnyx/models/dir/reference_create_params.rbs +38 -0
  90. data/sig/telnyx/models/dir/reference_input.rbs +52 -0
  91. data/sig/telnyx/models/dir/reference_list.rbs +15 -0
  92. data/sig/telnyx/models/dir/reference_list_params.rbs +25 -0
  93. data/sig/telnyx/models/dir/reference_update_params.rbs +92 -0
  94. data/sig/telnyx/models/dir/reference_update_response.rbs +15 -0
  95. data/sig/telnyx/models/dir/verify_email_confirm_params.rbs +30 -0
  96. data/sig/telnyx/models/dir/verify_email_create_params.rbs +25 -0
  97. data/sig/telnyx/models/dir/verify_email_list_params.rbs +25 -0
  98. data/sig/telnyx/models/enterprises/dir_create_params.rbs +5 -7
  99. data/sig/telnyx/models/storage/kv_create_params.rbs +25 -0
  100. data/sig/telnyx/models/storage/kv_delete_params.rbs +22 -0
  101. data/sig/telnyx/models/storage/kv_list_params.rbs +34 -0
  102. data/sig/telnyx/models/storage/kv_namespace.rbs +80 -0
  103. data/sig/telnyx/models/storage/kv_namespace_response_wrapper.rbs +20 -0
  104. data/sig/telnyx/models/storage/kv_retrieve_params.rbs +22 -0
  105. data/sig/telnyx/models/storage/kvs/key_delete_params.rbs +32 -0
  106. data/sig/telnyx/models/storage/kvs/key_list_params.rbs +46 -0
  107. data/sig/telnyx/models/storage/kvs/key_list_response.rbs +88 -0
  108. data/sig/telnyx/models/storage/kvs/key_retrieve_params.rbs +32 -0
  109. data/sig/telnyx/models/storage/kvs/key_update_params.rbs +47 -0
  110. data/sig/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_params.rbs +30 -0
  111. data/sig/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_response.rbs +66 -0
  112. data/sig/telnyx/resources/dir/references.rbs +35 -0
  113. data/sig/telnyx/resources/dir/verify_email.rbs +25 -0
  114. data/sig/telnyx/resources/dir.rbs +4 -0
  115. data/sig/telnyx/resources/enterprises/dir.rbs +1 -1
  116. data/sig/telnyx/resources/storage/kvs/keys.rbs +39 -0
  117. data/sig/telnyx/resources/storage/kvs.rbs +32 -0
  118. data/sig/telnyx/resources/storage.rbs +2 -0
  119. data/sig/telnyx/resources/whatsapp/phone_numbers.rbs +6 -0
  120. metadata +85 -1
@@ -0,0 +1,35 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Storage
6
+ class KvNamespaceResponseWrapper < Telnyx::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Telnyx::Storage::KvNamespaceResponseWrapper,
11
+ Telnyx::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(T.nilable(Telnyx::Storage::KvNamespace)) }
16
+ attr_reader :data
17
+
18
+ sig { params(data: Telnyx::Storage::KvNamespace::OrHash).void }
19
+ attr_writer :data
20
+
21
+ sig do
22
+ params(data: Telnyx::Storage::KvNamespace::OrHash).returns(
23
+ T.attached_class
24
+ )
25
+ end
26
+ def self.new(data: nil)
27
+ end
28
+
29
+ sig { override.returns({ data: Telnyx::Storage::KvNamespace }) }
30
+ def to_hash
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,37 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Storage
6
+ class KvRetrieveParams < Telnyx::Internal::Type::BaseModel
7
+ extend Telnyx::Internal::Type::RequestParameters::Converter
8
+ include Telnyx::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(Telnyx::Storage::KvRetrieveParams, Telnyx::Internal::AnyHash)
13
+ end
14
+
15
+ sig { returns(String) }
16
+ attr_accessor :id
17
+
18
+ sig do
19
+ params(
20
+ id: String,
21
+ request_options: Telnyx::RequestOptions::OrHash
22
+ ).returns(T.attached_class)
23
+ end
24
+ def self.new(id:, request_options: {})
25
+ end
26
+
27
+ sig do
28
+ override.returns(
29
+ { id: String, request_options: Telnyx::RequestOptions }
30
+ )
31
+ end
32
+ def to_hash
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,50 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Storage
6
+ module Kvs
7
+ class KeyDeleteParams < Telnyx::Internal::Type::BaseModel
8
+ extend Telnyx::Internal::Type::RequestParameters::Converter
9
+ include Telnyx::Internal::Type::RequestParameters
10
+
11
+ OrHash =
12
+ T.type_alias do
13
+ T.any(
14
+ Telnyx::Storage::Kvs::KeyDeleteParams,
15
+ Telnyx::Internal::AnyHash
16
+ )
17
+ end
18
+
19
+ sig { returns(String) }
20
+ attr_accessor :id
21
+
22
+ sig { returns(String) }
23
+ attr_accessor :key
24
+
25
+ sig do
26
+ params(
27
+ id: String,
28
+ key: String,
29
+ request_options: Telnyx::RequestOptions::OrHash
30
+ ).returns(T.attached_class)
31
+ end
32
+ def self.new(id:, key:, request_options: {})
33
+ end
34
+
35
+ sig do
36
+ override.returns(
37
+ {
38
+ id: String,
39
+ key: String,
40
+ request_options: Telnyx::RequestOptions
41
+ }
42
+ )
43
+ end
44
+ def to_hash
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,81 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Storage
6
+ module Kvs
7
+ class KeyListParams < Telnyx::Internal::Type::BaseModel
8
+ extend Telnyx::Internal::Type::RequestParameters::Converter
9
+ include Telnyx::Internal::Type::RequestParameters
10
+
11
+ OrHash =
12
+ T.type_alias do
13
+ T.any(
14
+ Telnyx::Storage::Kvs::KeyListParams,
15
+ Telnyx::Internal::AnyHash
16
+ )
17
+ end
18
+
19
+ sig { returns(String) }
20
+ attr_accessor :id
21
+
22
+ # Opaque pagination cursor from a previous response's `meta.cursor`.
23
+ sig { returns(T.nilable(String)) }
24
+ attr_reader :cursor
25
+
26
+ sig { params(cursor: String).void }
27
+ attr_writer :cursor
28
+
29
+ # Maximum number of keys to return. Values above 1000 are treated as 1000.
30
+ sig { returns(T.nilable(Integer)) }
31
+ attr_reader :limit
32
+
33
+ sig { params(limit: Integer).void }
34
+ attr_writer :limit
35
+
36
+ # Return only keys that start with this prefix.
37
+ sig { returns(T.nilable(String)) }
38
+ attr_reader :prefix
39
+
40
+ sig { params(prefix: String).void }
41
+ attr_writer :prefix
42
+
43
+ sig do
44
+ params(
45
+ id: String,
46
+ cursor: String,
47
+ limit: Integer,
48
+ prefix: String,
49
+ request_options: Telnyx::RequestOptions::OrHash
50
+ ).returns(T.attached_class)
51
+ end
52
+ def self.new(
53
+ id:,
54
+ # Opaque pagination cursor from a previous response's `meta.cursor`.
55
+ cursor: nil,
56
+ # Maximum number of keys to return. Values above 1000 are treated as 1000.
57
+ limit: nil,
58
+ # Return only keys that start with this prefix.
59
+ prefix: nil,
60
+ request_options: {}
61
+ )
62
+ end
63
+
64
+ sig do
65
+ override.returns(
66
+ {
67
+ id: String,
68
+ cursor: String,
69
+ limit: Integer,
70
+ prefix: String,
71
+ request_options: Telnyx::RequestOptions
72
+ }
73
+ )
74
+ end
75
+ def to_hash
76
+ end
77
+ end
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,179 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Storage
6
+ module Kvs
7
+ class KeyListResponse < Telnyx::Internal::Type::BaseModel
8
+ OrHash =
9
+ T.type_alias do
10
+ T.any(
11
+ Telnyx::Models::Storage::Kvs::KeyListResponse,
12
+ Telnyx::Internal::AnyHash
13
+ )
14
+ end
15
+
16
+ sig do
17
+ returns(
18
+ T.nilable(
19
+ T::Array[Telnyx::Models::Storage::Kvs::KeyListResponse::Data]
20
+ )
21
+ )
22
+ end
23
+ attr_reader :data
24
+
25
+ sig do
26
+ params(
27
+ data:
28
+ T::Array[
29
+ Telnyx::Models::Storage::Kvs::KeyListResponse::Data::OrHash
30
+ ]
31
+ ).void
32
+ end
33
+ attr_writer :data
34
+
35
+ sig do
36
+ returns(
37
+ T.nilable(Telnyx::Models::Storage::Kvs::KeyListResponse::Meta)
38
+ )
39
+ end
40
+ attr_reader :meta
41
+
42
+ sig do
43
+ params(
44
+ meta: Telnyx::Models::Storage::Kvs::KeyListResponse::Meta::OrHash
45
+ ).void
46
+ end
47
+ attr_writer :meta
48
+
49
+ sig { returns(T.nilable(String)) }
50
+ attr_reader :record_type
51
+
52
+ sig { params(record_type: String).void }
53
+ attr_writer :record_type
54
+
55
+ sig do
56
+ params(
57
+ data:
58
+ T::Array[
59
+ Telnyx::Models::Storage::Kvs::KeyListResponse::Data::OrHash
60
+ ],
61
+ meta: Telnyx::Models::Storage::Kvs::KeyListResponse::Meta::OrHash,
62
+ record_type: String
63
+ ).returns(T.attached_class)
64
+ end
65
+ def self.new(data: nil, meta: nil, record_type: nil)
66
+ end
67
+
68
+ sig do
69
+ override.returns(
70
+ {
71
+ data:
72
+ T::Array[Telnyx::Models::Storage::Kvs::KeyListResponse::Data],
73
+ meta: Telnyx::Models::Storage::Kvs::KeyListResponse::Meta,
74
+ record_type: String
75
+ }
76
+ )
77
+ end
78
+ def to_hash
79
+ end
80
+
81
+ class Data < Telnyx::Internal::Type::BaseModel
82
+ OrHash =
83
+ T.type_alias do
84
+ T.any(
85
+ Telnyx::Models::Storage::Kvs::KeyListResponse::Data,
86
+ Telnyx::Internal::AnyHash
87
+ )
88
+ end
89
+
90
+ sig { returns(T.nilable(String)) }
91
+ attr_reader :key
92
+
93
+ sig { params(key: String).void }
94
+ attr_writer :key
95
+
96
+ # Size of the stored value in bytes.
97
+ sig { returns(T.nilable(Integer)) }
98
+ attr_reader :size_bytes
99
+
100
+ sig { params(size_bytes: Integer).void }
101
+ attr_writer :size_bytes
102
+
103
+ sig { returns(T.nilable(Time)) }
104
+ attr_reader :updated_at
105
+
106
+ sig { params(updated_at: Time).void }
107
+ attr_writer :updated_at
108
+
109
+ sig do
110
+ params(
111
+ key: String,
112
+ size_bytes: Integer,
113
+ updated_at: Time
114
+ ).returns(T.attached_class)
115
+ end
116
+ def self.new(
117
+ key: nil,
118
+ # Size of the stored value in bytes.
119
+ size_bytes: nil,
120
+ updated_at: nil
121
+ )
122
+ end
123
+
124
+ sig do
125
+ override.returns(
126
+ { key: String, size_bytes: Integer, updated_at: Time }
127
+ )
128
+ end
129
+ def to_hash
130
+ end
131
+ end
132
+
133
+ class Meta < Telnyx::Internal::Type::BaseModel
134
+ OrHash =
135
+ T.type_alias do
136
+ T.any(
137
+ Telnyx::Models::Storage::Kvs::KeyListResponse::Meta,
138
+ Telnyx::Internal::AnyHash
139
+ )
140
+ end
141
+
142
+ # Opaque cursor for the next page; pass it back as the `cursor` query parameter.
143
+ # Omitted when there are no further results.
144
+ sig { returns(T.nilable(String)) }
145
+ attr_reader :cursor
146
+
147
+ sig { params(cursor: String).void }
148
+ attr_writer :cursor
149
+
150
+ # Whether more results are available on a following page.
151
+ sig { returns(T.nilable(T::Boolean)) }
152
+ attr_reader :has_more
153
+
154
+ sig { params(has_more: T::Boolean).void }
155
+ attr_writer :has_more
156
+
157
+ sig do
158
+ params(cursor: String, has_more: T::Boolean).returns(
159
+ T.attached_class
160
+ )
161
+ end
162
+ def self.new(
163
+ # Opaque cursor for the next page; pass it back as the `cursor` query parameter.
164
+ # Omitted when there are no further results.
165
+ cursor: nil,
166
+ # Whether more results are available on a following page.
167
+ has_more: nil
168
+ )
169
+ end
170
+
171
+ sig { override.returns({ cursor: String, has_more: T::Boolean }) }
172
+ def to_hash
173
+ end
174
+ end
175
+ end
176
+ end
177
+ end
178
+ end
179
+ end
@@ -0,0 +1,50 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Storage
6
+ module Kvs
7
+ class KeyRetrieveParams < Telnyx::Internal::Type::BaseModel
8
+ extend Telnyx::Internal::Type::RequestParameters::Converter
9
+ include Telnyx::Internal::Type::RequestParameters
10
+
11
+ OrHash =
12
+ T.type_alias do
13
+ T.any(
14
+ Telnyx::Storage::Kvs::KeyRetrieveParams,
15
+ Telnyx::Internal::AnyHash
16
+ )
17
+ end
18
+
19
+ sig { returns(String) }
20
+ attr_accessor :id
21
+
22
+ sig { returns(String) }
23
+ attr_accessor :key
24
+
25
+ sig do
26
+ params(
27
+ id: String,
28
+ key: String,
29
+ request_options: Telnyx::RequestOptions::OrHash
30
+ ).returns(T.attached_class)
31
+ end
32
+ def self.new(id:, key:, request_options: {})
33
+ end
34
+
35
+ sig do
36
+ override.returns(
37
+ {
38
+ id: String,
39
+ key: String,
40
+ request_options: Telnyx::RequestOptions
41
+ }
42
+ )
43
+ end
44
+ def to_hash
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,77 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Storage
6
+ module Kvs
7
+ class KeyUpdateParams < Telnyx::Internal::Type::BaseModel
8
+ extend Telnyx::Internal::Type::RequestParameters::Converter
9
+ include Telnyx::Internal::Type::RequestParameters
10
+
11
+ OrHash =
12
+ T.type_alias do
13
+ T.any(
14
+ Telnyx::Storage::Kvs::KeyUpdateParams,
15
+ Telnyx::Internal::AnyHash
16
+ )
17
+ end
18
+
19
+ sig { returns(String) }
20
+ attr_accessor :id
21
+
22
+ sig { returns(String) }
23
+ attr_accessor :key
24
+
25
+ # Raw value bytes, stored verbatim.
26
+ sig { returns(Telnyx::Internal::FileInput) }
27
+ attr_accessor :body
28
+
29
+ # Time-to-live in seconds. When set, the key expires and is deleted after this
30
+ # duration. Requires a namespace provisioned with TTL support; namespaces without
31
+ # it return a `409`.
32
+ sig { returns(T.nilable(Integer)) }
33
+ attr_reader :ttl_secs
34
+
35
+ sig { params(ttl_secs: Integer).void }
36
+ attr_writer :ttl_secs
37
+
38
+ sig do
39
+ params(
40
+ id: String,
41
+ key: String,
42
+ body: Telnyx::Internal::FileInput,
43
+ ttl_secs: Integer,
44
+ request_options: Telnyx::RequestOptions::OrHash
45
+ ).returns(T.attached_class)
46
+ end
47
+ def self.new(
48
+ id:,
49
+ key:,
50
+ # Raw value bytes, stored verbatim.
51
+ body:,
52
+ # Time-to-live in seconds. When set, the key expires and is deleted after this
53
+ # duration. Requires a namespace provisioned with TTL support; namespaces without
54
+ # it return a `409`.
55
+ ttl_secs: nil,
56
+ request_options: {}
57
+ )
58
+ end
59
+
60
+ sig do
61
+ override.returns(
62
+ {
63
+ id: String,
64
+ key: String,
65
+ body: Telnyx::Internal::FileInput,
66
+ ttl_secs: Integer,
67
+ request_options: Telnyx::RequestOptions
68
+ }
69
+ )
70
+ end
71
+ def to_hash
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
77
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Telnyx
4
4
  module Models
5
- SubNumberOrdersReportDownloadResponse = StringIO
5
+ SubNumberOrdersReportDownloadResponse = T.type_alias { StringIO }
6
6
  end
7
7
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Telnyx
4
4
  module Models
5
- TelephonyCredentialCreateTokenResponse = String
5
+ TelephonyCredentialCreateTokenResponse = T.type_alias { String }
6
6
  end
7
7
  end
@@ -0,0 +1,54 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Whatsapp
6
+ class PhoneNumberRetrieveConversationWindowParams < Telnyx::Internal::Type::BaseModel
7
+ extend Telnyx::Internal::Type::RequestParameters::Converter
8
+ include Telnyx::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ Telnyx::Whatsapp::PhoneNumberRetrieveConversationWindowParams,
14
+ Telnyx::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :phone_number
20
+
21
+ # Destination phone number in E.164 format
22
+ sig { returns(String) }
23
+ attr_accessor :destination_number
24
+
25
+ sig do
26
+ params(
27
+ phone_number: String,
28
+ destination_number: String,
29
+ request_options: Telnyx::RequestOptions::OrHash
30
+ ).returns(T.attached_class)
31
+ end
32
+ def self.new(
33
+ phone_number:,
34
+ # Destination phone number in E.164 format
35
+ destination_number:,
36
+ request_options: {}
37
+ )
38
+ end
39
+
40
+ sig do
41
+ override.returns(
42
+ {
43
+ phone_number: String,
44
+ destination_number: String,
45
+ request_options: Telnyx::RequestOptions
46
+ }
47
+ )
48
+ end
49
+ def to_hash
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,125 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Whatsapp
6
+ class PhoneNumberRetrieveConversationWindowResponse < Telnyx::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse,
11
+ Telnyx::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig do
16
+ returns(
17
+ T.nilable(
18
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse::Data
19
+ )
20
+ )
21
+ end
22
+ attr_reader :data
23
+
24
+ sig do
25
+ params(
26
+ data:
27
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse::Data::OrHash
28
+ ).void
29
+ end
30
+ attr_writer :data
31
+
32
+ sig do
33
+ params(
34
+ data:
35
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse::Data::OrHash
36
+ ).returns(T.attached_class)
37
+ end
38
+ def self.new(data: nil)
39
+ end
40
+
41
+ sig do
42
+ override.returns(
43
+ {
44
+ data:
45
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse::Data
46
+ }
47
+ )
48
+ end
49
+ def to_hash
50
+ end
51
+
52
+ class Data < Telnyx::Internal::Type::BaseModel
53
+ OrHash =
54
+ T.type_alias do
55
+ T.any(
56
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse::Data,
57
+ Telnyx::Internal::AnyHash
58
+ )
59
+ end
60
+
61
+ # Timestamp of the last inbound message that opened the window
62
+ sig { returns(T.nilable(Time)) }
63
+ attr_reader :last_user_message_at
64
+
65
+ sig { params(last_user_message_at: Time).void }
66
+ attr_writer :last_user_message_at
67
+
68
+ # Whether the 24-hour conversation window is currently open
69
+ sig { returns(T.nilable(T::Boolean)) }
70
+ attr_reader :window_active
71
+
72
+ sig { params(window_active: T::Boolean).void }
73
+ attr_writer :window_active
74
+
75
+ # When the window closes. Null if no active window.
76
+ sig { returns(T.nilable(Time)) }
77
+ attr_reader :window_expires_at
78
+
79
+ sig { params(window_expires_at: Time).void }
80
+ attr_writer :window_expires_at
81
+
82
+ # Window type. Currently always 24h when present.
83
+ sig { returns(T.nilable(String)) }
84
+ attr_reader :window_type
85
+
86
+ sig { params(window_type: String).void }
87
+ attr_writer :window_type
88
+
89
+ sig do
90
+ params(
91
+ last_user_message_at: Time,
92
+ window_active: T::Boolean,
93
+ window_expires_at: Time,
94
+ window_type: String
95
+ ).returns(T.attached_class)
96
+ end
97
+ def self.new(
98
+ # Timestamp of the last inbound message that opened the window
99
+ last_user_message_at: nil,
100
+ # Whether the 24-hour conversation window is currently open
101
+ window_active: nil,
102
+ # When the window closes. Null if no active window.
103
+ window_expires_at: nil,
104
+ # Window type. Currently always 24h when present.
105
+ window_type: nil
106
+ )
107
+ end
108
+
109
+ sig do
110
+ override.returns(
111
+ {
112
+ last_user_message_at: Time,
113
+ window_active: T::Boolean,
114
+ window_expires_at: Time,
115
+ window_type: String
116
+ }
117
+ )
118
+ end
119
+ def to_hash
120
+ end
121
+ end
122
+ end
123
+ end
124
+ end
125
+ end