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
-
#authy ⇒ Object
Access the Authy Twilio Domain.
-
#autopilot ⇒ Object
Access the Autopilot Twilio Domain.
- #available_phone_numbers(country_code = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::AvailablePhoneNumberCountryInstance, Twilio::REST::Api::V2010::AccountContext::AvailablePhoneNumberCountryList
- #balance ⇒ Twilio::REST::Api::V2010::AccountContext::BalanceInstance
- #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
-
#conversations ⇒ Object
Access the Conversations Twilio Domain.
-
#fax ⇒ Object
Access the Fax Twilio Domain.
-
#flex_api ⇒ Object
Access the FlexApi 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 = nil) ⇒ Client
constructor
Initializes the Twilio Client.
-
#insights ⇒ Object
Access the Insights Twilio Domain.
-
#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.
-
#numbers ⇒ Object
Access the Numbers 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.
-
#serverless ⇒ Object
Access the Serverless Twilio Domain.
- #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.
-
#voice ⇒ Object
Access the Voice Twilio Domain.
-
#wireless ⇒ Object
Access the Wireless Twilio Domain.
Constructor Details
#initialize(username = nil, password = nil, account_sid = nil, region = nil, http_client = nil) ⇒ 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 48 49 50 51 52 53 54 55 |
# File 'lib/twilio-ruby/rest/client.rb', line 18 def initialize(username=nil, password=nil, account_sid=nil, region=nil, http_client=nil) @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 || Twilio.http_client || Twilio::HTTP::Client.new # Domains @accounts = nil @api = nil @authy = nil @autopilot = nil @chat = nil @conversations = nil @fax = nil @flex_api = nil @insights = nil @ip_messaging = nil @lookups = nil @messaging = nil @monitor = nil @notify = nil @numbers = nil @preview = nil @pricing = nil @proxy = nil @serverless = nil @studio = nil @sync = nil @taskrouter = nil @trunking = nil @verify = nil @video = nil @voice = nil @wireless = 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
107 108 109 |
# File 'lib/twilio-ruby/rest/client.rb', line 107 def accounts @accounts ||= Accounts.new self end |
#addresses(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::AddressInstance, Twilio::REST::Api::V2010::AccountContext::AddressList
272 273 274 |
# File 'lib/twilio-ruby/rest/client.rb', line 272 def addresses(sid=:unset) self.api.v2010.account.addresses(sid) end |
#api ⇒ Object
Access the Api Twilio Domain
113 114 115 |
# File 'lib/twilio-ruby/rest/client.rb', line 113 def api @api ||= Api.new self end |
#applications(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ApplicationInstance, Twilio::REST::Api::V2010::AccountContext::ApplicationList
281 282 283 |
# File 'lib/twilio-ruby/rest/client.rb', line 281 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
289 290 291 |
# File 'lib/twilio-ruby/rest/client.rb', line 289 def (connect_app_sid=:unset) self.api.v2010.account.(connect_app_sid) end |
#authy ⇒ Object
Access the Authy Twilio Domain
119 120 121 |
# File 'lib/twilio-ruby/rest/client.rb', line 119 def authy @authy ||= Authy.new self end |
#autopilot ⇒ Object
Access the Autopilot Twilio Domain
125 126 127 |
# File 'lib/twilio-ruby/rest/client.rb', line 125 def autopilot @autopilot ||= Autopilot.new self end |
#available_phone_numbers(country_code = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::AvailablePhoneNumberCountryInstance, Twilio::REST::Api::V2010::AccountContext::AvailablePhoneNumberCountryList
299 300 301 |
# File 'lib/twilio-ruby/rest/client.rb', line 299 def available_phone_numbers(country_code=:unset) self.api.v2010.account.available_phone_numbers(country_code) end |
#balance ⇒ Twilio::REST::Api::V2010::AccountContext::BalanceInstance
305 306 307 |
# File 'lib/twilio-ruby/rest/client.rb', line 305 def balance self.api.v2010.account.balance end |
#calls(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::CallInstance, Twilio::REST::Api::V2010::AccountContext::CallList
314 315 316 |
# File 'lib/twilio-ruby/rest/client.rb', line 314 def calls(sid=:unset) self.api.v2010.account.calls(sid) end |
#chat ⇒ Object
Access the Chat Twilio Domain
131 132 133 |
# File 'lib/twilio-ruby/rest/client.rb', line 131 def chat @chat ||= Chat.new self end |
#conferences(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ConferenceInstance, Twilio::REST::Api::V2010::AccountContext::ConferenceList
323 324 325 |
# File 'lib/twilio-ruby/rest/client.rb', line 323 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
332 333 334 |
# File 'lib/twilio-ruby/rest/client.rb', line 332 def connect_apps(sid=:unset) self.api.v2010.account.connect_apps(sid) end |
#conversations ⇒ Object
Access the Conversations Twilio Domain
137 138 139 |
# File 'lib/twilio-ruby/rest/client.rb', line 137 def conversations @conversations ||= Conversations.new self end |
#fax ⇒ Object
Access the Fax Twilio Domain
143 144 145 |
# File 'lib/twilio-ruby/rest/client.rb', line 143 def fax @fax ||= Fax.new self end |
#flex_api ⇒ Object
Access the FlexApi Twilio Domain
149 150 151 |
# File 'lib/twilio-ruby/rest/client.rb', line 149 def flex_api @flex_api ||= FlexApi.new self end |
#incoming_phone_numbers(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::IncomingPhoneNumberInstance, Twilio::REST::Api::V2010::AccountContext::IncomingPhoneNumberList
341 342 343 |
# File 'lib/twilio-ruby/rest/client.rb', line 341 def incoming_phone_numbers(sid=:unset) self.api.v2010.account.incoming_phone_numbers(sid) end |
#insights ⇒ Object
Access the Insights Twilio Domain
155 156 157 |
# File 'lib/twilio-ruby/rest/client.rb', line 155 def insights @insights ||= Insights.new self end |
#ip_messaging ⇒ Object
Access the IpMessaging Twilio Domain
161 162 163 |
# File 'lib/twilio-ruby/rest/client.rb', line 161 def ip_messaging @ip_messaging ||= IpMessaging.new self end |
#keys(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::KeyInstance, Twilio::REST::Api::V2010::AccountContext::KeyList
350 351 352 |
# File 'lib/twilio-ruby/rest/client.rb', line 350 def keys(sid=:unset) self.api.v2010.account.keys(sid) end |
#lookups ⇒ Object
Access the Lookups Twilio Domain
167 168 169 |
# File 'lib/twilio-ruby/rest/client.rb', line 167 def lookups @lookups ||= Lookups.new self end |
#messages(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::MessageInstance, Twilio::REST::Api::V2010::AccountContext::MessageList
359 360 361 |
# File 'lib/twilio-ruby/rest/client.rb', line 359 def (sid=:unset) self.api.v2010.account.(sid) end |
#messaging ⇒ Object
Access the Messaging Twilio Domain
173 174 175 |
# File 'lib/twilio-ruby/rest/client.rb', line 173 def messaging @messaging ||= Messaging.new self end |
#monitor ⇒ Object
Access the Monitor Twilio Domain
179 180 181 |
# File 'lib/twilio-ruby/rest/client.rb', line 179 def monitor @monitor ||= Monitor.new self end |
#new_keys ⇒ Twilio::REST::Api::V2010::AccountContext::NewKeyInstance
365 366 367 |
# File 'lib/twilio-ruby/rest/client.rb', line 365 def new_keys self.api.v2010.account.new_keys end |
#new_signing_keys ⇒ Twilio::REST::Api::V2010::AccountContext::NewSigningKeyInstance
371 372 373 |
# File 'lib/twilio-ruby/rest/client.rb', line 371 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
380 381 382 |
# File 'lib/twilio-ruby/rest/client.rb', line 380 def notifications(sid=:unset) self.api.v2010.account.notifications(sid) end |
#notify ⇒ Object
Access the Notify Twilio Domain
185 186 187 |
# File 'lib/twilio-ruby/rest/client.rb', line 185 def notify @notify ||= Notify.new self end |
#numbers ⇒ Object
Access the Numbers Twilio Domain
191 192 193 |
# File 'lib/twilio-ruby/rest/client.rb', line 191 def numbers @numbers ||= Numbers.new self end |
#outgoing_caller_ids(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::OutgoingCallerIdInstance, Twilio::REST::Api::V2010::AccountContext::OutgoingCallerIdList
389 390 391 |
# File 'lib/twilio-ruby/rest/client.rb', line 389 def outgoing_caller_ids(sid=:unset) self.api.v2010.account.outgoing_caller_ids(sid) end |
#preview ⇒ Object
Access the Preview Twilio Domain
197 198 199 |
# File 'lib/twilio-ruby/rest/client.rb', line 197 def preview @preview ||= Preview.new self end |
#pricing ⇒ Object
Access the Pricing Twilio Domain
203 204 205 |
# File 'lib/twilio-ruby/rest/client.rb', line 203 def pricing @pricing ||= Pricing.new self end |
#proxy ⇒ Object
Access the Proxy Twilio Domain
209 210 211 |
# File 'lib/twilio-ruby/rest/client.rb', line 209 def proxy @proxy ||= Proxy.new self end |
#queues(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::QueueInstance, Twilio::REST::Api::V2010::AccountContext::QueueList
398 399 400 |
# File 'lib/twilio-ruby/rest/client.rb', line 398 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
407 408 409 |
# File 'lib/twilio-ruby/rest/client.rb', line 407 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
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 87 88 89 90 91 92 93 94 |
# File 'lib/twilio-ruby/rest/client.rb', line 60 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 |
#serverless ⇒ Object
Access the Serverless Twilio Domain
215 216 217 |
# File 'lib/twilio-ruby/rest/client.rb', line 215 def serverless @serverless ||= Serverless.new self end |
#short_codes(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::ShortCodeInstance, Twilio::REST::Api::V2010::AccountContext::ShortCodeList
430 431 432 |
# File 'lib/twilio-ruby/rest/client.rb', line 430 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
415 416 417 |
# File 'lib/twilio-ruby/rest/client.rb', line 415 def signing_keys(sid=:unset) self.api.v2010.account.signing_keys(sid) end |
#sip ⇒ Twilio::REST::Api::V2010::AccountContext::SipInstance
421 422 423 |
# File 'lib/twilio-ruby/rest/client.rb', line 421 def sip self.api.v2010.account.sip end |
#studio ⇒ Object
Access the Studio Twilio Domain
221 222 223 |
# File 'lib/twilio-ruby/rest/client.rb', line 221 def studio @studio ||= Studio.new self end |
#sync ⇒ Object
Access the Sync Twilio Domain
227 228 229 |
# File 'lib/twilio-ruby/rest/client.rb', line 227 def sync @sync ||= Sync.new self end |
#taskrouter ⇒ Object
Access the Taskrouter Twilio Domain
233 234 235 |
# File 'lib/twilio-ruby/rest/client.rb', line 233 def taskrouter @taskrouter ||= Taskrouter.new self end |
#to_s ⇒ Object
Provide a user friendly representation
463 464 465 |
# File 'lib/twilio-ruby/rest/client.rb', line 463 def to_s "#<Twilio::REST::Client #{@account_sid}>" end |
#tokens ⇒ Twilio::REST::Api::V2010::AccountContext::TokenInstance
436 437 438 |
# File 'lib/twilio-ruby/rest/client.rb', line 436 def tokens self.api.v2010.account.tokens end |
#transcriptions(sid = :unset) ⇒ Twilio::REST::Api::V2010::AccountContext::TranscriptionInstance, Twilio::REST::Api::V2010::AccountContext::TranscriptionList
445 446 447 |
# File 'lib/twilio-ruby/rest/client.rb', line 445 def transcriptions(sid=:unset) self.api.v2010.account.transcriptions(sid) end |
#trunking ⇒ Object
Access the Trunking Twilio Domain
239 240 241 |
# File 'lib/twilio-ruby/rest/client.rb', line 239 def trunking @trunking ||= Trunking.new self end |
#usage ⇒ Twilio::REST::Api::V2010::AccountContext::UsageInstance
451 452 453 |
# File 'lib/twilio-ruby/rest/client.rb', line 451 def usage self.api.v2010.account.usage end |
#validate_ssl_certificate ⇒ Object
Validate the new SSL certificate for the Twilio API
98 99 100 101 102 103 |
# File 'lib/twilio-ruby/rest/client.rb', line 98 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
457 458 459 |
# File 'lib/twilio-ruby/rest/client.rb', line 457 def validation_requests self.api.v2010.account.validation_requests end |
#verify ⇒ Object
Access the Verify Twilio Domain
245 246 247 |
# File 'lib/twilio-ruby/rest/client.rb', line 245 def verify @verify ||= Verify.new self end |
#video ⇒ Object
Access the Video Twilio Domain
251 252 253 |
# File 'lib/twilio-ruby/rest/client.rb', line 251 def video @video ||= Video.new self end |
#voice ⇒ Object
Access the Voice Twilio Domain
257 258 259 |
# File 'lib/twilio-ruby/rest/client.rb', line 257 def voice @voice ||= Voice.new self end |
#wireless ⇒ Object
Access the Wireless Twilio Domain
263 264 265 |
# File 'lib/twilio-ruby/rest/client.rb', line 263 def wireless @wireless ||= Wireless.new self end |