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
-
#verify ⇒ Object
Access the Verify Twilio Domain.
-
#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 47 |
# 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 @verify = 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
99 100 101 |
# File 'lib/twilio-ruby/rest/client.rb', line 99 def accounts @accounts ||= Accounts.new self end |
#addresses(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::AddressInstance, Twilio::REST::Api::V2010::AccountContext::AddressList
215 216 217 |
# File 'lib/twilio-ruby/rest/client.rb', line 215 def addresses(sid=:unset) self.api.v2010.account.addresses(sid) end |
#api ⇒ Object
Access the Api Twilio Domain
105 106 107 |
# File 'lib/twilio-ruby/rest/client.rb', line 105 def api @api ||= Api.new self end |
#applications(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ApplicationInstance, Twilio::REST::Api::V2010::AccountContext::ApplicationList
224 225 226 |
# File 'lib/twilio-ruby/rest/client.rb', line 224 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
233 234 235 |
# File 'lib/twilio-ruby/rest/client.rb', line 233 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
241 242 243 |
# File 'lib/twilio-ruby/rest/client.rb', line 241 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
250 251 252 |
# File 'lib/twilio-ruby/rest/client.rb', line 250 def calls(sid=:unset) self.api.v2010.account.calls(sid) end |
#chat ⇒ Object
Access the Chat Twilio Domain
111 112 113 |
# File 'lib/twilio-ruby/rest/client.rb', line 111 def chat @chat ||= Chat.new self end |
#conferences(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ConferenceInstance, Twilio::REST::Api::V2010::AccountContext::ConferenceList
259 260 261 |
# File 'lib/twilio-ruby/rest/client.rb', line 259 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
267 268 269 |
# File 'lib/twilio-ruby/rest/client.rb', line 267 def connect_apps(sid=:unset) self.api.v2010.account.connect_apps(sid) end |
#fax ⇒ Object
Access the Fax Twilio Domain
117 118 119 |
# File 'lib/twilio-ruby/rest/client.rb', line 117 def fax @fax ||= Fax.new self end |
#incoming_phone_numbers(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::IncomingPhoneNumberInstance, Twilio::REST::Api::V2010::AccountContext::IncomingPhoneNumberList
276 277 278 |
# File 'lib/twilio-ruby/rest/client.rb', line 276 def incoming_phone_numbers(sid=:unset) self.api.v2010.account.incoming_phone_numbers(sid) end |
#ip_messaging ⇒ Object
Access the IpMessaging Twilio Domain
123 124 125 |
# File 'lib/twilio-ruby/rest/client.rb', line 123 def ip_messaging @ip_messaging ||= IpMessaging.new self end |
#keys(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::KeyInstance, Twilio::REST::Api::V2010::AccountContext::KeyList
285 286 287 |
# File 'lib/twilio-ruby/rest/client.rb', line 285 def keys(sid=:unset) self.api.v2010.account.keys(sid) end |
#lookups ⇒ Object
Access the Lookups Twilio Domain
129 130 131 |
# File 'lib/twilio-ruby/rest/client.rb', line 129 def lookups @lookups ||= Lookups.new self end |
#messages(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::MessageInstance, Twilio::REST::Api::V2010::AccountContext::MessageList
294 295 296 |
# File 'lib/twilio-ruby/rest/client.rb', line 294 def (sid=:unset) self.api.v2010.account.(sid) end |
#messaging ⇒ Object
Access the Messaging Twilio Domain
183 184 185 |
# File 'lib/twilio-ruby/rest/client.rb', line 183 def messaging @messaging ||= Messaging.new self end |
#monitor ⇒ Object
Access the Monitor Twilio Domain
135 136 137 |
# File 'lib/twilio-ruby/rest/client.rb', line 135 def monitor @monitor ||= Monitor.new self end |
#new_keys ⇒ Twilio::REST::Api::V2010::AccountContext::NewKeyInstance
300 301 302 |
# File 'lib/twilio-ruby/rest/client.rb', line 300 def new_keys self.api.v2010.account.new_keys end |
#new_signing_keys ⇒ Twilio::REST::Api::V2010::AccountContext::NewSigningKeyInstance
306 307 308 |
# File 'lib/twilio-ruby/rest/client.rb', line 306 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
315 316 317 |
# File 'lib/twilio-ruby/rest/client.rb', line 315 def notifications(sid=:unset) self.api.v2010.account.notifications(sid) end |
#notify ⇒ Object
Access the Notify Twilio Domain
141 142 143 |
# File 'lib/twilio-ruby/rest/client.rb', line 141 def notify @notify ||= Notify.new self end |
#outgoing_caller_ids(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::OutgoingCallerIdInstance, Twilio::REST::Api::V2010::AccountContext::OutgoingCallerIdList
324 325 326 |
# File 'lib/twilio-ruby/rest/client.rb', line 324 def outgoing_caller_ids(sid=:unset) self.api.v2010.account.outgoing_caller_ids(sid) end |
#preview ⇒ Object
Access the Preview Twilio Domain
147 148 149 |
# File 'lib/twilio-ruby/rest/client.rb', line 147 def preview @preview ||= Preview.new self end |
#pricing ⇒ Object
Access the Pricing Twilio Domain
153 154 155 |
# File 'lib/twilio-ruby/rest/client.rb', line 153 def pricing @pricing ||= Pricing.new self end |
#proxy ⇒ Object
Access the Proxy Twilio Domain
159 160 161 |
# File 'lib/twilio-ruby/rest/client.rb', line 159 def proxy @proxy ||= Proxy.new self end |
#queues(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::QueueInstance, Twilio::REST::Api::V2010::AccountContext::QueueList
332 333 334 |
# File 'lib/twilio-ruby/rest/client.rb', line 332 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
341 342 343 |
# File 'lib/twilio-ruby/rest/client.rb', line 341 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
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 86 |
# File 'lib/twilio-ruby/rest/client.rb', line 52 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
364 365 366 |
# File 'lib/twilio-ruby/rest/client.rb', line 364 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
349 350 351 |
# File 'lib/twilio-ruby/rest/client.rb', line 349 def signing_keys(sid=:unset) self.api.v2010.account.signing_keys(sid) end |
#sip ⇒ Twilio::REST::Api::V2010::AccountContext::SipInstance
355 356 357 |
# File 'lib/twilio-ruby/rest/client.rb', line 355 def sip self.api.v2010.account.sip end |
#studio ⇒ Object
Access the Studio Twilio Domain
201 202 203 |
# File 'lib/twilio-ruby/rest/client.rb', line 201 def studio @studio ||= Studio.new self end |
#sync ⇒ Object
Access the Sync Twilio Domain
195 196 197 |
# File 'lib/twilio-ruby/rest/client.rb', line 195 def sync @sync ||= Sync.new self end |
#taskrouter ⇒ Object
Access the Taskrouter Twilio Domain
165 166 167 |
# File 'lib/twilio-ruby/rest/client.rb', line 165 def taskrouter @taskrouter ||= Taskrouter.new self end |
#to_s ⇒ Object
Provide a user friendly representation
396 397 398 |
# File 'lib/twilio-ruby/rest/client.rb', line 396 def to_s "#<Twilio::REST::Client #{@account_sid}>" end |
#tokens ⇒ Twilio::REST::Api::V2010::AccountContext::TokenInstance
370 371 372 |
# File 'lib/twilio-ruby/rest/client.rb', line 370 def tokens self.api.v2010.account.tokens end |
#transcriptions(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::TranscriptionInstance, Twilio::REST::Api::V2010::AccountContext::TranscriptionList
378 379 380 |
# File 'lib/twilio-ruby/rest/client.rb', line 378 def transcriptions(sid=:unset) self.api.v2010.account.transcriptions(sid) end |
#trunking ⇒ Object
Access the Trunking Twilio Domain
171 172 173 |
# File 'lib/twilio-ruby/rest/client.rb', line 171 def trunking @trunking ||= Trunking.new self end |
#usage ⇒ Twilio::REST::Api::V2010::AccountContext::UsageInstance
384 385 386 |
# File 'lib/twilio-ruby/rest/client.rb', line 384 def usage self.api.v2010.account.usage end |
#validate_ssl_certificate ⇒ Object
Validate the new SSL certificate for the Twilio API
90 91 92 93 94 95 |
# File 'lib/twilio-ruby/rest/client.rb', line 90 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
390 391 392 |
# File 'lib/twilio-ruby/rest/client.rb', line 390 def validation_requests self.api.v2010.account.validation_requests end |
#verify ⇒ Object
Access the Verify Twilio Domain
207 208 209 |
# File 'lib/twilio-ruby/rest/client.rb', line 207 def verify @verify ||= Verify.new self end |
#video ⇒ Object
Access the Video Twilio Domain
177 178 179 |
# File 'lib/twilio-ruby/rest/client.rb', line 177 def video @video ||= Video.new self end |
#wireless ⇒ Object
Access the Wireless Twilio Domain
189 190 191 |
# File 'lib/twilio-ruby/rest/client.rb', line 189 def wireless @wireless ||= Wireless.new self end |