Bandwidth API Overview

Agenda

  • What is an API
  • What is a Webhook/Callback
  • Order Phone Number
  • Send text message
  • Send picture message (MMS)
  • Make a phone call
  • Masked calling customer use case
  • IVR Customer use case

What is an API?

And why do they matter

API

A: application
P: programming
I: interface 

Break it down

Application - Tools/games/social networks

 

Programming - How engineers create software

 

Interface - common boundary shared by two applications or programs that allow both to communicate with one another.

 

So an API is essentially a way for programmers to communicate with a certain application.

Why do APIs Matter

  • Faster development
  • Higher Abstraction
  • Replaceable

REST APIs

Re: Representational
S:  State
T:  Transfer

Uses HTTP

HTTP - Hypertext Transfer Protocol

 

Stateless - Each API request has no knowledge of what came before.

 

4 *important* verbs

* GET
* POST
* DELETE
* PUT

http GET

Ask for information

  • View Facebook.com
  • Search google.com
  • Visit a webpage
  • Other...

http POST

Give information

  • Upload photo to facebook
  • Send an email
  • Post a tweet
  • Other...

HTTP Status Codes

1** : Hold on
2** : Here you go
3** : Go away
4** : You messed up
5** : I messed up

What is a webhook/callback?

And why do they matter

A webhook/callback is an HTTP request that occurs when something happens.

Incoming Call

Incoming text message

Call hangup

Button Press (DTMF)

Recording Finished

Message Delivered

Call Answered

Polling

In a world without callbacks

Now, let's play!

Order a phone number

Send a text message

Send a picture message

Create a call

Call with callback

http://Requestb.in

Customer Usecases

Masked Numbers

AKA: Anonymous Calling, Private Numbers

Why?

  • Trackable
  • Safety
  • Privacy
  • Walled-Garden
  • Control

Incoming call

Callback

Creates call

2 way talking

Lyft

Create call

919-555-5555

919-444-4444

919-333-3333

919-333-3333 -> 919-444-4444

Rider

Driver

IVR

AKA: Interactive voice response, Phone Tree, etc...

Why?

  • Trackable
  • Customer Support 
  • Call Control
  • Typical Use-case
  • more...

Incoming call

Callback

Play Menu

Creates call

2 way talking

Service Titan

Menu Audio

Push Button

Callback

Create call

919-555-5555

919-333-3333

800-444-4444

1

1 -> 919-333-3333

Press 1 for sales

Press 2 for support

Patron

Sales

to: 800-444-4444

to: 800-444-4444

& Pressed 1

Questions?

Bandwidth Training Part A

By Daniel Tolbert

Bandwidth Training Part A

Getting Bandwidth team members up to speed on software and APIs

  • 704