5 Developer-Friendly APIs
5 Developer-Friendly APIs
Check out the following five APIs.
Join the DZone community and get the full member experience.Join For Free
You may also like: Best of DZone: All Things API
1. Hacker News API
Hacker News is a great resource for developers to stay up-to-date on new technology and trends in our industry. It also happens to have one of the most developer-friendly APIs I've ever used. The docs are located on their GitHub (https://github.com/HackerNews/API) are concise and easy to use. If you're new to APIs or need data to easily consume for a project, this is a great choice.
At the time of writing, you don't even need an API key. However, don't let the simplicity of this API fool you — it is also extremely extensible. Through a partnership with Firebase (which we discuss below), the data is updated in near real-time. This means you could build on top of your very simple API project to use more advanced technologies and update your project in real-time (WebSockets, anyone?).
Another way to get even more out of this API is by leveraging its relational data model. HN has organized the API to allow for very straight-forward relationships, which can help you organize your data. If you're going to use one API from this list, use this one.
2. OMDB API
OMDB (https://www.omdbapi.com/) offers data comparable to a very similarly named website. I like this API for two reasons. First, it makes it easy to consume data other than just text. It returns links, pictures, ratings, and other items that are typically handled as buttons, or icons, or pictures, etc. This helps you practice handling different types of response data from an API and rendering that data as you see fit on your user interface. Have fun with it!
Secondly, this API offers a simple interface to search for items that will be returned. You can use this interface to make requests using user input, which is a fun problem for developers to explore! Also, I recommend thinking about input validation, the lifecycle of your HTTP request, error handling, etc. You'll have a blast.
3. National Park Service API
This API is awesome and I never see anyone use it! The NPS API (https://www.nps.gov/subjects/developer/api-documentation.htm) offers a few benefits we discussed above (relational data, rich response data, search interface), organized in a different and interesting way. But, the most interesting aspect of this API for me, is that you can develop a real-world application in a space that is not oversaturated.
You could develop a Progressive Web App that includes park information and works when you're in the wilderness, a trip planner to various national parks, a guessing game to match parks to states... I could go on. Use this API and build something cool.
4. Giphy API
Let's face it, gifs are fun. The Giphy API (https://developers.giphy.com/) is great because it introduces a new problem that we need to solve: speed! If you hit this API and try to render 100 gifs of cats, your page is going to be very slow and not very fun to use.
In fact, it might not even work on some devices. This API offers different states of gifs (still, auto playing, down sampled) that help you manage the size of your page, but, more importantly, forces you to begin thinking about more advanced development. The lessons you learn managing larger files like gifs will help you in the future, I promise.
5. Firebase API
We made it! Our final API is a great one that is used in many, many real-world applications across the internet. Firebase offers many services, but we're going to focus on my favorite: authentication!
This API is valuable to learn for a multitude of reasons. The docs are much longer than our other examples (https://firebase.google.com/docs) and include the other services that Firebase offers. An essential skill for a developer is being able to efficiently find the information we need to do our work. These docs will help you strengthen that skill.
My advice is to use the simplest and probably most ubiquitous authentication offered by Firebase, authenticating using Google. It's easy to implement, and many users will be able to use it. From there, you can add all the authentication methods you want. This API will be the most difficult to use on this list, but it is well documented, and you will be successful. You got this!
New APIs are constantly added to the internet. If you've found a great one not included on this list, let me know in the comments.
Now, go build something great!
Opinions expressed by DZone contributors are their own.