The notion of working on side projects gets thrown out a lot amongst the programming community. It can be intimidating sitting in front of a blank code editor wondering what to build. Hosts of blog posts have been written recommending building applications like calculators, to-do lists, and social media clones. While those can certainly be helpful for learning technology stacks, let’s face it — the word doesn’t need any more calculators or to-do list apps. Instead, we can build new and interesting applications around public facing REST APIs.
This is a cross-post from the blog I run, Imago Dev.
What’s a REST API?
A Representable State Transfer(REST) Application Programming Interface(API) provides a set of methods that a programmer can use via HTTP to send and receive data. Since these methods are over HTTP, any programming language can be used to employ REST APIs.
There are thousands of REST APIs available on almost every different domain conceivable. Commonly used public data like weather or stock markets have dozens of APIs available for use. Many popular web platforms, like Facebook and Twitter, provide APIs to developers too. Some of the proprietary APIs have limitations to the number of times you can call. Many require signing up and receiving a private API Key. The most secure APIs require setting up OAuth for users to login securely.
You can find a huge list of public apis at this Github and an even grander list at RapidAPI.
10 Intriguing Public REST APIs
This list is certainly not exhaustive of cool REST APIs, but simply some I find to be especially neat and worthy of some side projects. All of these are completely free and do not require any thing more than getting an API Key — no need to figure out how to handle OAuth or pay for their use.
- PokeAPI The largest media franchise of all time now has an easy way to get data on the 800+ Pokemon.
- NASA API Space, the final frontier. Get data on astroids, galaxies, and more.
- Open Food Facts A huge amount of data on food products from around the world.
- TransLoc OpenAPI Get live data of public transportation of cities and college campuses.
- Urban Dictionary API It’s amazing what slang people come up with.
- Merriam-Webster Dictionary API For those that want real words’ definitions and synonyms.
- Numbers API Interesting facts and trivia on numbers.
- WeatherBit API Current and historical weather data.
- US Government Data API A fairly big catch-all for dozens of United State data samples such as agriculture, health, and public safety.
- Bible API The best selling book of all time. The greatest story ever told.
What To Do With Them
All those public APIs are great, but having a list of interesting sources of data does not inherently help the initial problem of determining what to do for a new project.
The best place to start is by simply getting and displaying data. Maybe that’s showing a Pokemon of the day or the definition of a typed in word. For the more creative types, try taking pieces of the data and mapping it to a visual element, such as temperature to color or drawing lines based on bus movement.
The hardest part is simply getting started. Once you’ve gotten past the initial hurdle of fetching and displaying the information, I’m sure you’ll think of plenty of next steps for your project!
Top comments (31)
Great collection. Feel free to use open source API testing tool: Hoppscotch to spin up these APIs on-the-go directly from your browser window.
hoppscotch / hoppscotch
👽 Open source API development ecosystem - https://hoppscotch.io
Love using Postwoman -- thanks.
да он какой там педик
I appreciate the efforts but you don't just stick a product in face. Article was not associated with having REST API client, but you stick it there out of the blue.
If the product is good, people are going to talk about it. This just looks like an ad.
The post is about API's, providing a client recommendation is on-topic.
Cool Post, bro. You could check out this github repo for an extensive list of public APIs -
github.com/public-apis/public-apis
Yeah, that list an excellent and one I refer to often! I included links to that and RapidAPI in the post.
Oh. I didn't see that initially.
Huge directory of REST-APTs
programmableweb.com/apis/directory
Nice, this is a pretty great directory that I've not seen before. Thanks for sharing!
Interesting post. You might find these APIs cool and super-helpful:
Urban Dictionary API may not be public, but it has public facing API. The link in the article was to the API entry in urbandictionary, not the actual endpoint.
The API is relatively simple: api.urbandictionary.com/v0/define?... but I wouldn't count on your app surviving for long if they see you slurping traffic.
Urban Dictionary API has an unofficial API.
The link to the Bible API appears to be wrong. 😉
God works in mysterious ways
🤣lol
Geeze, thanks for pointing that out. It has been fixed 😅
openweathermap.org/api -> OpenWeatherMap is an awesome API that's pretty easy to use
Yeah, there are many great weather APIs! My first draft of this post had the Dark Sky API, as it is my preferred weather app. I chose not to, as the only pricing model they have is a pay-as-you-go tier, While the first 1000 calls per day free is plenty for many projects, I wanted APIs that had totally free tiers. Open Weather Map is great and probably the most popular weather API. I decided to list a lesser known one; thus, I went with WeatherBit for this post.
Hi! great article :D
I also recommend Rick and Morty's api rickandmortyapi.com/
Everything you could ever want to know about Delaware data.delaware.gov/
Great post! I'd like to add The chuck Norris jokes API to the list. It's just great for a laugh!
Some comments may only be visible to logged-in visitors. Sign in to view all comments.