telnyx 5.67.0 → 5.68.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.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +39 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/internal/util.rb +1 -2
  5. data/lib/telnyx/models/ai/voice_settings.rb +1 -1
  6. data/lib/telnyx/models/billing_address.rb +56 -0
  7. data/lib/telnyx/models/billing_contact.rb +40 -0
  8. data/lib/telnyx/models/enterprise_create_params.rb +12 -196
  9. data/lib/telnyx/models/enterprise_create_response.rb +3 -437
  10. data/lib/telnyx/models/enterprise_public.rb +249 -0
  11. data/lib/telnyx/models/enterprise_retrieve_response.rb +3 -439
  12. data/lib/telnyx/models/enterprise_update_params.rb +12 -196
  13. data/lib/telnyx/models/enterprise_update_response.rb +3 -437
  14. data/lib/telnyx/models/enterprises/enterprise_reputation_public.rb +100 -0
  15. data/lib/telnyx/models/enterprises/reputation/number_create_response.rb +3 -39
  16. data/lib/telnyx/models/enterprises/reputation/number_retrieve_response.rb +3 -148
  17. data/lib/telnyx/models/enterprises/reputation_create_response.rb +3 -96
  18. data/lib/telnyx/models/enterprises/reputation_list_response.rb +3 -96
  19. data/lib/telnyx/models/enterprises/reputation_update_frequency_response.rb +3 -97
  20. data/lib/telnyx/models/meta_info.rb +40 -0
  21. data/lib/telnyx/models/organization_contact.rb +51 -0
  22. data/lib/telnyx/models/physical_address.rb +56 -0
  23. data/lib/telnyx/models/reputation/number_retrieve_response.rb +3 -148
  24. data/lib/telnyx/models/reputation_data.rb +80 -0
  25. data/lib/telnyx/models/reputation_phone_number_with_reputation_data.rb +56 -0
  26. data/lib/telnyx/models.rb +16 -0
  27. data/lib/telnyx/resources/enterprises/reputation/numbers.rb +2 -2
  28. data/lib/telnyx/resources/enterprises.rb +10 -10
  29. data/lib/telnyx/resources/reputation/numbers.rb +2 -2
  30. data/lib/telnyx/version.rb +1 -1
  31. data/lib/telnyx.rb +9 -3
  32. data/rbi/telnyx/models/ai/voice_settings.rbi +2 -2
  33. data/rbi/telnyx/models/billing_address.rbi +77 -0
  34. data/rbi/telnyx/models/billing_contact.rbi +61 -0
  35. data/rbi/telnyx/models/enterprise_create_params.rbi +16 -316
  36. data/rbi/telnyx/models/enterprise_create_response.rbi +4 -814
  37. data/rbi/telnyx/models/enterprise_public.rbi +436 -0
  38. data/rbi/telnyx/models/enterprise_retrieve_response.rbi +4 -816
  39. data/rbi/telnyx/models/enterprise_update_params.rbi +16 -320
  40. data/rbi/telnyx/models/enterprise_update_response.rbi +4 -814
  41. data/rbi/telnyx/models/enterprises/enterprise_reputation_public.rbi +233 -0
  42. data/rbi/telnyx/models/enterprises/reputation/number_create_response.rbi +4 -88
  43. data/rbi/telnyx/models/enterprises/reputation/number_retrieve_response.rbi +4 -292
  44. data/rbi/telnyx/models/enterprises/reputation_create_response.rbi +4 -236
  45. data/rbi/telnyx/models/enterprises/reputation_list_response.rbi +4 -232
  46. data/rbi/telnyx/models/enterprises/reputation_update_frequency_response.rbi +4 -237
  47. data/rbi/telnyx/models/meta_info.rbi +71 -0
  48. data/rbi/telnyx/models/organization_contact.rbi +71 -0
  49. data/rbi/telnyx/models/physical_address.rbi +77 -0
  50. data/rbi/telnyx/models/reputation/number_retrieve_response.rbi +4 -287
  51. data/rbi/telnyx/models/reputation_data.rbi +107 -0
  52. data/rbi/telnyx/models/reputation_phone_number_with_reputation_data.rbi +98 -0
  53. data/rbi/telnyx/models.rbi +17 -0
  54. data/rbi/telnyx/resources/enterprises/reputation/numbers.rbi +1 -1
  55. data/rbi/telnyx/resources/enterprises.rbi +9 -19
  56. data/rbi/telnyx/resources/reputation/numbers.rbi +1 -1
  57. data/sig/telnyx/models/billing_address.rbs +45 -0
  58. data/sig/telnyx/models/billing_contact.rbs +35 -0
  59. data/sig/telnyx/models/enterprise_create_params.rbs +16 -169
  60. data/sig/telnyx/models/enterprise_create_response.rbs +5 -382
  61. data/sig/telnyx/models/enterprise_public.rbs +218 -0
  62. data/sig/telnyx/models/enterprise_retrieve_response.rbs +5 -382
  63. data/sig/telnyx/models/enterprise_update_params.rbs +22 -179
  64. data/sig/telnyx/models/enterprise_update_response.rbs +5 -382
  65. data/sig/telnyx/models/enterprises/enterprise_reputation_public.rbs +97 -0
  66. data/sig/telnyx/models/enterprises/reputation/number_create_response.rbs +5 -47
  67. data/sig/telnyx/models/enterprises/reputation/number_retrieve_response.rbs +6 -133
  68. data/sig/telnyx/models/enterprises/reputation_create_response.rbs +6 -96
  69. data/sig/telnyx/models/enterprises/reputation_list_response.rbs +6 -96
  70. data/sig/telnyx/models/enterprises/reputation_update_frequency_response.rbs +6 -98
  71. data/sig/telnyx/models/meta_info.rbs +43 -0
  72. data/sig/telnyx/models/organization_contact.rbs +40 -0
  73. data/sig/telnyx/models/physical_address.rbs +45 -0
  74. data/sig/telnyx/models/reputation/number_retrieve_response.rbs +6 -131
  75. data/sig/telnyx/models/reputation_data.rbs +62 -0
  76. data/sig/telnyx/models/reputation_phone_number_with_reputation_data.rbs +57 -0
  77. data/sig/telnyx/models.rbs +16 -0
  78. data/sig/telnyx/resources/enterprises/reputation/numbers.rbs +1 -1
  79. data/sig/telnyx/resources/enterprises.rbs +9 -9
  80. data/sig/telnyx/resources/reputation/numbers.rbs +1 -1
  81. metadata +29 -11
  82. data/lib/telnyx/models/enterprise_list_response.rb +0 -439
  83. data/lib/telnyx/models/enterprises/reputation/number_list_response.rb +0 -154
  84. data/lib/telnyx/models/reputation/number_list_response.rb +0 -151
  85. data/rbi/telnyx/models/enterprise_list_response.rbi +0 -794
  86. data/rbi/telnyx/models/enterprises/reputation/number_list_response.rbi +0 -288
  87. data/rbi/telnyx/models/reputation/number_list_response.rbi +0 -286
  88. data/sig/telnyx/models/enterprise_list_response.rbs +0 -375
  89. data/sig/telnyx/models/enterprises/reputation/number_list_response.rbs +0 -132
  90. data/sig/telnyx/models/reputation/number_list_response.rbs +0 -130
