Client library for the Bandwidth App Platform
pip install bandwidth-sdk
import bandwidth
voice_api = bandwidth.client('voice', 'u-user', 't-token', 's-secret')
messaging_api = bandwidth.client('messaging', 'u-user', 't-token', 's-secret')
account_api = bandwidth.client('account', 'u-user', 't-token', 's-secret')
## Or import each individually for better IDE integration::
from bandwidth import messaging, voice, account
messaging_api = messaging.Client('u-user', 't-token', 's-secret')
voice_api = voice.Client('u-user', 't-token', 's-secret')
account_api = account.Client('u-user', 't-token', 's-secret')
Each of these code sample assumes that you have already initialized a client
numbers = account_api.search_available_local_numbers(area_code = '910', quantity = 3)
print(numbers[0]['number'])
## +19104440230
my_number = account_api.order_phone_number(numbers[0]['number'])
print(my_number)
#n-rnd5eag33safchqmrj3q
message_id = api.send_message(from_ = '+1234567980',
to = '+1234567981',
text = 'SMS message')
print(message_id)
# m-messageId
message_id = api.send_message(from_ = '+1234567980',
to = '+1234567981',
text = 'MMS message',
media=['http://cat.com/cat.png'])
print(message_id)
# m-messageId
my_message = api.get_message('m-messageId')
print(my_message[state])
## received
call_id = api.create_call(from_ = '+1234567890',
to = '+1234567891',
callback_url = "http://yoursite.com/calls")
print(call_id)
## c-abc123
my_call = api.get_call('c-abc123')
print(my_call)
## { 'callback_url' : 'http://yoursite.com/calls',
## 'direction' : 'out',
## 'events' : 'https://api.catapult.inetwork.com/v1/users/u-abc/calls/c-abc123/events',
## 'from' : '+1234567890',
## 'id' : 'c-abc123',
## 'recording_enabled' : False,
## 'recording_file_format' : 'wav',
## 'recordings' : 'https://api.catapult.inetwork.com/v1/users/u-abc/calls/c-abc123/recordings',
## 'startTime' : '2017-01-26T16:10:11Z',
## 'state' : 'started',
## 'to' : '+1234567891',
## 'transcription_enabled': False,
## 'transcriptions' : 'https://api.catapult.inetwork.com/v1/users/u-abc/calls/c-abc123/transcriptions'}
call_list = api.list_calls(to = '+19192223333', size = 2)
print(list(call_list))