Should your team build new functionality internally, or use an API? “Build or buy” is the refrain.
For video chat APIs, you also have the choice of whether to use a traditional, low-level API, or a newer API that gives you more features and a prebuilt user interface.
To update the question: should your team build video calling from scratch yourself; build on top of a low-level API; or use a full-featured API?
When adding video calls to a product, there are many factors to consider:
To skip straight to a discussion of these issues, read our piece “Choosing a video chat API: 5 key considerations.”
If you first would like more background on APIs, the sections below highlight the differences between a “low-level API” versus a higher level, full-featured API.
An API lets you add features and functionality to your product or app. An API is like a set of programming rules a developer follows, to plug in functionality from a service. Instead of building from scratch, a developer can use an API.
The benefits are familiar: speed, efficiency, scalability, quality, focus. New features and new products get to market faster. Teams save time and money.
Experienced product teams use APIs wherever they can for features that are “must haves”, but are not unique to the team’s own product. Some common API categories many products use include:
You can use APIs both when building “version 1.0” of a product, and when adding features to existing products.
If there’s a good API available for a specific product function, you usually save money using an API compared to building that function from scratch. (Check out this build versus buy calculator from Baremetrics, a company that makes a recurring revenue analytics API. They make their own POV pretty clear! “Don’t build it! It’s not worth it!” they advise.)
In addition to saving money, an API gives you the benefits of leveraging proven, scalable technology. Instead of spinning wheels to fix problems that are already solved, your team can focus on developing your own differentiated functionality, your “secret sauce.”
Once a company decides to use an API, the question becomes which API — what kind of API, and which vendor.
APIs can give you different levels of functionality. “Low-level” APIs give you more control, but make you write more code to create working features. Full-featured APIs let you ship faster with more features, less development work, testing, and maintenance.
We’ll come back to what “control” means and what features are important to consider for video calls.
So this conversation works for non-technical readers, we’ll cut to an example. Take building a house.
If you’re looking to build a house, you have several options:
There’s a scale of work here — each step from option 1 to option 4 increases the amount of time it takes to build a house.
Each step also changes the kind of work you have to do. The lower you go down the list, the more you have to know about how to build houses in order to get the house you want.
If you pick the trees out yourself, you have more control over the wood used in your house. But that takes both time and expertise.
An API is like this. “Low-level” APIs let you pick out the trees to build the house with. Full-featured APIs give you a mix of “prefab” parts to work with.
A working video call depends on millions of lines of running code, from the code in your own product all the way down to the code in the operating system, network servers, and global internet infrastructure.
To loop back to that house you’re building, it comes down to how much your organization wants to shoulder in terms of time, focus, resources, and expertise.
When choosing a video chat API, you’re deciding how much of the code you want to write. Your team can decide to create video calls from scratch. Or you can use a low-level API. Or you can opt for more flexible, full-featured APIs:
For example, with the Daily.co API you can drop a full-featured, production-quality video call into your app with just two lines of front-end code.
With some full-featured APIs, you can also “drop down” a layer and customize the video call UI and user flows.
In a follow up blog post, we go through a checklist of specific video call issues to consider when deciding on your video chat API. Click here to see “Choosing a video chat API: 5 key considerations."
Or contact us — email firstname.lastname@example.org or chat on our website — to talk about your product with our API team. Cheers!