Class: Twilio::REST::Client
- Inherits:
-
Object
- Object
- Twilio::REST::Client
- Defined in:
- lib/twilio-ruby/rest/client.rb
Overview
A client for accessing the Twilio API.
Instance Attribute Summary collapse
-
#account_sid ⇒ Object
Returns the value of attribute account_sid.
-
#auth_token ⇒ Object
Returns the value of attribute auth_token.
-
#http_client ⇒ Object
Returns the value of attribute http_client.
-
#password ⇒ Object
Returns the value of attribute password.
-
#region ⇒ Object
Returns the value of attribute region.
-
#username ⇒ Object
Returns the value of attribute username.
Instance Method Summary collapse
-
#accounts ⇒ Object
Access the Accounts Twilio Domain.
- #addresses(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::AddressInstance, Twilio::REST::Api::V2010::AccountContext::AddressList
-
#api ⇒ Object
Access the Api Twilio Domain.
- #applications(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ApplicationInstance, Twilio::REST::Api::V2010::AccountContext::ApplicationList
- #authorized_connect_apps(connect_app_sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::AuthorizedConnectAppInstance, Twilio::REST::Api::V2010::AccountContext::AuthorizedConnectAppList
- #available_phone_numbers(country_code = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::AvailablePhoneNumberCountryInstance, Twilio::REST::Api::V2010::AccountContext::AvailablePhoneNumberCountryList
- #calls(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::CallInstance, Twilio::REST::Api::V2010::AccountContext::CallList
-
#chat ⇒ Object
Access the Chat Twilio Domain.
- #conferences(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ConferenceInstance, Twilio::REST::Api::V2010::AccountContext::ConferenceList
- #connect_apps(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ConnectAppInstance, Twilio::REST::Api::V2010::AccountContext::ConnectAppList
-
#fax ⇒ Object
Access the Fax Twilio Domain.
- #incoming_phone_numbers(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::IncomingPhoneNumberInstance, Twilio::REST::Api::V2010::AccountContext::IncomingPhoneNumberList
-
#initialize(username = nil, password = nil, account_sid = nil, region = nil, http_client = Twilio::HTTP::Client.new) ⇒ Client
constructor
Initializes the Twilio Client.
-
#ip_messaging ⇒ Object
Access the IpMessaging Twilio Domain.
- #keys(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::KeyInstance, Twilio::REST::Api::V2010::AccountContext::KeyList
-
#lookups ⇒ Object
Access the Lookups Twilio Domain.
- #messages(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::MessageInstance, Twilio::REST::Api::V2010::AccountContext::MessageList
-
#messaging ⇒ Object
Access the Messaging Twilio Domain.
-
#monitor ⇒ Object
Access the Monitor Twilio Domain.
- #new_keys ⇒ Twilio::REST::Api::V2010::AccountContext::NewKeyInstance
- #new_signing_keys ⇒ Twilio::REST::Api::V2010::AccountContext::NewSigningKeyInstance
- #notifications(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::NotificationInstance, Twilio::REST::Api::V2010::AccountContext::NotificationList
-
#notify ⇒ Object
Access the Notify Twilio Domain.
- #outgoing_caller_ids(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::OutgoingCallerIdInstance, Twilio::REST::Api::V2010::AccountContext::OutgoingCallerIdList
-
#preview ⇒ Object
Access the Preview Twilio Domain.
-
#pricing ⇒ Object
Access the Pricing Twilio Domain.
-
#proxy ⇒ Object
Access the Proxy Twilio Domain.
- #queues(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::QueueInstance, Twilio::REST::Api::V2010::AccountContext::QueueList
- #recordings(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::RecordingInstance, Twilio::REST::Api::V2010::AccountContext::RecordingList
-
#request(host, port, method, uri, params = {}, data = {}, headers = {}, auth = nil, timeout = nil) ⇒ Object
Makes a request to the Twilio API using the configured http client Authentication information is automatically added if none is provided.
- #short_codes(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ShortCodeInstance, Twilio::REST::Api::V2010::AccountContext::ShortCodeList
- #signing_keys(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::SigningKeyInstance, Twilio::REST::Api::V2010::AccountContext::SigningKeyList
- #sip ⇒ Twilio::REST::Api::V2010::AccountContext::SipInstance
-
#studio ⇒ Object
Access the Studio Twilio Domain.
-
#sync ⇒ Object
Access the Sync Twilio Domain.
-
#taskrouter ⇒ Object
Access the Taskrouter Twilio Domain.
-
#to_s ⇒ Object
Provide a user friendly representation.
- #tokens ⇒ Twilio::REST::Api::V2010::AccountContext::TokenInstance
- #transcriptions(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::TranscriptionInstance, Twilio::REST::Api::V2010::AccountContext::TranscriptionList
-
#trunking ⇒ Object
Access the Trunking Twilio Domain.
- #usage ⇒ Twilio::REST::Api::V2010::AccountContext::UsageInstance
-
#validate_ssl_certificate ⇒ Object
Validate the new SSL certificate for the Twilio API.
- #validation_requests ⇒ Twilio::REST::Api::V2010::AccountContext::ValidationRequestInstance
-
#video ⇒ Object
Access the Video Twilio Domain.
-
#wireless ⇒ Object
Access the Wireless Twilio Domain.
Constructor Details
#initialize(username = nil, password = nil, account_sid = nil, region = nil, http_client = Twilio::HTTP::Client.new) ⇒ Client
Initializes the Twilio Client
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/twilio-ruby/rest/client.rb', line 18 def initialize(username=nil, password=nil, account_sid=nil, region=nil, http_client=Twilio::HTTP::Client.new) @username = username || Twilio.account_sid @password = password || Twilio.auth_token @region = region @account_sid = account_sid || @username @auth_token = @password @auth = [@username, @password] @http_client = http_client # Domains @accounts = nil @api = nil @chat = nil @fax = nil @ip_messaging = nil @lookups = nil @monitor = nil @notify = nil @preview = nil @pricing = nil @proxy = nil @taskrouter = nil @trunking = nil @video = nil @messaging = nil @wireless = nil @sync = nil @studio = nil end |
Instance Attribute Details
#account_sid ⇒ Object
Returns the value of attribute account_sid.
14 15 16 |
# File 'lib/twilio-ruby/rest/client.rb', line 14 def account_sid @account_sid end |
#auth_token ⇒ Object
Returns the value of attribute auth_token.
14 15 16 |
# File 'lib/twilio-ruby/rest/client.rb', line 14 def auth_token @auth_token end |
#http_client ⇒ Object
Returns the value of attribute http_client.
14 15 16 |
# File 'lib/twilio-ruby/rest/client.rb', line 14 def http_client @http_client end |
#password ⇒ Object
Returns the value of attribute password.
14 15 16 |
# File 'lib/twilio-ruby/rest/client.rb', line 14 def password @password end |
#region ⇒ Object
Returns the value of attribute region.
14 15 16 |
# File 'lib/twilio-ruby/rest/client.rb', line 14 def region @region end |
#username ⇒ Object
Returns the value of attribute username.
14 15 16 |
# File 'lib/twilio-ruby/rest/client.rb', line 14 def username @username end |
Instance Method Details
#accounts ⇒ Object
Access the Accounts Twilio Domain
98 99 100 |
# File 'lib/twilio-ruby/rest/client.rb', line 98 def accounts @accounts ||= Accounts.new self end |
#addresses(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::AddressInstance, Twilio::REST::Api::V2010::AccountContext::AddressList
208 209 210 |
# File 'lib/twilio-ruby/rest/client.rb', line 208 def addresses(sid=:unset) self.api.v2010.account.addresses(sid) end |
#api ⇒ Object
Access the Api Twilio Domain
104 105 106 |
# File 'lib/twilio-ruby/rest/client.rb', line 104 def api @api ||= Api.new self end |
#applications(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ApplicationInstance, Twilio::REST::Api::V2010::AccountContext::ApplicationList
217 218 219 |
# File 'lib/twilio-ruby/rest/client.rb', line 217 def applications(sid=:unset) self.api.v2010.account.applications(sid) end |
#authorized_connect_apps(connect_app_sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::AuthorizedConnectAppInstance, Twilio::REST::Api::V2010::AccountContext::AuthorizedConnectAppList
226 227 228 |
# File 'lib/twilio-ruby/rest/client.rb', line 226 def (connect_app_sid=:unset) self.api.v2010.account.(connect_app_sid) end |
#available_phone_numbers(country_code = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::AvailablePhoneNumberCountryInstance, Twilio::REST::Api::V2010::AccountContext::AvailablePhoneNumberCountryList
234 235 236 |
# File 'lib/twilio-ruby/rest/client.rb', line 234 def available_phone_numbers(country_code=:unset) self.api.v2010.account.available_phone_numbers(country_code) end |
#calls(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::CallInstance, Twilio::REST::Api::V2010::AccountContext::CallList
243 244 245 |
# File 'lib/twilio-ruby/rest/client.rb', line 243 def calls(sid=:unset) self.api.v2010.account.calls(sid) end |
#chat ⇒ Object
Access the Chat Twilio Domain
110 111 112 |
# File 'lib/twilio-ruby/rest/client.rb', line 110 def chat @chat ||= Chat.new self end |
#conferences(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ConferenceInstance, Twilio::REST::Api::V2010::AccountContext::ConferenceList
252 253 254 |
# File 'lib/twilio-ruby/rest/client.rb', line 252 def conferences(sid=:unset) self.api.v2010.account.conferences(sid) end |
#connect_apps(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ConnectAppInstance, Twilio::REST::Api::V2010::AccountContext::ConnectAppList
260 261 262 |
# File 'lib/twilio-ruby/rest/client.rb', line 260 def connect_apps(sid=:unset) self.api.v2010.account.connect_apps(sid) end |
#fax ⇒ Object
Access the Fax Twilio Domain
116 117 118 |
# File 'lib/twilio-ruby/rest/client.rb', line 116 def fax @fax ||= Fax.new self end |
#incoming_phone_numbers(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::IncomingPhoneNumberInstance, Twilio::REST::Api::V2010::AccountContext::IncomingPhoneNumberList
269 270 271 |
# File 'lib/twilio-ruby/rest/client.rb', line 269 def incoming_phone_numbers(sid=:unset) self.api.v2010.account.incoming_phone_numbers(sid) end |
#ip_messaging ⇒ Object
Access the IpMessaging Twilio Domain
122 123 124 |
# File 'lib/twilio-ruby/rest/client.rb', line 122 def ip_messaging @ip_messaging ||= IpMessaging.new self end |
#keys(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::KeyInstance, Twilio::REST::Api::V2010::AccountContext::KeyList
278 279 280 |
# File 'lib/twilio-ruby/rest/client.rb', line 278 def keys(sid=:unset) self.api.v2010.account.keys(sid) end |
#lookups ⇒ Object
Access the Lookups Twilio Domain
128 129 130 |
# File 'lib/twilio-ruby/rest/client.rb', line 128 def lookups @lookups ||= Lookups.new self end |
#messages(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::MessageInstance, Twilio::REST::Api::V2010::AccountContext::MessageList
287 288 289 |
# File 'lib/twilio-ruby/rest/client.rb', line 287 def (sid=:unset) self.api.v2010.account.(sid) end |
#messaging ⇒ Object
Access the Messaging Twilio Domain
182 183 184 |
# File 'lib/twilio-ruby/rest/client.rb', line 182 def messaging @messaging ||= Messaging.new self end |
#monitor ⇒ Object
Access the Monitor Twilio Domain
134 135 136 |
# File 'lib/twilio-ruby/rest/client.rb', line 134 def monitor @monitor ||= Monitor.new self end |
#new_keys ⇒ Twilio::REST::Api::V2010::AccountContext::NewKeyInstance
293 294 295 |
# File 'lib/twilio-ruby/rest/client.rb', line 293 def new_keys self.api.v2010.account.new_keys end |
#new_signing_keys ⇒ Twilio::REST::Api::V2010::AccountContext::NewSigningKeyInstance
299 300 301 |
# File 'lib/twilio-ruby/rest/client.rb', line 299 def new_signing_keys self.api.v2010.account.new_signing_keys end |
#notifications(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::NotificationInstance, Twilio::REST::Api::V2010::AccountContext::NotificationList
308 309 310 |
# File 'lib/twilio-ruby/rest/client.rb', line 308 def notifications(sid=:unset) self.api.v2010.account.notifications(sid) end |
#notify ⇒ Object
Access the Notify Twilio Domain
140 141 142 |
# File 'lib/twilio-ruby/rest/client.rb', line 140 def notify @notify ||= Notify.new self end |
#outgoing_caller_ids(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::OutgoingCallerIdInstance, Twilio::REST::Api::V2010::AccountContext::OutgoingCallerIdList
317 318 319 |
# File 'lib/twilio-ruby/rest/client.rb', line 317 def outgoing_caller_ids(sid=:unset) self.api.v2010.account.outgoing_caller_ids(sid) end |
#preview ⇒ Object
Access the Preview Twilio Domain
146 147 148 |
# File 'lib/twilio-ruby/rest/client.rb', line 146 def preview @preview ||= Preview.new self end |
#pricing ⇒ Object
Access the Pricing Twilio Domain
152 153 154 |
# File 'lib/twilio-ruby/rest/client.rb', line 152 def pricing @pricing ||= Pricing.new self end |
#proxy ⇒ Object
Access the Proxy Twilio Domain
158 159 160 |
# File 'lib/twilio-ruby/rest/client.rb', line 158 def proxy @proxy ||= Proxy.new self end |
#queues(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::QueueInstance, Twilio::REST::Api::V2010::AccountContext::QueueList
325 326 327 |
# File 'lib/twilio-ruby/rest/client.rb', line 325 def queues(sid=:unset) self.api.v2010.account.queues(sid) end |
#recordings(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::RecordingInstance, Twilio::REST::Api::V2010::AccountContext::RecordingList
334 335 336 |
# File 'lib/twilio-ruby/rest/client.rb', line 334 def recordings(sid=:unset) self.api.v2010.account.recordings(sid) end |
#request(host, port, method, uri, params = {}, data = {}, headers = {}, auth = nil, timeout = nil) ⇒ Object
Makes a request to the Twilio API using the configured http client Authentication information is automatically added if none is provided
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
# File 'lib/twilio-ruby/rest/client.rb', line 51 def request(host, port, method, uri, params={}, data={}, headers={}, auth=nil, timeout=nil) auth ||= @auth headers['User-Agent'] = "twilio-ruby/#{Twilio::VERSION}" + " (#{RUBY_ENGINE}/#{RUBY_PLATFORM}" + " #{RUBY_VERSION}-p#{RUBY_PATCHLEVEL})" headers['Accept-Charset'] = 'utf-8' if method == 'POST' && !headers['Content-Type'] headers['Content-Type'] = 'application/x-www-form-urlencoded' end unless headers['Accept'] headers['Accept'] = 'application/json' end if !region.nil? head, tail = uri.split('.', 2) if !tail.start_with?(region) uri = [head, region, tail].join('.') end end @http_client.request( host, port, method, uri, params, data, headers, auth, timeout ) end |
#short_codes(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ShortCodeInstance, Twilio::REST::Api::V2010::AccountContext::ShortCodeList
357 358 359 |
# File 'lib/twilio-ruby/rest/client.rb', line 357 def short_codes(sid=:unset) self.api.v2010.account.short_codes(sid) end |
#signing_keys(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::SigningKeyInstance, Twilio::REST::Api::V2010::AccountContext::SigningKeyList
342 343 344 |
# File 'lib/twilio-ruby/rest/client.rb', line 342 def signing_keys(sid=:unset) self.api.v2010.account.signing_keys(sid) end |
#sip ⇒ Twilio::REST::Api::V2010::AccountContext::SipInstance
348 349 350 |
# File 'lib/twilio-ruby/rest/client.rb', line 348 def sip self.api.v2010.account.sip end |
#studio ⇒ Object
Access the Studio Twilio Domain
200 201 202 |
# File 'lib/twilio-ruby/rest/client.rb', line 200 def studio @studio ||= Studio.new self end |
#sync ⇒ Object
Access the Sync Twilio Domain
194 195 196 |
# File 'lib/twilio-ruby/rest/client.rb', line 194 def sync @sync ||= Sync.new self end |
#taskrouter ⇒ Object
Access the Taskrouter Twilio Domain
164 165 166 |
# File 'lib/twilio-ruby/rest/client.rb', line 164 def taskrouter @taskrouter ||= Taskrouter.new self end |
#to_s ⇒ Object
Provide a user friendly representation
389 390 391 |
# File 'lib/twilio-ruby/rest/client.rb', line 389 def to_s "#<Twilio::REST::Client #{@account_sid}>" end |
#tokens ⇒ Twilio::REST::Api::V2010::AccountContext::TokenInstance
363 364 365 |
# File 'lib/twilio-ruby/rest/client.rb', line 363 def tokens self.api.v2010.account.tokens end |
#transcriptions(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::TranscriptionInstance, Twilio::REST::Api::V2010::AccountContext::TranscriptionList
371 372 373 |
# File 'lib/twilio-ruby/rest/client.rb', line 371 def transcriptions(sid=:unset) self.api.v2010.account.transcriptions(sid) end |
#trunking ⇒ Object
Access the Trunking Twilio Domain
170 171 172 |
# File 'lib/twilio-ruby/rest/client.rb', line 170 def trunking @trunking ||= Trunking.new self end |
#usage ⇒ Twilio::REST::Api::V2010::AccountContext::UsageInstance
377 378 379 |
# File 'lib/twilio-ruby/rest/client.rb', line 377 def usage self.api.v2010.account.usage end |
#validate_ssl_certificate ⇒ Object
Validate the new SSL certificate for the Twilio API
89 90 91 92 93 94 |
# File 'lib/twilio-ruby/rest/client.rb', line 89 def validate_ssl_certificate response = request('api.twilio.com', '8443', 'GET', 'https://api.twilio.com:8443/.json') if response.status_code < 200 || response.status_code >= 300 raise RestError.new 'Unexpected response from certificate endpoint', response end end |
#validation_requests ⇒ Twilio::REST::Api::V2010::AccountContext::ValidationRequestInstance
383 384 385 |
# File 'lib/twilio-ruby/rest/client.rb', line 383 def validation_requests self.api.v2010.account.validation_requests end |