@@ -0,0 +1,233 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ EnterpriseReputationPublic = Enterprises::EnterpriseReputationPublic
6
+
7
+ module Enterprises
8
+ class EnterpriseReputationPublic < Telnyx::Internal::Type::BaseModel
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Telnyx::Enterprises::EnterpriseReputationPublic,
13
+ Telnyx::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # Frequency for refreshing reputation data
18
+ sig do
19
+ returns(
20
+ T.nilable(
21
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency::TaggedSymbol
22
+ )
23
+ )
24
+ end
25
+ attr_reader :check_frequency
26
+
27
+ sig do
28
+ params(
29
+ check_frequency:
30
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency::OrSymbol
31
+ ).void
32
+ end
33
+ attr_writer :check_frequency
34
+
35
+ # When the reputation settings were created
36
+ sig { returns(T.nilable(Time)) }
37
+ attr_reader :created_at
38
+
39
+ sig { params(created_at: Time).void }
40
+ attr_writer :created_at
41
+
42
+ # ID of the associated enterprise
43
+ sig { returns(T.nilable(String)) }
44
+ attr_reader :enterprise_id
45
+
46
+ sig { params(enterprise_id: String).void }
47
+ attr_writer :enterprise_id
48
+
49
+ # ID of the signed LOA document
50
+ sig { returns(T.nilable(String)) }
51
+ attr_accessor :loa_document_id
52
+
53
+ # Reasons for rejection (present when status is rejected)
54
+ sig { returns(T.nilable(T::Array[String])) }
55
+ attr_accessor :rejection_reasons
56
+
57
+ # Current enrollment status
58
+ sig do
59
+ returns(
60
+ T.nilable(
61
+ Telnyx::Enterprises::EnterpriseReputationPublic::Status::TaggedSymbol
62
+ )
63
+ )
64
+ end
65
+ attr_reader :status
66
+
67
+ sig do
68
+ params(
69
+ status:
70
+ Telnyx::Enterprises::EnterpriseReputationPublic::Status::OrSymbol
71
+ ).void
72
+ end
73
+ attr_writer :status
74
+
75
+ # When the reputation settings were last updated
76
+ sig { returns(T.nilable(Time)) }
77
+ attr_reader :updated_at
78
+
79
+ sig { params(updated_at: Time).void }
80
+ attr_writer :updated_at
81
+
82
+ sig do
83
+ params(
84
+ check_frequency:
85
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency::OrSymbol,
86
+ created_at: Time,
87
+ enterprise_id: String,
88
+ loa_document_id: T.nilable(String),
89
+ rejection_reasons: T.nilable(T::Array[String]),
90
+ status:
91
+ Telnyx::Enterprises::EnterpriseReputationPublic::Status::OrSymbol,
92
+ updated_at: Time
93
+ ).returns(T.attached_class)
94
+ end
95
+ def self.new(
96
+ # Frequency for refreshing reputation data
97
+ check_frequency: nil,
98
+ # When the reputation settings were created
99
+ created_at: nil,
100
+ # ID of the associated enterprise
101
+ enterprise_id: nil,
102
+ # ID of the signed LOA document
103
+ loa_document_id: nil,
104
+ # Reasons for rejection (present when status is rejected)
105
+ rejection_reasons: nil,
106
+ # Current enrollment status
107
+ status: nil,
108
+ # When the reputation settings were last updated
109
+ updated_at: nil
110
+ )
111
+ end
112
+
113
+ sig do
114
+ override.returns(
115
+ {
116
+ check_frequency:
117
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency::TaggedSymbol,
118
+ created_at: Time,
119
+ enterprise_id: String,
120
+ loa_document_id: T.nilable(String),
121
+ rejection_reasons: T.nilable(T::Array[String]),
122
+ status:
123
+ Telnyx::Enterprises::EnterpriseReputationPublic::Status::TaggedSymbol,
124
+ updated_at: Time
125
+ }
126
+ )
127
+ end
128
+ def to_hash
129
+ end
130
+
131
+ # Frequency for refreshing reputation data
132
+ module CheckFrequency
133
+ extend Telnyx::Internal::Type::Enum
134
+
135
+ TaggedSymbol =
136
+ T.type_alias do
137
+ T.all(
138
+ Symbol,
139
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency
140
+ )
141
+ end
142
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
143
+
144
+ BUSINESS_DAILY =
145
+ T.let(
146
+ :business_daily,
147
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency::TaggedSymbol
148
+ )
149
+ DAILY =
150
+ T.let(
151
+ :daily,
152
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency::TaggedSymbol
153
+ )
154
+ WEEKLY =
155
+ T.let(
156
+ :weekly,
157
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency::TaggedSymbol
158
+ )
159
+ BIWEEKLY =
160
+ T.let(
161
+ :biweekly,
162
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency::TaggedSymbol
163
+ )
164
+ MONTHLY =
165
+ T.let(
166
+ :monthly,
167
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency::TaggedSymbol
168
+ )
169
+ NEVER =
170
+ T.let(
171
+ :never,
172
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency::TaggedSymbol
173
+ )
174
+
175
+ sig do
176
+ override.returns(
177
+ T::Array[
178
+ Telnyx::Enterprises::EnterpriseReputationPublic::CheckFrequency::TaggedSymbol
179
+ ]
180
+ )
181
+ end
182
+ def self.values
183
+ end
184
+ end
185
+
186
+ # Current enrollment status
187
+ module Status
188
+ extend Telnyx::Internal::Type::Enum
189
+
190
+ TaggedSymbol =
191
+ T.type_alias do
192
+ T.all(
193
+ Symbol,
194
+ Telnyx::Enterprises::EnterpriseReputationPublic::Status
195
+ )
196
+ end
197
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
198
+
199
+ PENDING =
200
+ T.let(
201
+ :pending,
202
+ Telnyx::Enterprises::EnterpriseReputationPublic::Status::TaggedSymbol
203
+ )
204
+ APPROVED =
205
+ T.let(
206
+ :approved,
207
+ Telnyx::Enterprises::EnterpriseReputationPublic::Status::TaggedSymbol
208
+ )
209
+ REJECTED =
210
+ T.let(
211
+ :rejected,
212
+ Telnyx::Enterprises::EnterpriseReputationPublic::Status::TaggedSymbol
213
+ )
214
+ DELETED =
215
+ T.let(
216
+ :deleted,
217
+ Telnyx::Enterprises::EnterpriseReputationPublic::Status::TaggedSymbol
218
+ )
219
+
220
+ sig do
221
+ override.returns(
222
+ T::Array[
223
+ Telnyx::Enterprises::EnterpriseReputationPublic::Status::TaggedSymbol
224
+ ]
225
+ )
226
+ end
227
+ def self.values
228
+ end
229
+ end
230
+ end
231
+ end
232
+ end
233
+ end
@@ -34,21 +34,10 @@ module Telnyx
34
34
  end
