twilio-ruby 5.0.0.rc19 → 5.0.0.rc20
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/CHANGES.md +8 -0
- data/README.md +2 -2
- data/VERSIONS.md +64 -0
- data/lib/twilio-ruby/framework/{exception.rb → error.rb} +3 -2
- data/lib/twilio-ruby/framework/page.rb +3 -3
- data/lib/twilio-ruby/framework/serialize.rb +9 -0
- data/lib/twilio-ruby/framework/version.rb +1 -1
- data/lib/twilio-ruby/http/http_client.rb +1 -0
- data/lib/twilio-ruby/jwt/access_token.rb +28 -0
- data/lib/twilio-ruby/rest/client.rb +64 -42
- data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +303 -0
- data/lib/twilio-ruby/rest/fax/v1/fax.rb +80 -6
- data/lib/twilio-ruby/rest/messaging/v1/service.rb +50 -3
- data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +1 -1
- data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +2 -2
- data/lib/twilio-ruby/rest/preview/sync/service/document.rb +2 -2
- data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +2 -2
- data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +2 -2
- data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +38 -17
- data/lib/twilio-ruby/rest/preview/wireless/sim.rb +74 -2
- data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +377 -0
- data/lib/twilio-ruby/rest/sync/v1/service/document.rb +415 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +409 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +377 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +407 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +411 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +377 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +407 -0
- data/lib/twilio-ruby/rest/sync/v1/service.rb +469 -0
- data/lib/twilio-ruby/rest/sync/v1.rb +35 -0
- data/lib/twilio-ruby/rest/sync.rb +40 -0
- data/lib/twilio-ruby/rest/video/v1/room/recording.rb +324 -0
- data/lib/twilio-ruby/rest/video/v1/room.rb +37 -0
- data/lib/twilio-ruby/rest/wireless/v1/command.rb +344 -0
- data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +399 -0
- data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +222 -0
- data/lib/twilio-ruby/rest/wireless/v1/sim.rb +502 -0
- data/lib/twilio-ruby/rest/wireless/v1.rb +53 -0
- data/lib/twilio-ruby/rest/wireless.rb +48 -0
- data/lib/twilio-ruby/security/request_validator.rb +19 -1
- data/lib/twilio-ruby/version.rb +1 -1
- data/spec/framework/serialize_spec.rb +20 -1
- data/spec/integration/accounts/v1/credential/public_key_spec.rb +5 -5
- data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +1 -1
- data/spec/integration/api/v2010/account/address_spec.rb +5 -5
- data/spec/integration/api/v2010/account/application_spec.rb +5 -5
- data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +2 -2
- data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +1 -1
- data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +1 -1
- data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +1 -1
- data/spec/integration/api/v2010/account/available_phone_number_spec.rb +2 -2
- data/spec/integration/api/v2010/account/call/feedback_spec.rb +3 -3
- data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +3 -3
- data/spec/integration/api/v2010/account/call/notification_spec.rb +3 -3
- data/spec/integration/api/v2010/account/call/recording_spec.rb +3 -3
- data/spec/integration/api/v2010/account/call_spec.rb +5 -5
- data/spec/integration/api/v2010/account/conference/participant_spec.rb +5 -5
- data/spec/integration/api/v2010/account/conference_spec.rb +3 -3
- data/spec/integration/api/v2010/account/connect_app_spec.rb +3 -3
- data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +2 -2
- data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +4 -4
- data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +2 -2
- data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +2 -2
- data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +2 -2
- data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +5 -5
- data/spec/integration/api/v2010/account/key_spec.rb +4 -4
- data/spec/integration/api/v2010/account/message/feedback_spec.rb +1 -1
- data/spec/integration/api/v2010/account/message/media_spec.rb +3 -3
- data/spec/integration/api/v2010/account/message_spec.rb +5 -5
- data/spec/integration/api/v2010/account/new_key_spec.rb +1 -1
- data/spec/integration/api/v2010/account/new_signing_key_spec.rb +1 -1
- data/spec/integration/api/v2010/account/notification_spec.rb +3 -3
- data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +4 -4
- data/spec/integration/api/v2010/account/queue/member_spec.rb +3 -3
- data/spec/integration/api/v2010/account/queue_spec.rb +5 -5
- data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +3 -3
- data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +3 -3
- data/spec/integration/api/v2010/account/recording/transcription_spec.rb +3 -3
- data/spec/integration/api/v2010/account/recording_spec.rb +3 -3
- data/spec/integration/api/v2010/account/short_code_spec.rb +3 -3
- data/spec/integration/api/v2010/account/signing_key_spec.rb +4 -4
- data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +5 -5
- data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +5 -5
- data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +4 -4
- data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +4 -4
- data/spec/integration/api/v2010/account/sip/domain_spec.rb +5 -5
- data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +5 -5
- data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +5 -5
- data/spec/integration/api/v2010/account/token_spec.rb +1 -1
- data/spec/integration/api/v2010/account/transcription_spec.rb +3 -3
- data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +1 -1
- data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +1 -1
- data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +1 -1
- data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +1 -1
- data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +1 -1
- data/spec/integration/api/v2010/account/usage/record/today_spec.rb +1 -1
- data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +1 -1
- data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +1 -1
- data/spec/integration/api/v2010/account/usage/record_spec.rb +1 -1
- data/spec/integration/api/v2010/account/usage/trigger_spec.rb +5 -5
- data/spec/integration/api/v2010/account/validation_request_spec.rb +1 -1
- data/spec/integration/api/v2010/account_spec.rb +4 -4
- data/spec/integration/chat/v1/credential_spec.rb +5 -5
- data/spec/integration/chat/v1/service/channel/invite_spec.rb +4 -4
- data/spec/integration/chat/v1/service/channel/member_spec.rb +5 -5
- data/spec/integration/chat/v1/service/channel/message_spec.rb +5 -5
- data/spec/integration/chat/v1/service/channel_spec.rb +5 -5
- data/spec/integration/chat/v1/service/role_spec.rb +5 -5
- data/spec/integration/chat/v1/service/user/user_channel_spec.rb +1 -1
- data/spec/integration/chat/v1/service/user_spec.rb +5 -5
- data/spec/integration/chat/v1/service_spec.rb +5 -5
- data/spec/integration/chat/v2/credential_spec.rb +5 -5
- data/spec/integration/chat/v2/service/channel/invite_spec.rb +4 -4
- data/spec/integration/chat/v2/service/channel/member_spec.rb +5 -5
- data/spec/integration/chat/v2/service/channel/message_spec.rb +5 -5
- data/spec/integration/chat/v2/service/channel_spec.rb +5 -5
- data/spec/integration/chat/v2/service/role_spec.rb +5 -5
- data/spec/integration/chat/v2/service/user/user_channel_spec.rb +1 -1
- data/spec/integration/chat/v2/service/user_spec.rb +5 -5
- data/spec/integration/chat/v2/service_spec.rb +5 -5
- data/spec/integration/fax/v1/fax/fax_media_spec.rb +126 -0
- data/spec/integration/fax/v1/fax_spec.rb +48 -7
- data/spec/integration/ip_messaging/v1/credential_spec.rb +5 -5
- data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +4 -4
- data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +5 -5
- data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +5 -5
- data/spec/integration/ip_messaging/v1/service/channel_spec.rb +5 -5
- data/spec/integration/ip_messaging/v1/service/role_spec.rb +5 -5
- data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +1 -1
- data/spec/integration/ip_messaging/v1/service/user_spec.rb +5 -5
- data/spec/integration/ip_messaging/v1/service_spec.rb +5 -5
- data/spec/integration/ip_messaging/v2/credential_spec.rb +5 -5
- data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +4 -4
- data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +5 -5
- data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +5 -5
- data/spec/integration/ip_messaging/v2/service/channel_spec.rb +5 -5
- data/spec/integration/ip_messaging/v2/service/role_spec.rb +5 -5
- data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +1 -1
- data/spec/integration/ip_messaging/v2/service/user_spec.rb +5 -5
- data/spec/integration/ip_messaging/v2/service_spec.rb +5 -5
- data/spec/integration/lookups/v1/phone_number_spec.rb +1 -1
- data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +4 -4
- data/spec/integration/messaging/v1/service/phone_number_spec.rb +4 -4
- data/spec/integration/messaging/v1/service/short_code_spec.rb +4 -4
- data/spec/integration/messaging/v1/service_spec.rb +21 -5
- data/spec/integration/monitor/v1/alert_spec.rb +3 -3
- data/spec/integration/monitor/v1/event_spec.rb +2 -2
- data/spec/integration/notify/v1/credential_spec.rb +5 -5
- data/spec/integration/notify/v1/service/binding_spec.rb +4 -4
- data/spec/integration/notify/v1/service/notification_spec.rb +1 -1
- data/spec/integration/notify/v1/service/segment_spec.rb +1 -1
- data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +3 -3
- data/spec/integration/notify/v1/service/user/user_binding_spec.rb +4 -4
- data/spec/integration/notify/v1/service/user_spec.rb +4 -4
- data/spec/integration/notify/v1/service_spec.rb +5 -5
- data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +2 -2
- data/spec/integration/preview/marketplace/available_add_on_spec.rb +2 -2
- data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +3 -3
- data/spec/integration/preview/marketplace/installed_add_on_spec.rb +5 -5
- data/spec/integration/preview/sync/service/document/document_permission_spec.rb +4 -4
- data/spec/integration/preview/sync/service/document_spec.rb +6 -6
- data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +7 -7
- data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +4 -4
- data/spec/integration/preview/sync/service/sync_list_spec.rb +4 -4
- data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +7 -7
- data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +4 -4
- data/spec/integration/preview/sync/service/sync_map_spec.rb +4 -4
- data/spec/integration/preview/sync/service_spec.rb +5 -5
- data/spec/integration/preview/wireless/command_spec.rb +3 -3
- data/spec/integration/preview/wireless/rate_plan_spec.rb +45 -45
- data/spec/integration/preview/wireless/sim/usage_spec.rb +1 -1
- data/spec/integration/preview/wireless/sim_spec.rb +27 -3
- data/spec/integration/pricing/v1/messaging/country_spec.rb +2 -2
- data/spec/integration/pricing/v1/phone_number/country_spec.rb +2 -2
- data/spec/integration/pricing/v1/voice/country_spec.rb +2 -2
- data/spec/integration/pricing/v1/voice/number_spec.rb +1 -1
- data/spec/integration/sync/v1/service/document/document_permission_spec.rb +206 -0
- data/spec/integration/sync/v1/service/document_spec.rb +254 -0
- data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +256 -0
- data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +206 -0
- data/spec/integration/sync/v1/service/sync_list_spec.rb +207 -0
- data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +257 -0
- data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +206 -0
- data/spec/integration/sync/v1/service/sync_map_spec.rb +207 -0
- data/spec/integration/sync/v1/service_spec.rb +244 -0
- data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +5 -5
- data/spec/integration/taskrouter/v1/workspace/event_spec.rb +2 -2
- data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +3 -3
- data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +2 -2
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +1 -1
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +1 -1
- data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +5 -5
- data/spec/integration/taskrouter/v1/workspace/task_spec.rb +5 -5
- data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +3 -3
- data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +3 -3
- data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +1 -1
- data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +1 -1
- data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +5 -5
- data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +1 -1
- data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +5 -5
- data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +1 -1
- data/spec/integration/taskrouter/v1/workspace_spec.rb +5 -5
- data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +4 -4
- data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +4 -4
- data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +5 -5
- data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +4 -4
- data/spec/integration/trunking/v1/trunk_spec.rb +5 -5
- data/spec/integration/video/v1/recording_spec.rb +3 -3
- data/spec/integration/video/v1/room/recording_spec.rb +145 -0
- data/spec/integration/video/v1/room_spec.rb +20 -8
- data/spec/integration/wireless/v1/command_spec.rb +166 -0
- data/spec/integration/wireless/v1/rate_plan_spec.rb +260 -0
- data/spec/integration/wireless/v1/sim/usage_record_spec.rb +65 -0
- data/spec/integration/wireless/v1/sim_spec.rb +208 -0
- data/twilio-ruby.gemspec +1 -1
- metadata +55 -5
|
@@ -0,0 +1,377 @@
|
|
|
1
|
+
##
|
|
2
|
+
# This code was generated by
|
|
3
|
+
# \ / _ _ _| _ _
|
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
|
5
|
+
# / /
|
|
6
|
+
|
|
7
|
+
module Twilio
|
|
8
|
+
module REST
|
|
9
|
+
class Sync < Domain
|
|
10
|
+
class V1 < Version
|
|
11
|
+
class ServiceContext < InstanceContext
|
|
12
|
+
class SyncListContext < InstanceContext
|
|
13
|
+
class SyncListPermissionList < ListResource
|
|
14
|
+
##
|
|
15
|
+
# Initialize the SyncListPermissionList
|
|
16
|
+
# @param [Version] version Version that contains the resource
|
|
17
|
+
# @param [String] service_sid The unique SID identifier of the Sync Service
|
|
18
|
+
# Instance.
|
|
19
|
+
# @param [String] list_sid The unique SID identifier of the Sync List to which the
|
|
20
|
+
# Permission applies.
|
|
21
|
+
# @return [SyncListPermissionList] SyncListPermissionList
|
|
22
|
+
def initialize(version, service_sid: nil, list_sid: nil)
|
|
23
|
+
super(version)
|
|
24
|
+
|
|
25
|
+
# Path Solution
|
|
26
|
+
@solution = {
|
|
27
|
+
service_sid: service_sid,
|
|
28
|
+
list_sid: list_sid
|
|
29
|
+
}
|
|
30
|
+
@uri = "/Services/#{@solution[:service_sid]}/Lists/#{@solution[:list_sid]}/Permissions"
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
##
|
|
34
|
+
# Lists SyncListPermissionInstance records from the API as a list.
|
|
35
|
+
# Unlike stream(), this operation is eager and will load `limit` records into
|
|
36
|
+
# memory before returning.
|
|
37
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
38
|
+
# guarantees to never return more than limit. Default is no limit
|
|
39
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
40
|
+
# the default value of 50 records. If no page_size is defined
|
|
41
|
+
# but a limit is defined, stream() will attempt to read the
|
|
42
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
43
|
+
# @return [Array] Array of up to limit results
|
|
44
|
+
def list(limit: nil, page_size: nil)
|
|
45
|
+
self.stream(
|
|
46
|
+
limit: limit,
|
|
47
|
+
page_size: page_size
|
|
48
|
+
).entries
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
##
|
|
52
|
+
# Streams SyncListPermissionInstance records from the API as an Enumerable.
|
|
53
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
54
|
+
# is reached.
|
|
55
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
56
|
+
# guarantees to never return more than limit. Default is no limit
|
|
57
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
58
|
+
# the default value of 50 records. If no page_size is defined
|
|
59
|
+
# but a limit is defined, stream() will attempt to read the
|
|
60
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
61
|
+
# @return [Enumerable] Enumerable that will yield up to limit results
|
|
62
|
+
def stream(limit: nil, page_size: nil)
|
|
63
|
+
limits = @version.read_limits(limit, page_size)
|
|
64
|
+
|
|
65
|
+
page = self.page(
|
|
66
|
+
page_size: limits[:page_size],
|
|
67
|
+
)
|
|
68
|
+
|
|
69
|
+
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
##
|
|
73
|
+
# When passed a block, yields SyncListPermissionInstance records from the API.
|
|
74
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
75
|
+
# is reached.
|
|
76
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
77
|
+
# guarantees to never return more than limit. Default is no limit
|
|
78
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
79
|
+
# the default value of 50 records. If no page_size is defined
|
|
80
|
+
# but a limit is defined, stream() will attempt to read the
|
|
81
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
82
|
+
def each
|
|
83
|
+
limits = @version.read_limits
|
|
84
|
+
|
|
85
|
+
page = self.page(
|
|
86
|
+
page_size: limits[:page_size],
|
|
87
|
+
)
|
|
88
|
+
|
|
89
|
+
@version.stream(page,
|
|
90
|
+
limit: limits[:limit],
|
|
91
|
+
page_limit: limits[:page_limit]).each {|x| yield x}
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
##
|
|
95
|
+
# Retrieve a single page of SyncListPermissionInstance records from the API.
|
|
96
|
+
# Request is executed immediately.
|
|
97
|
+
# @param [String] page_token PageToken provided by the API
|
|
98
|
+
# @param [Integer] page_number Page Number, this value is simply for client state
|
|
99
|
+
# @param [Integer] page_size Number of records to return, defaults to 50
|
|
100
|
+
# @return [Page] Page of SyncListPermissionInstance
|
|
101
|
+
def page(page_token: nil, page_number: nil, page_size: nil)
|
|
102
|
+
params = {
|
|
103
|
+
'PageToken' => page_token,
|
|
104
|
+
'Page' => page_number,
|
|
105
|
+
'PageSize' => page_size,
|
|
106
|
+
}
|
|
107
|
+
response = @version.page(
|
|
108
|
+
'GET',
|
|
109
|
+
@uri,
|
|
110
|
+
params
|
|
111
|
+
)
|
|
112
|
+
return SyncListPermissionPage.new(@version, response, @solution)
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
##
|
|
116
|
+
# Provide a user friendly representation
|
|
117
|
+
def to_s
|
|
118
|
+
'#<Twilio.Sync.V1.SyncListPermissionList>'
|
|
119
|
+
end
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
class SyncListPermissionPage < Page
|
|
123
|
+
##
|
|
124
|
+
# Initialize the SyncListPermissionPage
|
|
125
|
+
# @param [Version] version Version that contains the resource
|
|
126
|
+
# @param [Response] response Response from the API
|
|
127
|
+
# @param [Hash] solution Path solution for the resource
|
|
128
|
+
# @param [String] service_sid The unique SID identifier of the Sync Service
|
|
129
|
+
# Instance.
|
|
130
|
+
# @param [String] list_sid The unique SID identifier of the Sync List to which the
|
|
131
|
+
# Permission applies.
|
|
132
|
+
# @return [SyncListPermissionPage] SyncListPermissionPage
|
|
133
|
+
def initialize(version, response, solution)
|
|
134
|
+
super(version, response)
|
|
135
|
+
|
|
136
|
+
# Path Solution
|
|
137
|
+
@solution = solution
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
##
|
|
141
|
+
# Build an instance of SyncListPermissionInstance
|
|
142
|
+
# @param [Hash] payload Payload response from the API
|
|
143
|
+
# @return [SyncListPermissionInstance] SyncListPermissionInstance
|
|
144
|
+
def get_instance(payload)
|
|
145
|
+
return SyncListPermissionInstance.new(
|
|
146
|
+
@version,
|
|
147
|
+
payload,
|
|
148
|
+
service_sid: @solution[:service_sid],
|
|
149
|
+
list_sid: @solution[:list_sid],
|
|
150
|
+
)
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
##
|
|
154
|
+
# Provide a user friendly representation
|
|
155
|
+
def to_s
|
|
156
|
+
'<Twilio.Sync.V1.SyncListPermissionPage>'
|
|
157
|
+
end
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
class SyncListPermissionContext < InstanceContext
|
|
161
|
+
##
|
|
162
|
+
# Initialize the SyncListPermissionContext
|
|
163
|
+
# @param [Version] version Version that contains the resource
|
|
164
|
+
# @param [String] service_sid The service_sid
|
|
165
|
+
# @param [String] list_sid Identifier of the Sync List. Either a SID or a unique
|
|
166
|
+
# name.
|
|
167
|
+
# @param [String] identity Arbitrary string identifier representing a user
|
|
168
|
+
# associated with an FPA token, assigned by the developer.
|
|
169
|
+
# @return [SyncListPermissionContext] SyncListPermissionContext
|
|
170
|
+
def initialize(version, service_sid, list_sid, identity)
|
|
171
|
+
super(version)
|
|
172
|
+
|
|
173
|
+
# Path Solution
|
|
174
|
+
@solution = {
|
|
175
|
+
service_sid: service_sid,
|
|
176
|
+
list_sid: list_sid,
|
|
177
|
+
identity: identity,
|
|
178
|
+
}
|
|
179
|
+
@uri = "/Services/#{@solution[:service_sid]}/Lists/#{@solution[:list_sid]}/Permissions/#{@solution[:identity]}"
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
##
|
|
183
|
+
# Fetch a SyncListPermissionInstance
|
|
184
|
+
# @return [SyncListPermissionInstance] Fetched SyncListPermissionInstance
|
|
185
|
+
def fetch
|
|
186
|
+
params = {}
|
|
187
|
+
|
|
188
|
+
payload = @version.fetch(
|
|
189
|
+
'GET',
|
|
190
|
+
@uri,
|
|
191
|
+
params,
|
|
192
|
+
)
|
|
193
|
+
|
|
194
|
+
return SyncListPermissionInstance.new(
|
|
195
|
+
@version,
|
|
196
|
+
payload,
|
|
197
|
+
service_sid: @solution[:service_sid],
|
|
198
|
+
list_sid: @solution[:list_sid],
|
|
199
|
+
identity: @solution[:identity],
|
|
200
|
+
)
|
|
201
|
+
end
|
|
202
|
+
|
|
203
|
+
##
|
|
204
|
+
# Deletes the SyncListPermissionInstance
|
|
205
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
206
|
+
def delete
|
|
207
|
+
return @version.delete('delete', @uri)
|
|
208
|
+
end
|
|
209
|
+
|
|
210
|
+
##
|
|
211
|
+
# Update the SyncListPermissionInstance
|
|
212
|
+
# @param [Boolean] read Boolean flag specifying whether the identity can read the
|
|
213
|
+
# Sync List.
|
|
214
|
+
# @param [Boolean] write Boolean flag specifying whether the identity can create,
|
|
215
|
+
# update and delete Items of the Sync List.
|
|
216
|
+
# @param [Boolean] manage Boolean flag specifying whether the identity can delete
|
|
217
|
+
# the Sync List.
|
|
218
|
+
# @return [SyncListPermissionInstance] Updated SyncListPermissionInstance
|
|
219
|
+
def update(read: nil, write: nil, manage: nil)
|
|
220
|
+
data = {
|
|
221
|
+
'Read' => read,
|
|
222
|
+
'Write' => write,
|
|
223
|
+
'Manage' => manage,
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
payload = @version.update(
|
|
227
|
+
'POST',
|
|
228
|
+
@uri,
|
|
229
|
+
data: data,
|
|
230
|
+
)
|
|
231
|
+
|
|
232
|
+
return SyncListPermissionInstance.new(
|
|
233
|
+
@version,
|
|
234
|
+
payload,
|
|
235
|
+
service_sid: @solution[:service_sid],
|
|
236
|
+
list_sid: @solution[:list_sid],
|
|
237
|
+
identity: @solution[:identity],
|
|
238
|
+
)
|
|
239
|
+
end
|
|
240
|
+
|
|
241
|
+
##
|
|
242
|
+
# Provide a user friendly representation
|
|
243
|
+
def to_s
|
|
244
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
|
245
|
+
"#<Twilio.Sync.V1.SyncListPermissionContext #{context}>"
|
|
246
|
+
end
|
|
247
|
+
end
|
|
248
|
+
|
|
249
|
+
class SyncListPermissionInstance < InstanceResource
|
|
250
|
+
##
|
|
251
|
+
# Initialize the SyncListPermissionInstance
|
|
252
|
+
# @param [Version] version Version that contains the resource
|
|
253
|
+
# @param [Hash] payload payload that contains response from Twilio
|
|
254
|
+
# @param [String] service_sid The unique SID identifier of the Sync Service
|
|
255
|
+
# Instance.
|
|
256
|
+
# @param [String] list_sid The unique SID identifier of the Sync List to which the
|
|
257
|
+
# Permission applies.
|
|
258
|
+
# @param [String] identity Arbitrary string identifier representing a user
|
|
259
|
+
# associated with an FPA token, assigned by the developer.
|
|
260
|
+
# @return [SyncListPermissionInstance] SyncListPermissionInstance
|
|
261
|
+
def initialize(version, payload, service_sid: nil, list_sid: nil, identity: nil)
|
|
262
|
+
super(version)
|
|
263
|
+
|
|
264
|
+
# Marshaled Properties
|
|
265
|
+
@properties = {
|
|
266
|
+
'account_sid' => payload['account_sid'],
|
|
267
|
+
'service_sid' => payload['service_sid'],
|
|
268
|
+
'list_sid' => payload['list_sid'],
|
|
269
|
+
'identity' => payload['identity'],
|
|
270
|
+
'read' => payload['read'],
|
|
271
|
+
'write' => payload['write'],
|
|
272
|
+
'manage' => payload['manage'],
|
|
273
|
+
'url' => payload['url'],
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
# Context
|
|
277
|
+
@instance_context = nil
|
|
278
|
+
@params = {
|
|
279
|
+
'service_sid' => service_sid,
|
|
280
|
+
'list_sid' => list_sid,
|
|
281
|
+
'identity' => identity || @properties['identity'],
|
|
282
|
+
}
|
|
283
|
+
end
|
|
284
|
+
|
|
285
|
+
##
|
|
286
|
+
# Generate an instance context for the instance, the context is capable of
|
|
287
|
+
# performing various actions. All instance actions are proxied to the context
|
|
288
|
+
# @param [Version] version Version that contains the resource
|
|
289
|
+
# @return [SyncListPermissionContext] SyncListPermissionContext for this SyncListPermissionInstance
|
|
290
|
+
def context
|
|
291
|
+
unless @instance_context
|
|
292
|
+
@instance_context = SyncListPermissionContext.new(
|
|
293
|
+
@version,
|
|
294
|
+
@params['service_sid'],
|
|
295
|
+
@params['list_sid'],
|
|
296
|
+
@params['identity'],
|
|
297
|
+
)
|
|
298
|
+
end
|
|
299
|
+
@instance_context
|
|
300
|
+
end
|
|
301
|
+
|
|
302
|
+
def account_sid
|
|
303
|
+
@properties['account_sid']
|
|
304
|
+
end
|
|
305
|
+
|
|
306
|
+
def service_sid
|
|
307
|
+
@properties['service_sid']
|
|
308
|
+
end
|
|
309
|
+
|
|
310
|
+
def list_sid
|
|
311
|
+
@properties['list_sid']
|
|
312
|
+
end
|
|
313
|
+
|
|
314
|
+
def identity
|
|
315
|
+
@properties['identity']
|
|
316
|
+
end
|
|
317
|
+
|
|
318
|
+
def read
|
|
319
|
+
@properties['read']
|
|
320
|
+
end
|
|
321
|
+
|
|
322
|
+
def write
|
|
323
|
+
@properties['write']
|
|
324
|
+
end
|
|
325
|
+
|
|
326
|
+
def manage
|
|
327
|
+
@properties['manage']
|
|
328
|
+
end
|
|
329
|
+
|
|
330
|
+
def url
|
|
331
|
+
@properties['url']
|
|
332
|
+
end
|
|
333
|
+
|
|
334
|
+
##
|
|
335
|
+
# Fetch a SyncListPermissionInstance
|
|
336
|
+
# @return [SyncListPermissionInstance] Fetched SyncListPermissionInstance
|
|
337
|
+
def fetch
|
|
338
|
+
context.fetch
|
|
339
|
+
end
|
|
340
|
+
|
|
341
|
+
##
|
|
342
|
+
# Deletes the SyncListPermissionInstance
|
|
343
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
344
|
+
def delete
|
|
345
|
+
context.delete
|
|
346
|
+
end
|
|
347
|
+
|
|
348
|
+
##
|
|
349
|
+
# Update the SyncListPermissionInstance
|
|
350
|
+
# @param [Boolean] read Boolean flag specifying whether the identity can read the
|
|
351
|
+
# Sync List.
|
|
352
|
+
# @param [Boolean] write Boolean flag specifying whether the identity can create,
|
|
353
|
+
# update and delete Items of the Sync List.
|
|
354
|
+
# @param [Boolean] manage Boolean flag specifying whether the identity can delete
|
|
355
|
+
# the Sync List.
|
|
356
|
+
# @return [SyncListPermissionInstance] Updated SyncListPermissionInstance
|
|
357
|
+
def update(read: nil, write: nil, manage: nil)
|
|
358
|
+
context.update(
|
|
359
|
+
read: read,
|
|
360
|
+
write: write,
|
|
361
|
+
manage: manage,
|
|
362
|
+
)
|
|
363
|
+
end
|
|
364
|
+
|
|
365
|
+
##
|
|
366
|
+
# Provide a user friendly representation
|
|
367
|
+
def to_s
|
|
368
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
|
369
|
+
"<Twilio.Sync.V1.SyncListPermissionInstance #{values}>"
|
|
370
|
+
end
|
|
371
|
+
end
|
|
372
|
+
end
|
|
373
|
+
end
|
|
374
|
+
end
|
|
375
|
+
end
|
|
376
|
+
end
|
|
377
|
+
end
|
|
@@ -0,0 +1,407 @@
|
|
|
1
|
+
##
|
|
2
|
+
# This code was generated by
|
|
3
|
+
# \ / _ _ _| _ _
|
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
|
5
|
+
# / /
|
|
6
|
+
|
|
7
|
+
module Twilio
|
|
8
|
+
module REST
|
|
9
|
+
class Sync < Domain
|
|
10
|
+
class V1 < Version
|
|
11
|
+
class ServiceContext < InstanceContext
|
|
12
|
+
class SyncListList < ListResource
|
|
13
|
+
##
|
|
14
|
+
# Initialize the SyncListList
|
|
15
|
+
# @param [Version] version Version that contains the resource
|
|
16
|
+
# @param [String] service_sid The service_sid
|
|
17
|
+
# @return [SyncListList] SyncListList
|
|
18
|
+
def initialize(version, service_sid: nil)
|
|
19
|
+
super(version)
|
|
20
|
+
|
|
21
|
+
# Path Solution
|
|
22
|
+
@solution = {
|
|
23
|
+
service_sid: service_sid
|
|
24
|
+
}
|
|
25
|
+
@uri = "/Services/#{@solution[:service_sid]}/Lists"
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
##
|
|
29
|
+
# Retrieve a single page of SyncListInstance records from the API.
|
|
30
|
+
# Request is executed immediately.
|
|
31
|
+
# @param [String] unique_name The unique_name
|
|
32
|
+
# @return [SyncListInstance] Newly created SyncListInstance
|
|
33
|
+
def create(unique_name: nil)
|
|
34
|
+
data = {
|
|
35
|
+
'UniqueName' => unique_name,
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
payload = @version.create(
|
|
39
|
+
'POST',
|
|
40
|
+
@uri,
|
|
41
|
+
data: data
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
return SyncListInstance.new(
|
|
45
|
+
@version,
|
|
46
|
+
payload,
|
|
47
|
+
service_sid: @solution[:service_sid],
|
|
48
|
+
)
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
##
|
|
52
|
+
# Lists SyncListInstance records from the API as a list.
|
|
53
|
+
# Unlike stream(), this operation is eager and will load `limit` records into
|
|
54
|
+
# memory before returning.
|
|
55
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
56
|
+
# guarantees to never return more than limit. Default is no limit
|
|
57
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
58
|
+
# the default value of 50 records. If no page_size is defined
|
|
59
|
+
# but a limit is defined, stream() will attempt to read the
|
|
60
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
61
|
+
# @return [Array] Array of up to limit results
|
|
62
|
+
def list(limit: nil, page_size: nil)
|
|
63
|
+
self.stream(
|
|
64
|
+
limit: limit,
|
|
65
|
+
page_size: page_size
|
|
66
|
+
).entries
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
##
|
|
70
|
+
# Streams SyncListInstance records from the API as an Enumerable.
|
|
71
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
72
|
+
# is reached.
|
|
73
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
74
|
+
# guarantees to never return more than limit. Default is no limit
|
|
75
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
76
|
+
# the default value of 50 records. If no page_size is defined
|
|
77
|
+
# but a limit is defined, stream() will attempt to read the
|
|
78
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
79
|
+
# @return [Enumerable] Enumerable that will yield up to limit results
|
|
80
|
+
def stream(limit: nil, page_size: nil)
|
|
81
|
+
limits = @version.read_limits(limit, page_size)
|
|
82
|
+
|
|
83
|
+
page = self.page(
|
|
84
|
+
page_size: limits[:page_size],
|
|
85
|
+
)
|
|
86
|
+
|
|
87
|
+
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
##
|
|
91
|
+
# When passed a block, yields SyncListInstance records from the API.
|
|
92
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
93
|
+
# is reached.
|
|
94
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
95
|
+
# guarantees to never return more than limit. Default is no limit
|
|
96
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
97
|
+
# the default value of 50 records. If no page_size is defined
|
|
98
|
+
# but a limit is defined, stream() will attempt to read the
|
|
99
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
100
|
+
def each
|
|
101
|
+
limits = @version.read_limits
|
|
102
|
+
|
|
103
|
+
page = self.page(
|
|
104
|
+
page_size: limits[:page_size],
|
|
105
|
+
)
|
|
106
|
+
|
|
107
|
+
@version.stream(page,
|
|
108
|
+
limit: limits[:limit],
|
|
109
|
+
page_limit: limits[:page_limit]).each {|x| yield x}
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
##
|
|
113
|
+
# Retrieve a single page of SyncListInstance records from the API.
|
|
114
|
+
# Request is executed immediately.
|
|
115
|
+
# @param [String] page_token PageToken provided by the API
|
|
116
|
+
# @param [Integer] page_number Page Number, this value is simply for client state
|
|
117
|
+
# @param [Integer] page_size Number of records to return, defaults to 50
|
|
118
|
+
# @return [Page] Page of SyncListInstance
|
|
119
|
+
def page(page_token: nil, page_number: nil, page_size: nil)
|
|
120
|
+
params = {
|
|
121
|
+
'PageToken' => page_token,
|
|
122
|
+
'Page' => page_number,
|
|
123
|
+
'PageSize' => page_size,
|
|
124
|
+
}
|
|
125
|
+
response = @version.page(
|
|
126
|
+
'GET',
|
|
127
|
+
@uri,
|
|
128
|
+
params
|
|
129
|
+
)
|
|
130
|
+
return SyncListPage.new(@version, response, @solution)
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
##
|
|
134
|
+
# Provide a user friendly representation
|
|
135
|
+
def to_s
|
|
136
|
+
'#<Twilio.Sync.V1.SyncListList>'
|
|
137
|
+
end
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
class SyncListPage < Page
|
|
141
|
+
##
|
|
142
|
+
# Initialize the SyncListPage
|
|
143
|
+
# @param [Version] version Version that contains the resource
|
|
144
|
+
# @param [Response] response Response from the API
|
|
145
|
+
# @param [Hash] solution Path solution for the resource
|
|
146
|
+
# @param [String] service_sid The service_sid
|
|
147
|
+
# @return [SyncListPage] SyncListPage
|
|
148
|
+
def initialize(version, response, solution)
|
|
149
|
+
super(version, response)
|
|
150
|
+
|
|
151
|
+
# Path Solution
|
|
152
|
+
@solution = solution
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
##
|
|
156
|
+
# Build an instance of SyncListInstance
|
|
157
|
+
# @param [Hash] payload Payload response from the API
|
|
158
|
+
# @return [SyncListInstance] SyncListInstance
|
|
159
|
+
def get_instance(payload)
|
|
160
|
+
return SyncListInstance.new(
|
|
161
|
+
@version,
|
|
162
|
+
payload,
|
|
163
|
+
service_sid: @solution[:service_sid],
|
|
164
|
+
)
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
##
|
|
168
|
+
# Provide a user friendly representation
|
|
169
|
+
def to_s
|
|
170
|
+
'<Twilio.Sync.V1.SyncListPage>'
|
|
171
|
+
end
|
|
172
|
+
end
|
|
173
|
+
|
|
174
|
+
class SyncListContext < InstanceContext
|
|
175
|
+
##
|
|
176
|
+
# Initialize the SyncListContext
|
|
177
|
+
# @param [Version] version Version that contains the resource
|
|
178
|
+
# @param [String] service_sid The service_sid
|
|
179
|
+
# @param [String] sid The sid
|
|
180
|
+
# @return [SyncListContext] SyncListContext
|
|
181
|
+
def initialize(version, service_sid, sid)
|
|
182
|
+
super(version)
|
|
183
|
+
|
|
184
|
+
# Path Solution
|
|
185
|
+
@solution = {
|
|
186
|
+
service_sid: service_sid,
|
|
187
|
+
sid: sid,
|
|
188
|
+
}
|
|
189
|
+
@uri = "/Services/#{@solution[:service_sid]}/Lists/#{@solution[:sid]}"
|
|
190
|
+
|
|
191
|
+
# Dependents
|
|
192
|
+
@sync_list_items = nil
|
|
193
|
+
@sync_list_permissions = nil
|
|
194
|
+
end
|
|
195
|
+
|
|
196
|
+
##
|
|
197
|
+
# Fetch a SyncListInstance
|
|
198
|
+
# @return [SyncListInstance] Fetched SyncListInstance
|
|
199
|
+
def fetch
|
|
200
|
+
params = {}
|
|
201
|
+
|
|
202
|
+
payload = @version.fetch(
|
|
203
|
+
'GET',
|
|
204
|
+
@uri,
|
|
205
|
+
params,
|
|
206
|
+
)
|
|
207
|
+
|
|
208
|
+
return SyncListInstance.new(
|
|
209
|
+
@version,
|
|
210
|
+
payload,
|
|
211
|
+
service_sid: @solution[:service_sid],
|
|
212
|
+
sid: @solution[:sid],
|
|
213
|
+
)
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
##
|
|
217
|
+
# Deletes the SyncListInstance
|
|
218
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
219
|
+
def delete
|
|
220
|
+
return @version.delete('delete', @uri)
|
|
221
|
+
end
|
|
222
|
+
|
|
223
|
+
##
|
|
224
|
+
# Access the sync_list_items
|
|
225
|
+
# @return [SyncListItemList] SyncListItemList
|
|
226
|
+
def sync_list_items(index=:unset)
|
|
227
|
+
if index != :unset
|
|
228
|
+
return SyncListItemContext.new(
|
|
229
|
+
@version,
|
|
230
|
+
@solution[:service_sid],
|
|
231
|
+
@solution[:sid],
|
|
232
|
+
index,
|
|
233
|
+
)
|
|
234
|
+
end
|
|
235
|
+
|
|
236
|
+
unless @sync_list_items
|
|
237
|
+
@sync_list_items = SyncListItemList.new(
|
|
238
|
+
@version,
|
|
239
|
+
service_sid: @solution[:service_sid],
|
|
240
|
+
list_sid: @solution[:sid],
|
|
241
|
+
)
|
|
242
|
+
end
|
|
243
|
+
|
|
244
|
+
@sync_list_items
|
|
245
|
+
end
|
|
246
|
+
|
|
247
|
+
##
|
|
248
|
+
# Access the sync_list_permissions
|
|
249
|
+
# @return [SyncListPermissionList] SyncListPermissionList
|
|
250
|
+
def sync_list_permissions(identity=:unset)
|
|
251
|
+
if identity != :unset
|
|
252
|
+
return SyncListPermissionContext.new(
|
|
253
|
+
@version,
|
|
254
|
+
@solution[:service_sid],
|
|
255
|
+
@solution[:sid],
|
|
256
|
+
identity,
|
|
257
|
+
)
|
|
258
|
+
end
|
|
259
|
+
|
|
260
|
+
unless @sync_list_permissions
|
|
261
|
+
@sync_list_permissions = SyncListPermissionList.new(
|
|
262
|
+
@version,
|
|
263
|
+
service_sid: @solution[:service_sid],
|
|
264
|
+
list_sid: @solution[:sid],
|
|
265
|
+
)
|
|
266
|
+
end
|
|
267
|
+
|
|
268
|
+
@sync_list_permissions
|
|
269
|
+
end
|
|
270
|
+
|
|
271
|
+
##
|
|
272
|
+
# Provide a user friendly representation
|
|
273
|
+
def to_s
|
|
274
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
|
275
|
+
"#<Twilio.Sync.V1.SyncListContext #{context}>"
|
|
276
|
+
end
|
|
277
|
+
end
|
|
278
|
+
|
|
279
|
+
class SyncListInstance < InstanceResource
|
|
280
|
+
##
|
|
281
|
+
# Initialize the SyncListInstance
|
|
282
|
+
# @param [Version] version Version that contains the resource
|
|
283
|
+
# @param [Hash] payload payload that contains response from Twilio
|
|
284
|
+
# @param [String] service_sid The service_sid
|
|
285
|
+
# @param [String] sid The sid
|
|
286
|
+
# @return [SyncListInstance] SyncListInstance
|
|
287
|
+
def initialize(version, payload, service_sid: nil, sid: nil)
|
|
288
|
+
super(version)
|
|
289
|
+
|
|
290
|
+
# Marshaled Properties
|
|
291
|
+
@properties = {
|
|
292
|
+
'sid' => payload['sid'],
|
|
293
|
+
'unique_name' => payload['unique_name'],
|
|
294
|
+
'account_sid' => payload['account_sid'],
|
|
295
|
+
'service_sid' => payload['service_sid'],
|
|
296
|
+
'url' => payload['url'],
|
|
297
|
+
'links' => payload['links'],
|
|
298
|
+
'revision' => payload['revision'],
|
|
299
|
+
'date_created' => Twilio.deserialize_iso8601(payload['date_created']),
|
|
300
|
+
'date_updated' => Twilio.deserialize_iso8601(payload['date_updated']),
|
|
301
|
+
'created_by' => payload['created_by'],
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
# Context
|
|
305
|
+
@instance_context = nil
|
|
306
|
+
@params = {
|
|
307
|
+
'service_sid' => service_sid,
|
|
308
|
+
'sid' => sid || @properties['sid'],
|
|
309
|
+
}
|
|
310
|
+
end
|
|
311
|
+
|
|
312
|
+
##
|
|
313
|
+
# Generate an instance context for the instance, the context is capable of
|
|
314
|
+
# performing various actions. All instance actions are proxied to the context
|
|
315
|
+
# @param [Version] version Version that contains the resource
|
|
316
|
+
# @return [SyncListContext] SyncListContext for this SyncListInstance
|
|
317
|
+
def context
|
|
318
|
+
unless @instance_context
|
|
319
|
+
@instance_context = SyncListContext.new(
|
|
320
|
+
@version,
|
|
321
|
+
@params['service_sid'],
|
|
322
|
+
@params['sid'],
|
|
323
|
+
)
|
|
324
|
+
end
|
|
325
|
+
@instance_context
|
|
326
|
+
end
|
|
327
|
+
|
|
328
|
+
def sid
|
|
329
|
+
@properties['sid']
|
|
330
|
+
end
|
|
331
|
+
|
|
332
|
+
def unique_name
|
|
333
|
+
@properties['unique_name']
|
|
334
|
+
end
|
|
335
|
+
|
|
336
|
+
def account_sid
|
|
337
|
+
@properties['account_sid']
|
|
338
|
+
end
|
|
339
|
+
|
|
340
|
+
def service_sid
|
|
341
|
+
@properties['service_sid']
|
|
342
|
+
end
|
|
343
|
+
|
|
344
|
+
def url
|
|
345
|
+
@properties['url']
|
|
346
|
+
end
|
|
347
|
+
|
|
348
|
+
def links
|
|
349
|
+
@properties['links']
|
|
350
|
+
end
|
|
351
|
+
|
|
352
|
+
def revision
|
|
353
|
+
@properties['revision']
|
|
354
|
+
end
|
|
355
|
+
|
|
356
|
+
def date_created
|
|
357
|
+
@properties['date_created']
|
|
358
|
+
end
|
|
359
|
+
|
|
360
|
+
def date_updated
|
|
361
|
+
@properties['date_updated']
|
|
362
|
+
end
|
|
363
|
+
|
|
364
|
+
def created_by
|
|
365
|
+
@properties['created_by']
|
|
366
|
+
end
|
|
367
|
+
|
|
368
|
+
##
|
|
369
|
+
# Fetch a SyncListInstance
|
|
370
|
+
# @return [SyncListInstance] Fetched SyncListInstance
|
|
371
|
+
def fetch
|
|
372
|
+
context.fetch
|
|
373
|
+
end
|
|
374
|
+
|
|
375
|
+
##
|
|
376
|
+
# Deletes the SyncListInstance
|
|
377
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
378
|
+
def delete
|
|
379
|
+
context.delete
|
|
380
|
+
end
|
|
381
|
+
|
|
382
|
+
##
|
|
383
|
+
# Access the sync_list_items
|
|
384
|
+
# @return [sync_list_items] sync_list_items
|
|
385
|
+
def sync_list_items
|
|
386
|
+
context.sync_list_items
|
|
387
|
+
end
|
|
388
|
+
|
|
389
|
+
##
|
|
390
|
+
# Access the sync_list_permissions
|
|
391
|
+
# @return [sync_list_permissions] sync_list_permissions
|
|
392
|
+
def sync_list_permissions
|
|
393
|
+
context.sync_list_permissions
|
|
394
|
+
end
|
|
395
|
+
|
|
396
|
+
##
|
|
397
|
+
# Provide a user friendly representation
|
|
398
|
+
def to_s
|
|
399
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
|
400
|
+
"<Twilio.Sync.V1.SyncListInstance #{values}>"
|
|
401
|
+
end
|
|
402
|
+
end
|
|
403
|
+
end
|
|
404
|
+
end
|
|
405
|
+
end
|
|
406
|
+
end
|
|
407
|
+
end
|