twilio-ruby 5.52.0 → 5.56.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop_todo.yml +7 -7
  3. data/.travis.yml +22 -28
  4. data/CHANGES.md +85 -0
  5. data/README.md +10 -2
  6. data/lib/twilio-ruby.rb +5 -15
  7. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +0 -0
  8. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +0 -0
  9. data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  10. data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  11. data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  12. data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
  13. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +0 -0
  14. data/lib/twilio-ruby/http.rb +5 -0
  15. data/lib/twilio-ruby/http/http_client.rb +14 -2
  16. data/lib/twilio-ruby/rest.rb +13 -0
  17. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +23 -23
  18. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +5 -5
  19. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +8 -7
  20. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +2 -2
  21. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +0 -8
  22. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +0 -8
  23. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +0 -6
  24. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +0 -8
  25. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +0 -8
  26. data/lib/twilio-ruby/rest/client.rb +7 -0
  27. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +7 -0
  28. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +7 -0
  29. data/lib/twilio-ruby/rest/events/v1/event_type.rb +12 -5
  30. data/lib/twilio-ruby/rest/events/v1/sink.rb +41 -5
  31. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +28 -22
  32. data/lib/twilio-ruby/rest/frontline_api.rb +47 -0
  33. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  34. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +233 -0
  35. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +7 -0
  36. data/lib/twilio-ruby/rest/messaging/v1/service.rb +8 -2
  37. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +178 -18
  38. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +1 -1
  39. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +1 -1
  40. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +30 -1
  41. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +231 -0
  42. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +16 -7
  43. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +6 -7
  44. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +43 -18
  45. data/lib/twilio-ruby/rest/video/v1/composition.rb +0 -8
  46. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +0 -8
  47. data/lib/twilio-ruby/version.rb +1 -1
  48. metadata +15 -9
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d99e1efb1e1e2c8f1ec1d259ad5b04698f53687fb7458c722a9bc6059ebbf0ad
4
- data.tar.gz: 55d03d89201d62c477176cf9a7cc3febfe86af7a10f23803e447b78086ec7c20
3
+ metadata.gz: 80e6c32f919f1a2514aafbbb28a11b07f6099e9ffeca5f95dde586e2a717712d
4
+ data.tar.gz: '09a90113868ce5fc759734f819b76040c96da3c237657a5159912ecc4bd7a871'
5
5
  SHA512:
6
- metadata.gz: 9bf624df014df8c56d9c8bb31d39d436f858ac008d05a501392cf801401f0e6784418c65153117184f4d0c50f494647dd0ba04f1e16d8c99597acfda9c0a69ab
7
- data.tar.gz: cda0c92b279012c44b60921e177619c7af1570a2bb6c7afcee165b3c988d7530e18972c8f281c4c71e9f8dc4f58db687dbb0dfd56a1da4d84966e742e2da3cc0
6
+ metadata.gz: 456c8ac1a992f24200563b2c754b6b9f9259287b4e4042550420218b18850de8c0a6e1c875c83e3e00b1e487f42c0b9c22a36060f95729a390b957cf34171319
7
+ data.tar.gz: dfb91366c5e2db2c817db0a782ec67c5290892daa430c0f32279ba7b7a8ae5e25fac42f9801952845d47c026603b1a95f29f5312637e283cb957bfb671dcd4cc
data/.rubocop_todo.yml CHANGED
@@ -66,7 +66,7 @@ Lint/UnusedBlockArgument:
66
66
  Lint/UnusedMethodArgument:
67
67
  Exclude:
68
68
  - 'lib/twilio-ruby.rb'
69
- - 'lib/twilio-ruby/framework/page.rb'
69
+ - 'lib/twilio-ruby/framework/rest/page.rb'
70
70
  - 'spec/holodeck/holodeck.rb'
71
71
 
72
72
  # Offense count: 1
@@ -130,7 +130,7 @@ Style/FrozenStringLiteralComment:
130
130
  # Configuration parameters: MinBodyLength.
131
131
  Style/GuardClause:
132
132
  Exclude:
133
- - 'lib/twilio-ruby/framework/page.rb'
133
+ - 'lib/twilio-ruby/framework/rest/page.rb'
134
134
 
135
135
  # Offense count: 1
136
136
  # Cop supports --auto-correct.
@@ -144,8 +144,8 @@ Style/HashSyntax:
144
144
  # Cop supports --auto-correct.
145
145
  Style/IfUnlessModifier:
146
146
  Exclude:
147
- - 'lib/twilio-ruby/framework/page.rb'
148
- - 'lib/twilio-ruby/framework/version.rb'
147
+ - 'lib/twilio-ruby/framework/rest/page.rb'
148
+ - 'lib/twilio-ruby/framework/rest/version.rb'
149
149
  - 'lib/twilio-ruby/jwt/access_token.rb'
150
150
  - 'lib/twilio-ruby/jwt/client_capability.rb'
151
151
  - 'lib/twilio-ruby/jwt/jwt.rb'
@@ -168,9 +168,9 @@ Style/RedundantSelf:
168
168
  # SupportedStyles: slashes, percent_r, mixed
169
169
  Style/RegexpLiteral:
170
170
  Exclude:
171
- - 'lib/twilio-ruby/framework/domain.rb'
172
- - 'lib/twilio-ruby/framework/helper.rb'
173
- - 'lib/twilio-ruby/framework/version.rb'
171
+ - 'lib/twilio-ruby/framework/rest/domain.rb'
172
+ - 'lib/twilio-ruby/framework/rest/helper.rb'
173
+ - 'lib/twilio-ruby/framework/rest/version.rb'
174
174
  - 'spec/rack/twilio_webhook_authentication_spec.rb'
175
175
 
176
176
  # Offense count: 5
data/.travis.yml CHANGED
@@ -1,40 +1,34 @@
1
1
  language: ruby
2
2
  cache: bundler
3
- bundler_args: --without development
4
-
3
+ bundler_args: "--without development"
5
4
  rvm:
6
- - ruby-head
7
- - 3.0
8
- - 2.7
9
- - 2.6
10
- - 2.5
11
- - 2.4
12
- - jruby-9.2
13
-
5
+ - ruby-head
6
+ - 3.0
7
+ - 2.7
8
+ - 2.6
9
+ - 2.5
10
+ - 2.4
11
+ - jruby-9.2
14
12
  services:
15
- - docker
16
-
13
+ - docker
17
14
  install: make install
18
15
  script: make test
19
-
20
16
  matrix:
21
17
  allow_failures:
22
- - rvm: ruby-head
18
+ - rvm: ruby-head
23
19
  fast_finish: true
24
-
25
20
  deploy:
26
- - provider: script
27
- script: make docker-build && make docker-push
28
- skip_cleanup: true
29
- on:
30
- tags: true
31
- rvm: "2.4"
32
- - provider: rubygems
33
- api_key: $RUBYGEMS_APIKEY
34
- on:
35
- tags: true
36
- rvm: "2.4"
37
-
21
+ - provider: script
22
+ script: echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin && make docker-build && make docker-push
23
+ skip_cleanup: true
24
+ on:
25
+ tags: true
26
+ rvm: '2.4'
27
+ - provider: rubygems
28
+ api_key: "$RUBYGEMS_APIKEY"
29
+ on:
30
+ tags: true
31
+ rvm: '2.4'
38
32
  notifications:
39
33
  slack:
40
34
  if: branch = main
@@ -42,4 +36,4 @@ notifications:
42
36
  on_success: never
43
37
  on_failure: change
44
38
  rooms:
45
- - secure: AxzkBxp8izIXqkOEDiUaGjjym60GvuJeV1sBAHnLXqujDDpvdCeM+G8r274Xp48l7YqFz72PR2prFrAl8qMY5IVVFBolH1BtXqa7MsgclFKXXhq87y7OqzrUHVwdB1TAhse7k/wkeVN+mFPZswzSYqDzR3WmAbBG0iT6d1szO6c=
39
+ secure: HG7rC5VSDOZiLCkpTsC4ZImh1k59OPi6YEjYKhdGXItybLHa6Yh5C42WvSx3kVW3SeyLOm1CiaMv+pbBZUXStXYsl8eH69MbEZimhDWsPs/m+bh+gEISov22WNUs3ZfUqIXMIb6v18oXPp2Qa1gX5LUEAGoSxHWNmCAcHayWl7M=
data/CHANGES.md CHANGED
@@ -1,6 +1,91 @@
1
1
  twilio-ruby changelog
2
2
  =====================
3
3
 
4
+ [2021-06-30] Version 5.56.0
5
+ ---------------------------
6
+ **Library - Feature**
7
+ - [PR #559](https://github.com/twilio/twilio-ruby/pull/559): Add `Twilio::HTTP::Client#configure_connection`. Thanks to [@darwinShopify](https://github.com/darwinShopify)!
8
+ - [PR #558](https://github.com/twilio/twilio-ruby/pull/558): Autoload Twilio::REST and Twilio::HTTP. Thanks to [@gmcgibbon](https://github.com/gmcgibbon)!
9
+
10
+ **Conversations**
11
+ - Read-only Conversation Email Binding property `binding`
12
+
13
+ **Supersim**
14
+ - Add Billing Period resource for the Super Sim Pilot
15
+ - Add List endpoint to Billing Period resource for Super Sim Pilot
16
+ - Add Fetch endpoint to Billing Period resource for Super Sim Pilot
17
+
18
+ **Taskrouter**
19
+ - Update `transcribe` & `transcription_configuration` form params in Reservation update endpoint to have private visibility **(breaking change)**
20
+ - Add `transcribe` & `transcription_configuration` form params to Reservation update endpoint
21
+
22
+ **Twiml**
23
+ - Add `modify` event to `statusCallbackEvent` for `<Conference>`.
24
+
25
+
26
+ [2021-06-16] Version 5.55.0
27
+ ---------------------------
28
+ **Api**
29
+ - Update `status` enum for Messages to include 'canceled'
30
+ - Update `update_status` enum for Messages to include 'canceled'
31
+
32
+ **Trusthub**
33
+ - Corrected the sid for policy sid in customer_profile_evaluation.json and trust_product_evaluation.json **(breaking change)**
34
+
35
+
36
+ [2021-06-02] Version 5.54.1
37
+ ---------------------------
38
+ **Events**
39
+ - join Sinks and Subscriptions service
40
+
41
+ **Verify**
42
+ - Improved the documentation of `challenge` adding the maximum and minimum expected lengths of some fields.
43
+ - Improve documentation regarding `notification` by updating the documentation of the field `ttl`.
44
+
45
+
46
+ [2021-05-19] Version 5.54.0
47
+ ---------------------------
48
+ **Events**
49
+ - add query param to return types filtered by Schema Id
50
+ - Add query param to return sinks filtered by status
51
+ - Add query param to return sinks used/not used by a subscription
52
+
53
+ **Messaging**
54
+ - Add fetch and delete instance endpoints to us_app_to_person api **(breaking change)**
55
+ - Remove delete list endpoint from us_app_to_person api **(breaking change)**
56
+ - Update read list endpoint to return a list of us_app_to_person compliance objects **(breaking change)**
57
+ - Add `sid` field to Preregistered US App To Person response
58
+
59
+ **Supersim**
60
+ - Mark `unique_name` in Sim, Fleet, NAP resources as not PII
61
+
62
+ **Video**
63
+ - [Composer] GA maturity level
64
+
65
+
66
+ [2021-05-05] Version 5.53.0
67
+ ---------------------------
68
+ **Library - Fix**
69
+ - [PR #554](https://github.com/twilio/twilio-ruby/pull/554): JSON parser error on timeout response. Thanks to [@Maychell](https://github.com/Maychell)!
70
+
71
+ **Api**
72
+ - Corrected the data types for feedback summary fields **(breaking change)**
73
+ - Update the conference participant create `from` and `to` param to be endpoint type for supporting client identifier and sip address
74
+
75
+ **Bulkexports**
76
+ - promoting API maturity to GA
77
+
78
+ **Events**
79
+ - Add endpoint to update description in sink
80
+ - Remove beta-feature account flag
81
+
82
+ **Messaging**
83
+ - Update `status` field in us_app_to_person api to `campaign_status` **(breaking change)**
84
+
85
+ **Verify**
86
+ - Improve documentation regarding `push` factor and include extra information about `totp` factor.
87
+
88
+
4
89
  [2021-04-21] Version 5.52.0
5
90
  ---------------------------
6
91
  **Api**
data/README.md CHANGED
@@ -35,13 +35,13 @@ This library supports the following Ruby implementations:
35
35
  To install using [Bundler][bundler] grab the latest stable version:
36
36
 
37
37
  ```ruby
38
- gem 'twilio-ruby', '~> 5.52.0'
38
+ gem 'twilio-ruby', '~> 5.56.0'
39
39
  ```
40
40
 
41
41
  To manually install `twilio-ruby` via [Rubygems][rubygems] simply gem install:
42
42
 
43
43
  ```bash
44
- gem install twilio-ruby -v 5.52.0
44
+ gem install twilio-ruby -v 5.56.0
45
45
  ```
46
46
 
47
47
  To build and install the development branch yourself from the latest source:
@@ -158,6 +158,14 @@ message_sid = 'SMxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
158
158
 
159
159
  To use a custom HTTP client with this helper library, please see the [Twilio documentation](https://www.twilio.com/docs/libraries/ruby/custom-http-clients).
160
160
 
161
+ To apply customizations such as middleware, you can use the `configure_connection` method like so:
162
+
163
+ ```ruby
164
+ @client.http_client.configure_connection do |faraday|
165
+ faraday.use SomeMiddleware
166
+ end
167
+ ```
168
+
161
169
  ### Handling Errors
162
170
 
163
171
  ```ruby
data/lib/twilio-ruby.rb CHANGED
@@ -16,27 +16,17 @@ require 'twilio-ruby/util'
16
16
  require 'twilio-ruby/security/request_validator'
17
17
  require 'twilio-ruby/util/configuration'
18
18
 
19
- Dir[File.dirname(__FILE__) + '/twilio-ruby/http/**/*.rb'].sort.each do |file|
20
- require file
21
- end
22
- Dir[File.dirname(__FILE__) + '/twilio-ruby/framework/**/*.rb'].sort.each do |file|
23
- require file
24
- end
25
- Dir[File.dirname(__FILE__) + '/twilio-ruby/rest/*.rb'].sort.each do |file|
26
- require file
27
- end
28
- Dir[File.dirname(__FILE__) + '/twilio-ruby/rest/**/*.rb'].sort.each do |file|
29
- require file
30
- end
31
- Dir[File.dirname(__FILE__) + '/twilio-ruby/compatibility/**/*.rb'].sort.each do |file|
19
+ Dir[File.join(__dir__, 'twilio-ruby/framework/*.rb')].sort.each do |file|
32
20
  require file
33
21
  end
34
22
 
35
23
  module Twilio
36
24
  extend SingleForwardable
37
25
 
38
- autoload :JWT, File.join(File.dirname(__FILE__), 'twilio-ruby', 'jwt', 'jwt.rb')
39
- autoload :TwiML, File.join(File.dirname(__FILE__), 'twilio-ruby', 'twiml', 'twiml.rb')
26
+ autoload :JWT, File.join(__dir__, 'twilio-ruby', 'jwt', 'jwt.rb')
27
+ autoload :TwiML, File.join(__dir__, 'twilio-ruby', 'twiml', 'twiml.rb')
28
+ autoload :HTTP, File.join(__dir__, 'twilio-ruby', 'http.rb')
29
+ autoload :REST, File.join(__dir__, 'twilio-ruby', 'rest.rb')
40
30
 
41
31
  def_delegators :configuration, :account_sid, :auth_token, :http_client, :region, :edge, :logger
42
32
 
File without changes
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ Dir[File.join(__dir__, 'http/**/*.rb')].sort.each do |file|
4
+ require file
5
+ end
@@ -16,25 +16,37 @@ module Twilio
16
16
  @ssl_ca_file = ssl_ca_file
17
17
  @timeout = timeout
18
18
  @adapter = Faraday.default_adapter
19
+ @configure_connection_blocks = []
20
+ end
21
+
22
+ def configure_connection(&block)
23
+ raise ArgumentError, "#{__method__} must be given a block!" unless block_given?
24
+
25
+ @configure_connection_blocks << block
26
+ nil
19
27
  end
20
28
 
21
29
  def _request(request)
22
30
  @connection = Faraday.new(url: request.host + ':' + request.port.to_s, ssl: { verify: true }) do |f|
23
31
  f.options.params_encoder = Faraday::FlatParamsEncoder
24
32
  f.request :url_encoded
25
- f.adapter @adapter
26
33
  f.headers = request.headers
27
34
  f.basic_auth(request.auth[0], request.auth[1])
28
35
  f.proxy = "#{@proxy_prot}://#{@proxy_auth}#{@proxy_path}" if @proxy_prot && @proxy_path
29
36
  f.options.open_timeout = request.timeout || @timeout
30
37
  f.options.timeout = request.timeout || @timeout
38
+
39
+ @configure_connection_blocks.each { |block| block.call(f) }
40
+ f.adapter @adapter
31
41
  end
32
42
 
33
43
  @last_request = request
34
44
  @last_response = nil
35
45
 
36
46
  response = send(request)
37
- if response.body && !response.body.empty?
47
+ if response.status == 504
48
+ object = { message: 'Request timeout', code: 504 }.to_json
49
+ elsif response.body && !response.body.empty?
38
50
  object = response.body
39
51
  elsif response.status == 400
40
52
  object = { message: 'Bad request', code: 400 }.to_json
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ Dir[File.join(__dir__, 'framework/rest/*.rb')].sort.each do |file|
4
+ require file
5
+ end
6
+
7
+ Dir[File.join(__dir__, 'rest/*.rb')].sort.each do |file|
8
+ require file
9
+ end
10
+
11
+ Dir[File.join(__dir__, 'rest/**/*.rb')].sort.each do |file|
12
+ require file
13
+ end
@@ -87,6 +87,20 @@ module Twilio
87
87
  @uri = "/Accounts/#{@solution[:account_sid]}/Calls/#{@solution[:call_sid]}/Feedback.json"
88
88
  end
89
89
 
90
+ ##
91
+ # Fetch the FeedbackInstance
92
+ # @return [FeedbackInstance] Fetched FeedbackInstance
93
+ def fetch
94
+ payload = @version.fetch('GET', @uri)
95
+
96
+ FeedbackInstance.new(
97
+ @version,
98
+ payload,
99
+ account_sid: @solution[:account_sid],
100
+ call_sid: @solution[:call_sid],
101
+ )
102
+ end
103
+
90
104
  ##
91
105
  # Create the FeedbackInstance
92
106
  # @param [String] quality_score The call quality expressed as an integer from `1`
@@ -113,20 +127,6 @@ module Twilio
113
127
  )
114
128
  end
115
129
 
116
- ##
117
- # Fetch the FeedbackInstance
118
- # @return [FeedbackInstance] Fetched FeedbackInstance
119
- def fetch
120
- payload = @version.fetch('GET', @uri)
121
-
122
- FeedbackInstance.new(
123
- @version,
124
- payload,
125
- account_sid: @solution[:account_sid],
126
- call_sid: @solution[:call_sid],
127
- )
128
- end
129
-
130
130
  ##
131
131
  # Update the FeedbackInstance
132
132
  # @param [String] quality_score The call quality expressed as an integer from `1`
@@ -137,7 +137,7 @@ module Twilio
137
137
  # `incorrect-caller-id`, `post-dial-delay`, `digits-not-captured`,
138
138
  # `audio-latency`, `unsolicited-call`, or `one-way-audio`.
139
139
  # @return [FeedbackInstance] Updated FeedbackInstance
140
- def update(quality_score: nil, issue: :unset)
140
+ def update(quality_score: :unset, issue: :unset)
141
141
  data = Twilio::Values.of({
142
142
  'QualityScore' => quality_score,
143
143
  'Issue' => Twilio.serialize_list(issue) { |e| e },
@@ -244,6 +244,13 @@ module Twilio
244
244
  @properties['sid']
245
245
  end
246
246
 
247
+ ##
248
+ # Fetch the FeedbackInstance
249
+ # @return [FeedbackInstance] Fetched FeedbackInstance
250
+ def fetch
251
+ context.fetch
252
+ end
253
+
247
254
  ##
248
255
  # Create the FeedbackInstance
249
256
  # @param [String] quality_score The call quality expressed as an integer from `1`
@@ -258,13 +265,6 @@ module Twilio
258
265
  context.create(quality_score: quality_score, issue: issue, )
259
266
  end
260
267
 
261
- ##
262
- # Fetch the FeedbackInstance
263
- # @return [FeedbackInstance] Fetched FeedbackInstance
264
- def fetch
265
- context.fetch
266
- end
267
-
268
268
  ##
269
269
  # Update the FeedbackInstance
270
270
  # @param [String] quality_score The call quality expressed as an integer from `1`
@@ -275,7 +275,7 @@ module Twilio
275
275
  # `incorrect-caller-id`, `post-dial-delay`, `digits-not-captured`,
276
276
  # `audio-latency`, `unsolicited-call`, or `one-way-audio`.
277
277
  # @return [FeedbackInstance] Updated FeedbackInstance
278
- def update(quality_score: nil, issue: :unset)
278
+ def update(quality_score: :unset, issue: :unset)
279
279
  context.update(quality_score: quality_score, issue: issue, )
280
280
  end
281
281
 
@@ -167,14 +167,14 @@ module Twilio
167
167
  'call_feedback_count' => payload['call_feedback_count'].to_i,
168
168
  'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
169
169
  'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
170
- 'end_date' => Twilio.deserialize_iso8601_datetime(payload['end_date']),
170
+ 'end_date' => Twilio.deserialize_iso8601_date(payload['end_date']),
171
171
  'include_subaccounts' => payload['include_subaccounts'],
172
172
  'issues' => payload['issues'],
173
173
  'quality_score_average' => payload['quality_score_average'].to_f,
174
174
  'quality_score_median' => payload['quality_score_median'].to_f,
175
175
  'quality_score_standard_deviation' => payload['quality_score_standard_deviation'].to_f,
176
176
  'sid' => payload['sid'],
177
- 'start_date' => Twilio.deserialize_iso8601_datetime(payload['start_date']),
177
+ 'start_date' => Twilio.deserialize_iso8601_date(payload['start_date']),
178
178
  'status' => payload['status'],
179
179
  }
180
180
 
@@ -225,7 +225,7 @@ module Twilio
225
225
  end
226
226
 
227
227
  ##
228
- # @return [Time] The latest feedback entry date in the summary
228
+ # @return [Date] The latest feedback entry date in the summary
229
229
  def end_date
230
230
  @properties['end_date']
231
231
  end
@@ -237,7 +237,7 @@ module Twilio
237
237
  end
238
238
 
239
239
  ##
240
- # @return [Array[String]] Issues experienced during the call
240
+ # @return [Array[Hash]] Issues experienced during the call
241
241
  def issues
242
242
  @properties['issues']
243
243
  end
@@ -267,7 +267,7 @@ module Twilio
267
267
  end
268
268
 
269
269
  ##
270
- # @return [Time] The earliest feedback entry date in the summary
270
+ # @return [Date] The earliest feedback entry date in the summary
271
271
  def start_date
272
272
  @properties['start_date']
273
273
  end