35
35
  attr_writer :data
36
36
 
37
- sig do
38
- returns(
39
- T.nilable(
40
- Telnyx::Models::Enterprises::Reputation::NumberCreateResponse::Meta
41
- )
42
- )
43
- end
37
+ sig { returns(T.nilable(Telnyx::MetaInfo)) }
44
38
  attr_reader :meta
45
39
 
46
- sig do
47
- params(
48
- meta:
49
- Telnyx::Models::Enterprises::Reputation::NumberCreateResponse::Meta::OrHash
50
- ).void
51
- end
40
+ sig { params(meta: Telnyx::MetaInfo::OrHash).void }
52
41
  attr_writer :meta
53
42
 
54
43
  sig do
@@ -57,8 +46,7 @@ module Telnyx
57
46
  T::Array[
58
47
  Telnyx::Models::Enterprises::Reputation::NumberCreateResponse::Data::OrHash
59
48
  ],
60
- meta:
61
- Telnyx::Models::Enterprises::Reputation::NumberCreateResponse::Meta::OrHash
49
+ meta: Telnyx::MetaInfo::OrHash
62
50
  ).returns(T.attached_class)
63
51
  end
64
52
  def self.new(data: nil, meta: nil)
@@ -71,8 +59,7 @@ module Telnyx
71
59
  T::Array[
72
60
  Telnyx::Models::Enterprises::Reputation::NumberCreateResponse::Data
73
61
  ],
