10 public APIs you can use in your next project - Developer Tip of the Week

10 public APIs you can use in your next project - Developer Tip of the Week
Written by
Margaret Donin
February 3, 2023
No items found.

You’ve been playing through Wilco quests and have decided it is time to build your own project or maybe you have decided to build your own quest using our Quest Builder. You’ve started planning your project and you realised that it would be great if you could just use some external data/information, so that you wouldn’t have to write your own or be limited to your own skill set.

Turns out you can!

It’s called an Application Programming Interface or API for short. An API is a way for multiple computer programs to communicate; in this case your project with an API. Calls are made to the API and the API returns the information needed. The best part, the user of the API does not need to know how the API works, only how to request, send, and read the information. There are many different kinds of APIs but for your project you will want to use a Web API.

Web APIs are services accessed by the client using HTTP requests. The information returned to the client in either XML or, more commonly today, JSON. Web APIs are especially useful for querying databases of information. Web APIs can be categorised as either a SOAP API or REST API.

SOAP stands for Simple Object Access Protocol, and as the name implies it’s a standard protocol for accessing an API. The main advantages of this is you know exactly how your response from the API will be formatted and the information is more secure overall. SOAP APIs will only provide XML responses. REST stands for Representational State Transfer and has not specific protocol. The main advantages of a REST API is the speed of sending and receiving the information in either XML or JSON, however there is a huge disadvantage that any information sent or requested is less secure.

A simple analogy would be letter in an envelope and a postcard. The letter in an envelope has to follow rules: the letter must be inside the envelope, the envelope must be sealed, there must be a stamp in a specific spot in relation to the address, and the envelope must be addressed in a specific spot. No one can look into the envelope and read the letter. Upon receiving the envelope you know how to open it to read the letter. On the other hand a postcard gets a stamp, address, and message. Anyone can read the message the postcard is carrying and can see where the postcard is heading; however the postcard will get to its destination quicker than the letter. SOAP is the letter in an envelope and REST is the postcard.

In order to test an API or make an API request, you can use API clients like Postman e.t.c.

Maybe before today you had no interest in writing your own project but all this talk about APIs has piqued your interest.

Here are 10 public free APIs you can use in your next project:

  1. Lorem Piscum: This is can act as a place holder for images. We’ve all heard of lorem Ipsum, this is an API for random stock images.
    Check it out here: https://picsum.photos/
  1. Deck of Cards: This is a free API that acts as a randomiser for a deck or decks of cards.
    Check it out here: https://deckofcardsapi.com/
  2. Jamendo This is an API that allows you add music to your project.
    Check it out here: https://developer.jamendo.com/v3.0
  3. Chronicling America: This is a free and public API maintained by the Library of Congress, the API provides access to millions of historic and digitised newspapers. 
    Check it out here: https://chroniclingamerica.loc.gov/about/api/
  4. ArcSecond: This is an API that returns information about celestial objects.
    Check it out here: https://api.arcsecond.io/
  5. The Space Devs: A community maintained API on all things space travel. 
    Check it out here: https://thespacedevs.com/
  6. Miriam Webster Dictionary: An API maintained by Miriam Webster Collegiate Dictionaries that has more than just definitions.
    Check it out here: https://dictionaryapi.com/
  7. PokeAPI: An API with all of the Pokemon data you’ll ever need.
    Check it out here: https://pokeapi.co/
  8. BinaryJazz: An API that can be used to fetch random genres and genre stories. Check it out here: https://binaryjazz.us/genrenator-api/
  9. MediaWiki Encyclopedia: This is for software developers who wish to understand and use the MediaWiki Action API to integrate Wikipedia into their product.
    Check it out here: https://www.mediawiki.org/wiki/API:Main_page

Has any of these inspired a project? What are you waiting for? Start planning and coding!

Oh, and don’t forget to let us know when you complete your project with one of these APIs!