Development of comprehensive and free bitcoin APIs is one of the latest trends to emerge in the cryptocurrency industry and, like all new trends, it has its pros and cons.
API stands for Application Programming Interface, which is a software component that defines a set of functions and allows developers to standardise various aspects of software design. This enables developers to use off-the-shelf APIs and API libraries rather than code everything on their own.
The companies behind these new APIs claim they are making development easier, reducing app lead time and costs associated with creating cryptocurrency apps. Critics claim bitcoin APIs are simply not necessary, as they address issues that could be solved by bitcoin core developers and are, therefore, not the best way to move forward.
Bitcoin-related APIs are nothing new – they’ve been employed for years – but they’re usually proprietary designs developed by bitcoin service providers such as cryptocurrency exchanges and payment processors. However, a new breed of all-in-one bitcoin APIs is on the way offering something different.
A number of bitcoin APIs are currently in development, including the Chain API, BlockCypher API, Gem API as well as APIs developed by industry heavyweights such as Toshi and PlugChain, developed by Coinbase and CEX.io respectively.
For the time being, it is impossible to say which one will come to dominate bitcoin app development and it is too early to talk about the finer points of each API, as they are all in beta. However, the basic idea behind all of them is straightforward – comprehensive bitcoin APIs are supposed to reduce the level of expertise needed for app development and save developers a lot of time and money in the process.
Bitcoin APIs could, in theory, take the ‘cypherpunk element’ out of crypto app development and allow bitcoin integration in countless apps with very little overhead for the developer. Some bitcoin advocates tend to compare block chain technology to the TCP/IP protocol, as it could be used by regular consumers without even knowing it, the same way we use TCP/IP while browsing the Internet without giving it a second thought.
Bitcoin APIs are somewhat different, but they could be likened to popular APIs such as DirectX or Java APIs. People use them when they play games or browse the net, although they are not entirely sure what they do, but they help developers and publishers save money and develop products much faster.
However, the nature of bitcoin is somewhat different. For example, DirectX was developed by Microsoft for gaming on Windows and although it is developed with a lot of input from game developers and hardware makers, it is still Microsoft’s API for Windows.
Bitcoin APIs can be developed by anyone, their feature set and quality can vary and depend on a number of factors. Adoption is another concern, as developers will be able to choose from a range of different bitcoin APIs or no API at all, which is usually not the case with APIs such as DirectX.
The idea of speeding up development and making bitcoin services more accessible to app developers offers a range of benefits.
With easy to use bitcoin APIs doing all the heavy lifting, bitcoin developers would have more time to deal with actual app functionality rather than coding for bitcoin. It could also bring bitcoin to mainstream apps whose developers would never integrate bitcoin support otherwise, as it would entail too much effort.
The downside is that apps built on bitcoin APIs would have to rely on a centralised infrastructure working in unison with the decentralised bitcoin network.
Bitcoin developer and creator of Ethereum, Vitalik Buterin told CoinDesk that growth in API services is necessary in some cases, but that to some extent it is also a “sad and unfortunate” development.
Buterin explained:
“Bitcoin is meant to be a decentralized system and people really should be running a proper bitcoin client on their own server and getting information and pushing transactions through it. The reliance on centralized infrastructure makes it so that bitcoin-based services end up having no higher reliability than their centralized counterparts (often worse since our industry is newer and thus lower-quality).”
Buterin highlighted the lack of features in bitcoind/bitcoin core as being the main driving factor behind bitcoin development. One of the most important features missing is headers-first validation, which would allow clients to grab the block headers and act as SPV nodes until they can validate the full chain.
With headers-first implementation, a new bitcoind node would become useful in a matter of minutes, but at the moment it takes about three days, said Buterin.
Bitcoin APIs could be used for other operations, to provide price feeds, provide Merkle tree proofs of specific transactions and Buterin argues these use cases are justified.
The biggest argument in favour of free all-in-one bitcoin APIs is more down to earth. Money is flowing into bitcoin APIs because they have the potential to fuel more mainstream adoption by allowing people to develop bitcoin apps or add bitcoin functionality to existing applications with relative ease. Google’s Play Store and the Apple App Store now carry more than a million apps each, only a negligible fraction of them have cryptocurrency functionality. This huge market is virtually untapped.
Bitcoin APIs are supposed to reduce the threshold for crypto app development and allow more developers to integrate bitcoin functionality into their apps, at next to no cost. This is what bitcoin API developers are trying to do; this is why they expect their APIs will eventually fuel more mainstream adoption. The biggest problem is that bitcoin APIs are being designed to tackle shortcomings that shouldn’t exist in the first place.
Many concerns will persist, but until the new APIs come out of beta and start making an impact on app development, it is simply too early to pass judgement.
Image via Shutterstock