74
- meta:
75
- Telnyx::Models::Enterprises::Reputation::NumberCreateResponse::Meta
62
+ meta: Telnyx::MetaInfo
76
63
  }
77
64
  )
78
65
  end
@@ -160,77 +147,6 @@ module Telnyx
160
147
  def to_hash
161
148
  end
162
149
  end
163
-
164
- class Meta < Telnyx::Internal::Type::BaseModel
165
- OrHash =
166
- T.type_alias do
167
- T.any(
168
- Telnyx::Models::Enterprises::Reputation::NumberCreateResponse::Meta,
169
- Telnyx::Internal::AnyHash
170
- )
171
- end
172
-
173
- # Current page number
174
- sig { returns(T.nilable(Integer)) }
175
- attr_reader :page_number
176
-
177
- sig { params(page_number: Integer).void }
178
- attr_writer :page_number
179
-
180
- # Items per page
181
- sig { returns(T.nilable(Integer)) }
182
- attr_reader :page_size
183
-
184
- sig { params(page_size: Integer).void }
185
- attr_writer :page_size
186
-
187
- # Total number of pages
188
- sig { returns(T.nilable(Integer)) }
189
- attr_reader :total_pages
190
-
191
- sig { params(total_pages: Integer).void }
192
- attr_writer :total_pages
193
-
194
- # Total number of results
195
- sig { returns(T.nilable(Integer)) }
196
- attr_reader :total_results
197
-
198
- sig { params(total_results: Integer).void }
199
- attr_writer :total_results
200
-
201
- sig do
202
- params(
203
- page_number: Integer,
204
- page_size: Integer,
205
- total_pages: Integer,
206
- total_results: Integer
207
- ).returns(T.attached_class)
208
- end
209
- def self.new(
210
- # Current page number
211
- page_number: nil,
212
- # Items per page
213
- page_size: nil,
214
- # Total number of pages
215
- total_pages: nil,
216
- # Total number of results
217
- total_results: nil
218
- )
219
- end
220
-
221
- sig do
222
- override.returns(
223
- {
224
- page_number: Integer,
225
- page_size: Integer,
226
- total_pages: Integer,
227
- total_results: Integer
228
- }
229
- )
230
- end
231
- def to_hash
232
- end
233
- end
234
150
  end
