Skip to content
Ruby gem for consuming the Bandwidth REST API
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples
lib
spec
.document
.gitignore
.rspec
Gemfile
Gemfile.lock
LICENSE.txt
README.md
Rakefile
VERSION
bandwidth.gemspec

README.md

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.

You can’t perform that action at this time.