twilio-ruby 5.12.4 → 5.13.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +13 -0
  3. data/README.md +2 -2
  4. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +28 -13
  5. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +14 -6
  6. data/lib/twilio-ruby/rest/client.rb +7 -0
  7. data/lib/twilio-ruby/rest/preview.rb +28 -8
  8. data/lib/twilio-ruby/rest/preview/authy.rb +43 -0
  9. data/lib/twilio-ruby/rest/preview/authy/service.rb +364 -0
  10. data/lib/twilio-ruby/rest/preview/authy/service/entity.rb +326 -0
  11. data/lib/twilio-ruby/rest/preview/permissions.rb +35 -0
  12. data/lib/twilio-ruby/rest/preview/permissions/voice_permission.rb +131 -0
  13. data/lib/twilio-ruby/rest/preview/permissions/voice_permission/bulk_country_update.rb +132 -0
  14. data/lib/twilio-ruby/rest/preview/permissions/voice_permission/country.rb +391 -0
  15. data/lib/twilio-ruby/rest/preview/permissions/voice_permission/country/highrisk_special_prefix.rb +192 -0
  16. data/lib/twilio-ruby/rest/preview/permissions/voice_permission/settings.rb +197 -0
  17. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +12 -6
  18. data/lib/twilio-ruby/rest/preview/understand/assistant/intent/intent_actions.rb +13 -11
  19. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +17 -0
  20. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +214 -0
  21. data/lib/twilio-ruby/rest/verify.rb +46 -0
  22. data/lib/twilio-ruby/rest/verify/v1.rb +43 -0
  23. data/lib/twilio-ruby/rest/verify/v1/service.rb +391 -0
  24. data/lib/twilio-ruby/rest/verify/v1/service/verification.rb +185 -0
  25. data/lib/twilio-ruby/rest/verify/v1/service/verification_check.rb +182 -0
  26. data/lib/twilio-ruby/version.rb +1 -1
  27. data/spec/integration/preview/authy/service/entity_spec.rb +173 -0
  28. data/spec/integration/preview/authy/service_spec.rb +201 -0
  29. data/spec/integration/preview/permissions/voice_permission/bulk_country_update_spec.rb +45 -0
  30. data/spec/integration/preview/permissions/voice_permission/country/highrisk_special_prefix_spec.rb +61 -0
  31. data/spec/integration/preview/permissions/voice_permission/country_spec.rb +112 -0
  32. data/spec/integration/preview/permissions/voice_permission/settings_spec.rb +77 -0
  33. data/spec/integration/preview/permissions/voice_permission_spec.rb +12 -0
  34. data/spec/integration/pricing/v2/voice/number_spec.rb +62 -0
  35. data/spec/integration/verify/v1/service/verification_check_spec.rb +52 -0
  36. data/spec/integration/verify/v1/service/verification_spec.rb +52 -0
  37. data/spec/integration/verify/v1/service_spec.rb +185 -0
  38. metadata +39 -2