235
151
  end
236
152
  end
@@ -14,26 +14,20 @@ module Telnyx
14
14
  end
15
15
 
16
16
  sig do
17
- returns(
18
- T.nilable(
19
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data
20
- )
21
- )
17
+ returns(T.nilable(Telnyx::ReputationPhoneNumberWithReputationData))
22
18
  end
23
19
  attr_reader :data
24
20
 
25
21
  sig do
26
22
  params(
27
- data:
28
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::OrHash
23
+ data: Telnyx::ReputationPhoneNumberWithReputationData::OrHash
29
24
  ).void
30
25
  end
31
26
  attr_writer :data
32
27
 
33
28
  sig do
34
29
  params(
35
- data:
36
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::OrHash
30
+ data: Telnyx::ReputationPhoneNumberWithReputationData::OrHash
37
31
  ).returns(T.attached_class)
38
32
  end
39
33
  def self.new(data: nil)
@@ -41,293 +35,11 @@ module Telnyx
41
35
 
42
36
  sig do
43
37
  override.returns(
44
- {
45
- data:
46
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data
47
- }
38
+ { data: Telnyx::ReputationPhoneNumberWithReputationData }
48
39
  )
49
40
  end
50
41
  def to_hash
51
42
  end
52
-
53
- class Data < Telnyx::Internal::Type::BaseModel
54
- OrHash =
55
- T.type_alias do
56
- T.any(
57
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data,
58
- Telnyx::Internal::AnyHash
59
- )
60
- end
61
-
62
- # Unique identifier
63
- sig { returns(T.nilable(String)) }
64
- attr_reader :id
65
-
66
- sig { params(id: String).void }
67
- attr_writer :id
68
-
69
- # When the number was associated
70
- sig { returns(T.nilable(Time)) }
71
- attr_reader :created_at
72
-
73
- sig { params(created_at: Time).void }
74
- attr_writer :created_at
75
-
76
- # ID of the associated enterprise
77
- sig { returns(T.nilable(String)) }
78
- attr_reader :enterprise_id
79
-
80
- sig { params(enterprise_id: String).void }
81
- attr_writer :enterprise_id
82
-
83
- # Phone number in E.164 format
84
- sig { returns(T.nilable(String)) }
85
- attr_reader :phone_number
86
-
87
- sig { params(phone_number: String).void }
88
- attr_writer :phone_number
89
-
90
- # Reputation metrics (null if not yet fetched)
91
- sig do
92
- returns(
93
- T.nilable(
94
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::Variants
95
- )
96
- )
97
- end
98
- attr_reader :reputation_data
99
-
100
- sig do
101
- params(
102
- reputation_data:
103
- T.nilable(
104
- T.any(
105
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData::OrHash,
106
- T.anything
107
- )
108
- )
109
- ).void
110
- end
111
- attr_writer :reputation_data
112
-
113
- # When the record was last updated
114
- sig { returns(T.nilable(Time)) }
115
- attr_reader :updated_at
116
-
117
- sig { params(updated_at: Time).void }
118
- attr_writer :updated_at
119
-
120
- sig do
121
- params(
122
- id: String,
123
- created_at: Time,
124
- enterprise_id: String,
125
- phone_number: String,
126
- reputation_data:
127
- T.nilable(
128
- T.any(
129
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData::OrHash,
130
- T.anything
131
- )
132
- ),
133
- updated_at: Time
134
- ).returns(T.attached_class)
135
- end
136
- def self.new(
137
- # Unique identifier
138
- id: nil,
139
- # When the number was associated
140
- created_at: nil,
141
- # ID of the associated enterprise
142
- enterprise_id: nil,
143
- # Phone number in E.164 format
144
- phone_number: nil,
145
- # Reputation metrics (null if not yet fetched)
146
- reputation_data: nil,
147
- # When the record was last updated
148
- updated_at: nil
149
- )
150
- end
151
-
152
- sig do
153
- override.returns(
154
- {
155
- id: String,
156
- created_at: Time,
157
- enterprise_id: String,
158
- phone_number: String,
159
- reputation_data:
160
- T.nilable(
161
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::Variants
162
- ),
163
- updated_at: Time
164
- }
165
- )
166
- end
167
- def to_hash
168
- end
169
-
170
- # Reputation metrics (null if not yet fetched)
171
- module ReputationData
172
- extend Telnyx::Internal::Type::Union
173
-
174
- Variants =
175
- T.type_alias do
176
- T.nilable(
177
- T.any(
178
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData,
179
- T.anything
180
- )
181
- )
182
- end
183
-
184
- class ReputationData < Telnyx::Internal::Type::BaseModel
185
- OrHash =
186
- T.type_alias do
187
- T.any(
188
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData,
189
- Telnyx::Internal::AnyHash
190
- )
191
- end
192
-
193
- # Connection quality metric (0–100)
194
- sig { returns(T.nilable(Integer)) }
195
- attr_accessor :connection_score
196
-
197
- # Engagement metric (0–100). Higher = more positive engagement
198
- sig { returns(T.nilable(Integer)) }
199
- attr_accessor :engagement_score
200
-
201
- # Timestamp of the last reputation data refresh
202
- sig { returns(T.nilable(Time)) }
203
- attr_accessor :last_refreshed_at
204
-
205
- # Maturity metric (0–100). Higher = more established number
206
- sig { returns(T.nilable(Integer)) }
207
- attr_accessor :maturity_score
208
-
209
- # Sentiment metric (0–100). Higher = more positive sentiment
210
- sig { returns(T.nilable(Integer)) }
211
- attr_accessor :sentiment_score
212
-
213
- # Spam category classification (e.g., Telemarketing, Debt Collector)
214
- sig { returns(T.nilable(String)) }
215
- attr_accessor :spam_category
216
-
217
- # Overall spam risk level
218
- sig do
219
- returns(
220
- T.nilable(
221
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData::SpamRisk::TaggedSymbol
222
- )
223
- )
224
- end
225
- attr_accessor :spam_risk
226
-
227
- # Reputation metrics
228
- sig do
229
- params(
230
- connection_score: T.nilable(Integer),
231
- engagement_score: T.nilable(Integer),
232
- last_refreshed_at: T.nilable(Time),
233
- maturity_score: T.nilable(Integer),
234
- sentiment_score: T.nilable(Integer),
235
- spam_category: T.nilable(String),
236
- spam_risk:
237
- T.nilable(
238
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData::SpamRisk::OrSymbol
239
- )
240
- ).returns(T.attached_class)
241
- end
242
- def self.new(
243
- # Connection quality metric (0–100)
244
- connection_score: nil,
245
- # Engagement metric (0–100). Higher = more positive engagement
246
- engagement_score: nil,
247
- # Timestamp of the last reputation data refresh
248
- last_refreshed_at: nil,
249
- # Maturity metric (0–100). Higher = more established number
250
- maturity_score: nil,
251
- # Sentiment metric (0–100). Higher = more positive sentiment
252
- sentiment_score: nil,
253
- # Spam category classification (e.g., Telemarketing, Debt Collector)
254
- spam_category: nil,
255
- # Overall spam risk level
256
- spam_risk: nil
257
- )
258
- end
259
-
260
- sig do
261
- override.returns(
262
- {
263
- connection_score: T.nilable(Integer),
264
- engagement_score: T.nilable(Integer),
265
- last_refreshed_at: T.nilable(Time),
266
- maturity_score: T.nilable(Integer),
267
- sentiment_score: T.nilable(Integer),
268
- spam_category: T.nilable(String),
269
- spam_risk:
270
- T.nilable(
271
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData::SpamRisk::TaggedSymbol
272
- )
273
- }
274
- )
275
- end
276
- def to_hash
277
- end
278
-
279
- # Overall spam risk level
280
- module SpamRisk
281
- extend Telnyx::Internal::Type::Enum
282
-
283
- TaggedSymbol =
284
- T.type_alias do
285
- T.all(
286
- Symbol,
287
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData::SpamRisk
288
- )
289
- end
290
- OrSymbol = T.type_alias { T.any(Symbol, String) }
291
-
292
- LOW =
293
- T.let(
294
- :low,
295
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData::SpamRisk::TaggedSymbol
296
- )
297
- MEDIUM =
298
- T.let(
299
- :medium,
300
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData::SpamRisk::TaggedSymbol
301
- )
302
- HIGH =
303
- T.let(
304
- :high,
305
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData::SpamRisk::TaggedSymbol
306
- )
307
-
308
- sig do
309
- override.returns(
310
- T::Array[
311
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::ReputationData::SpamRisk::TaggedSymbol
312
- ]
313
- )
314
- end
315
- def self.values
316
- end
317
- end
318
- end
319
-
320
- sig do
321
- override.returns(
322
- T::Array[
323
- Telnyx::Models::Enterprises::Reputation::NumberRetrieveResponse::Data::ReputationData::Variants
324
- ]
325
- )
326
- end
327
- def self.variants
328
- end
329
- end
330
- end
331
43
  end
332
44
  end
333
45
  end