Skip to content

jsgoecke/bandwidth

Repository files navigation

Bandwidth

Ruby gem for consuming the Bandwidth REST API.

Installation

gem install bandwidth

Example

API Docs

require 'rubygems'
require 'bandwidth'
bandwidth = Bandwidth.new(:developer_key => 'your developer key')
bandwidth.area_code_number_search :area_code => '720', :max_quantity => 1

Returns (using awesome_print gem):

{
       "body" => {
        "numberSearchResponse" => {
                   "xmlns:xsd" => "http://www.w3.org/2001/XMLSchema",
                    "quantity" => "1",
                   "requestID" => "463f5cd2-e75d-4cc2-9ab1-1235a3dd283c",
                "dateTimeSent" => "2011-03-18 19:48:04Z",
                    "warnings" => nil,
                      "errors" => nil,
                   "xmlns:xsi" => "http://www.w3.org/2001/XMLSchema-instance",
            "telephoneNumbers" => {
                "telephoneNumber" => {
                               "e164" => "+17205551212",
                             "npaNxx" => "720555",
                           "tenDigit" => "7205551212",
                    "formattedNumber" => "1-720-555-1212",
                           "numberID" => "6f37a640-0d9d-45cc-b97b-d6ad77f220b2",
                             "status" => "Available",
                         "rateCenter" => {
                         "name" => "DENVERSLVN",
                         "lata" => "656",
                        "state" => "CO"
                    }
                }
            },
                     "message" => "Successfully executed specified number search.",
                      "status" => "success",
                       "xmlns" => "http://www.bandwidth.com/api/"
        }
    },
       "code" => 200,
    "headers" => {
              "X-Powered-By" => "Bandwidth.com",
        "X-API-SupportEmail" => "apifeedback@bandwidth.com",
              "Content-Type" => "text/xml; charset=utf-8",
                      "Date" => "Fri, 18 Mar 2011 19:48:04 GMT",
            "Content-Length" => "825",
                    "Server" => "Microsoft-IIS/7.0",
             "Cache-Control" => "private",
          "X-AspNet-Version" => "2.0.50727"
    }
}

Available Methods

Full details of available methods here.

[2.x] Supported Operations, Numbers - getTelephoneNumber
[2.x] Supported Operations, Numbers - getNumberOrder
[2.x] Supported Operations, Numbers - getNumberOrders (developer, account)
[2.x] Supported Operations, Numbers - areaCodeNumberSearch
[2.x] Supported Operations, Numbers - npaNxxNumberSearch
[2.x] Supported Operations, Numbers - rateCenterNumberSearch
[2.x] Supported Operations, Numbers - rateCenterNumberOrder
[2.x] Supported Operations, Numbers - tollfreeNumberSearch
[2.x] Supported Operations, Numbers - tollfreeNumberOrder
[2.x] Supported Operations, Numbers - basicNumberOrder
[2.x] Supported Operations, Numbers - changeNumber
[2.x] Supported Operations, Numbers - sipTrunkOrder
[2.x] Supported Operations, Cdr - getCdrArchive
(restricted use)
[2.x] Restricted Operations, Numbers - consumedNumbers
[2.x] Restricted Operations, Numbers - reserveNumbers
[2.x] Restricted Operations, Numbers - pbod
[2.x] Restricted Operations, Numbers - rateCenterBlockOrder
[2.x] Restricted Operations, Numbers - getRateCenterBlockOrder
[2.x] Restricted Operations, Numbers - getRateCenterBlockOrders

Notes

When calling the 'basic_number_order' method, be sure to use ':number_IDs' & ':ext_ref_ID' as the correct options, given that the Bandwidth API is not following camelCase standards in this case.

Copyright

Copyright (c) 2011 Jason Goecke. See LICENSE.txt for further details.

About

Ruby gem for consuming the Bandwidth REST API

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages