APIs come in different shapes and sizes. When using communication APIs, you need to know how their information flows to understand their effect on your network.
Generally speaking, IT may need to intervene in two areas to get communication APIs to work properly in an organization: capacities and the firewall. When handling communication APIs and configuring the network for them, you should first understand some main concepts: control and media.
Control, or signaling, is how your application and communication API interact and make the decisions about what to send and where. In a phone call, for example, control indicates who you are dialing and how to reach that person.
Media is the actual content you are communicating, whether it's text, voice, video or something else.
Handling control of communication APIs
Control APIs can be called either back to back -- from an enterprise server to the communication API provider -- or client to server, which runs from a device or client-side application to the communication API provider.
Today, back-to-back calls are predominantly based on representational state transfer flowing over HTTPS. For the most part, they have little effect over the network.
Client-to-server calls will use other means of communication -- usually WebSocket or Comet-based transport protocol. Sometimes, it will be old-fashioned Session Initiation Protocol signaling. This will be dictated by the client software development kit that the communication API provider uses.
Client-to-server calls also happen from a client device that could be located inside a corporate intranet, which can make connectivity to the external world somewhat challenging. Make sure this connectivity is allowed to flow. If a proxy is configured for your internet traffic, make sure it can handle traffic from the API provider.
In general, the control of communication APIs is rather lean, requiring little bandwidth compared to media demands.
Handling media of communication APIs
Media is the actual interaction -- the communication itself. The three main media types are text, voice and video. When moving to communication APIs, IT needs to consider three media characteristics: bandwidth, location and routing.
Different media types eat up different amounts of bandwidth. Text is lean and asynchronous in nature, and it does not require much special handling. Voice can take up anywhere between 4 Kbps to 64 Kbps of bitrate, which is not much for a single session, but it could become an issue if you need many concurrent sessions. Video starts at 300 Kbps and can reach 2 Mbps or more per session, based on the quality required.
In this video, explore the relationship between communication APIs and unified communications.
For the most part, text will piggyback the control channel, while voice and video are sent on their own separate media stream.
The location characteristic is where the media traffic is taking place. Where are the devices that send or receive media? If they are in the corporate office inside the corporate network, then adequate bandwidth and the ability to traverse the corporate firewall need to be set up. This may require whitelisting certain types of traffic or port ranges in restrictive networks.
The routing deals with how media gets moved in the network. Does it always traverse through the communication API platform due to optimization, regulatory issues or the need to record the conversation? Or can it get routed peer to peer instead, directly between the devices in the conversation?
These three characteristics decide how much bandwidth needs to be allocated for the communication. They also determine if you need to change certain configurations in the corporate network.
Depending on how communication APIs are used, enterprise IT might not need to take action. These activities depend on where the devices and servers using the communication APIs are located and what types of communications are taking place.
What are the security implications of communication APIs?
Channel partners could take advantage of communication APIs.
Looking ahead, track these important API trends.