@@ -0,0 +1,201 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ require 'spec_helper.rb'
10
+
11
+ describe 'Service' do
12
+ it "can create" do
13
+ @holodeck.mock(Twilio::Response.new(500, ''))
14
+
15
+ expect {
16
+ @client.preview.authy.services.create(friendly_name: 'friendly_name')
17
+ }.to raise_exception(Twilio::REST::TwilioError)
18
+
19
+ values = {'FriendlyName' => 'friendly_name', }
20
+ expect(
21
+ @holodeck.has_request?(Holodeck::Request.new(
22
+ method: 'post',
23
+ url: 'https://preview.twilio.com/Authy/Services',
24
+ data: values,
25
+ ))).to eq(true)
26
+ end
27
+
28
+ it "receives create responses" do
29
+ @holodeck.mock(Twilio::Response.new(
30
+ 201,
31
+ %q[
32
+ {
33
+ "sid": "ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
34
+ "friendly_name": "friendly_name",
35
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
36
+ "date_created": "2015-07-30T20:00:00Z",
37
+ "date_updated": "2015-07-30T20:00:00Z",
38
+ "url": "https://preview.twilio.com/Authy/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
39
+ "links": {
40
+ "entities": "https://preview.twilio.com/Authy/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Entities"
41
+ }
42
+ }
43
+ ]
44
+ ))
45
+
46
+ actual = @client.preview.authy.services.create(friendly_name: 'friendly_name')
47
+
48
+ expect(actual).to_not eq(nil)
49
+ end
50
+
51
+ it "can fetch" do
52
+ @holodeck.mock(Twilio::Response.new(500, ''))
53
+
54
+ expect {
55
+ @client.preview.authy.services('ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX').fetch()
56
+ }.to raise_exception(Twilio::REST::TwilioError)
57
+
58
+ values = {}
59
+ expect(
60
+ @holodeck.has_request?(Holodeck::Request.new(
61
+ method: 'get',
62
+ url: 'https://preview.twilio.com/Authy/Services/ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
63
+ ))).to eq(true)
64
+ end
65
+
66
+ it "receives fetch responses" do
67
+ @holodeck.mock(Twilio::Response.new(
68
+ 200,
69
+ %q[
70
+ {
71
+ "sid": "ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
72
+ "friendly_name": "friendly_name",
73
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
74
+ "date_created": "2015-07-30T20:00:00Z",
75
+ "date_updated": "2015-07-30T20:00:00Z",
76
+ "url": "https://preview.twilio.com/Authy/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
77
+ "links": {
78
+ "entities": "https://preview.twilio.com/Authy/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Entities"
79
+ }
80
+ }
81
+ ]
82
+ ))
83
+
84
+ actual = @client.preview.authy.services('ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX').fetch()
85
+
86
+ expect(actual).to_not eq(nil)
87
+ end
88
+
89
+ it "can read" do
90
+ @holodeck.mock(Twilio::Response.new(500, ''))
91
+
92
+ expect {
93
+ @client.preview.authy.services.list()
94
+ }.to raise_exception(Twilio::REST::TwilioError)
95
+
96
+ values = {}
97
+ expect(
98
+ @holodeck.has_request?(Holodeck::Request.new(
99
+ method: 'get',
100
+ url: 'https://preview.twilio.com/Authy/Services',
101
+ ))).to eq(true)
102
+ end
103
+
104
+ it "receives read_empty responses" do
105
+ @holodeck.mock(Twilio::Response.new(
106
+ 200,
107
+ %q[
108
+ {
109
+ "services": [],
110
+ "meta": {
111
+ "page": 0,
112
+ "page_size": 50,
113
+ "first_page_url": "https://preview.twilio.com/Authy/Services?PageSize=50&Page=0",
114
+ "previous_page_url": null,
115
+ "url": "https://preview.twilio.com/Authy/Services?PageSize=50&Page=0",
116
+ "next_page_url": null,
117
+ "key": "services"
118
+ }
119
+ }
120
+ ]
121
+ ))
122
+
123
+ actual = @client.preview.authy.services.list()
124
+
125
+ expect(actual).to_not eq(nil)
126
+ end
127
+
128
+ it "receives read_full responses" do
129
+ @holodeck.mock(Twilio::Response.new(
130
+ 200,
131
+ %q[
132
+ {
133
+ "services": [
134
+ {
135
+ "sid": "ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
136
+ "friendly_name": "friendly_name",
137
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
138
+ "date_created": "2015-07-30T20:00:00Z",
139
+ "date_updated": "2015-07-30T20:00:00Z",
140
+ "url": "https://preview.twilio.com/Authy/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
141
+ "links": {
142
+ "entities": "https://preview.twilio.com/Authy/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Entities"
143
+ }
144
+ }
145
+ ],
146
+ "meta": {
147
+ "page": 0,
148
+ "page_size": 50,
149
+ "first_page_url": "https://preview.twilio.com/Authy/Services?PageSize=50&Page=0",
150
+ "previous_page_url": null,
151
+ "url": "https://preview.twilio.com/Authy/Services?PageSize=50&Page=0",
152
+ "next_page_url": null,
153
+ "key": "services"
154
+ }
155
+ }
156
+ ]
157
+ ))
158
+
159
+ actual = @client.preview.authy.services.list()
160
+
161
+ expect(actual).to_not eq(nil)
162
+ end
163
+
164
+ it "can update" do
165
+ @holodeck.mock(Twilio::Response.new(500, ''))
166
+
167
+ expect {
168
+ @client.preview.authy.services('ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX').update()
169
+ }.to raise_exception(Twilio::REST::TwilioError)
170
+
171
+ values = {}
172
+ expect(
173
+ @holodeck.has_request?(Holodeck::Request.new(
174
+ method: 'post',
175
+ url: 'https://preview.twilio.com/Authy/Services/ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
176
+ ))).to eq(true)
177
+ end
178
+
179
+ it "receives update responses" do
180
+ @holodeck.mock(Twilio::Response.new(
181
+ 200,
182
+ %q[
183
+ {
184
+ "sid": "ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
185
+ "friendly_name": "friendly_name",
186
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
187
+ "date_created": "2015-07-30T20:00:00Z",
188
+ "date_updated": "2015-07-30T20:00:00Z",
189
+ "url": "https://preview.twilio.com/Authy/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
190
+ "links": {
191
+ "entities": "https://preview.twilio.com/Authy/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Entities"
192
+ }
193
+ }
194
+ ]
195
+ ))
196
+
197
+ actual = @client.preview.authy.services('ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX').update()
198
+
199
+ expect(actual).to_not eq(nil)
200
+ end
201
+ end
@@ -0,0 +1,45 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ require 'spec_helper.rb'
10
+
11
+ describe 'BulkCountryUpdate' do
12
+ it "can create" do
13
+ @holodeck.mock(Twilio::Response.new(500, ''))
14
+
15
+ expect {
16
+ @client.preview.permissions.voice_permissions \
17
+ .bulk_country_updates.create(update_request: 'update_request')
18
+ }.to raise_exception(Twilio::REST::TwilioError)
19
+
20
+ values = {'UpdateRequest' => 'update_request', }
21
+ expect(
22
+ @holodeck.has_request?(Holodeck::Request.new(
23
+ method: 'post',
24
+ url: 'https://preview.twilio.com/permissions/VoicePermissions/BulkCountryUpdates',
25
+ data: values,
26
+ ))).to eq(true)
27
+ end
28
+
29
+ it "receives create responses" do
30
+ @holodeck.mock(Twilio::Response.new(
31
+ 201,
32
+ %q[
33
+ {
34
+ "update_count": 1,
35
+ "update_request": "accepted"
36
+ }
37
+ ]
38
+ ))
39
+
40
+ actual = @client.preview.permissions.voice_permissions \
41
+ .bulk_country_updates.create(update_request: 'update_request')
42
+
43
+ expect(actual).to_not eq(nil)
44
+ end
45
+ end
@@ -0,0 +1,61 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ require 'spec_helper.rb'
10
+
11
+ describe 'HighriskSpecialPrefix' do
12
+ it "can read" do
13
+ @holodeck.mock(Twilio::Response.new(500, ''))
14
+
15
+ expect {
16
+ @client.preview.permissions.voice_permissions \
17
+ .countries('US') \
18
+ .highrisk_special_prefixes.list()
19
+ }.to raise_exception(Twilio::REST::TwilioError)
20
+
21
+ values = {}
22
+ expect(
23
+ @holodeck.has_request?(Holodeck::Request.new(
24
+ method: 'get',
25
+ url: 'https://preview.twilio.com/permissions/VoicePermissions/Countries/US/HighRiskSpecialPrefixes',
26
+ ))).to eq(true)
27
+ end
28
+
29
+ it "receives read_us responses" do
30
+ @holodeck.mock(Twilio::Response.new(
31
+ 200,
32
+ %q[
33
+ {
34
+ "content": [
35
+ {
36
+ "prefix": "+37181"
37
+ },
38
+ {
39
+ "prefix": "+3719000"
40
+ }
41
+ ],
42
+ "meta": {
43
+ "first_page_url": "https://preview.twilio.com/permissions/VoicePermissions/Countries/LV/HighRiskSpecialPrefixes?PageSize=50&Page=0",
44
+ "key": "content",
45
+ "next_page_url": null,
46
+ "page": 0,
47
+ "page_size": 50,
48
+ "previous_page_url": null,
49
+ "url": "https://preview.twilio.com/permissions/VoicePermissions/Countries/LV/HighRiskSpecialPrefixes?PageSize=50&Page=0"
50
+ }
51
+ }
52
+ ]
53
+ ))
54
+
55
+ actual = @client.preview.permissions.voice_permissions \
56
+ .countries('US') \
57
+ .highrisk_special_prefixes.list()
58
+
59
+ expect(actual).to_not eq(nil)
60
+ end
61
+ end
@@ -0,0 +1,112 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ require 'spec_helper.rb'
10
+
11
+ describe 'Country' do
12
+ it "can fetch" do
13
+ @holodeck.mock(Twilio::Response.new(500, ''))
14
+
15
+ expect {
16
+ @client.preview.permissions.voice_permissions \
17
+ .countries('US').fetch()
18
+ }.to raise_exception(Twilio::REST::TwilioError)
19
+
20
+ values = {}
21
+ expect(
22
+ @holodeck.has_request?(Holodeck::Request.new(
23
+ method: 'get',
24
+ url: 'https://preview.twilio.com/permissions/VoicePermissions/Countries/US',
25
+ ))).to eq(true)
26
+ end
27
+
28
+ it "receives fetch responses" do
29
+ @holodeck.mock(Twilio::Response.new(
30
+ 200,
31
+ %q[
32
+ {
33
+ "iso_code": "US",
34
+ "name": "United States/Canada",
35
+ "country_codes": [
36
+ "+1"
37
+ ],
38
+ "continent": "NORTH_AMERICA",
39
+ "low_risk_numbers_enabled": false,
40
+ "high_risk_special_numbers_enabled": false,
41
+ "high_risk_tollfraud_numbers_enabled": false,
42
+ "url": "https://preview.twilio.com/permissions/VoicePermissions/Countries/US",
43
+ "links": {
44
+ "highrisk_special_prefixes": "https://preview.twilio.com/permissions/VoicePermissions/Countries/US/HighRiskSpecialPrefixes"
45
+ }
46
+ }
47
+ ]
48
+ ))
49
+
50
+ actual = @client.preview.permissions.voice_permissions \
51
+ .countries('US').fetch()
52
+
53
+ expect(actual).to_not eq(nil)
54
+ end
55
+
56
+ it "can read" do
57
+ @holodeck.mock(Twilio::Response.new(500, ''))
58
+
59
+ expect {
60
+ @client.preview.permissions.voice_permissions \
61
+ .countries.list()
62
+ }.to raise_exception(Twilio::REST::TwilioError)
63
+
64
+ values = {}
65
+ expect(
66
+ @holodeck.has_request?(Holodeck::Request.new(
67
+ method: 'get',
68
+ url: 'https://preview.twilio.com/permissions/VoicePermissions/Countries',
69
+ ))).to eq(true)
70
+ end
71
+
72
+ it "receives read_us responses" do
73
+ @holodeck.mock(Twilio::Response.new(
74
+ 200,
75
+ %q[
76
+ {
77
+ "content": [
78
+ {
79
+ "iso_code": "US",
80
+ "name": "United States/Canada",
81
+ "country_codes": [
82
+ "+1"
83
+ ],
84
+ "continent": "NORTH_AMERICA",
85
+ "low_risk_numbers_enabled": false,
86
+ "high_risk_special_numbers_enabled": false,
87
+ "high_risk_tollfraud_numbers_enabled": false,
88
+ "url": "https://preview.twilio.com/permissions/VoicePermissions/Countries/US",
89
+ "links": {
90
+ "highrisk_special_prefixes": "https://preview.twilio.com/permissions/VoicePermissions/Countries/US/HighRiskSpecialPrefixes"
91
+ }
92
+ }
93
+ ],
94
+ "meta": {
95
+ "first_page_url": "https://preview.twilio.com/permissions/VoicePermissions/Countries?PageSize=50&Page=0",
96
+ "key": "content",
97
+ "next_page_url": null,
98
+ "page": 0,
99
+ "page_size": 50,
100
+ "previous_page_url": null,
101
+ "url": "https://preview.twilio.com/permissions/VoicePermissions/Countries?PageSize=50&Page=0"
102
+ }
103
+ }
104
+ ]
105
+ ))
106
+
107
+ actual = @client.preview.permissions.voice_permissions \
108
+ .countries.list()
109
+
110
+ expect(actual).to_not eq(nil)
111
+ end
112
+ end
@@ -0,0 +1,77 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ require 'spec_helper.rb'
10
+
11
+ describe 'Settings' do
12
+ it "can fetch" do
13
+ @holodeck.mock(Twilio::Response.new(500, ''))
14
+
15
+ expect {
16
+ @client.preview.permissions.voice_permissions \
17
+ .settings().fetch()
18
+ }.to raise_exception(Twilio::REST::TwilioError)
19
+
20
+ values = {}
21
+ expect(
22
+ @holodeck.has_request?(Holodeck::Request.new(
23
+ method: 'get',
24
+ url: 'https://preview.twilio.com/permissions/VoicePermissions/Settings',
25
+ ))).to eq(true)
26
+ end
27
+
28
+ it "receives fetch responses" do
29
+ @holodeck.mock(Twilio::Response.new(
30
+ 200,
31
+ %q[
32
+ {
33
+ "inheritance": true,
34
+ "url": "https://preview.twilio.com/permissions/VoicePermissions/Settings"
35
+ }
36
+ ]
37
+ ))
38
+
39
+ actual = @client.preview.permissions.voice_permissions \
40
+ .settings().fetch()
41
+
42
+ expect(actual).to_not eq(nil)
43
+ end
44
+
45
+ it "can update" do
46
+ @holodeck.mock(Twilio::Response.new(500, ''))
47
+
48
+ expect {
49
+ @client.preview.permissions.voice_permissions \
50
+ .settings().update()
51
+ }.to raise_exception(Twilio::REST::TwilioError)
52
+
53
+ values = {}
54
+ expect(
55
+ @holodeck.has_request?(Holodeck::Request.new(
56
+ method: 'post',
57
+ url: 'https://preview.twilio.com/permissions/VoicePermissions/Settings',
58
+ ))).to eq(true)
59
+ end
60
+
61
+ it "receives update responses" do
62
+ @holodeck.mock(Twilio::Response.new(
63
+ 202,
64
+ %q[
65
+ {
66
+ "inheritance": true,
67
+ "url": "https://preview.twilio.com/permissions/VoicePermissions/Settings"
68
+ }
69
+ ]
70
+ ))
71
+
72
+ actual = @client.preview.permissions.voice_permissions \
73
+ .settings().update()
74
+
75
+ expect(actual).to_not eq(nil)
76
+ end
77
+ end