May 7, 2024
As a developer, when designing a website or an application, we sometimes need datasets conditioned on certain parameters (location, user data, etc.).
Instead of coding them ourselves and reinventing the wheel, there are ready-made and accessible solutions: public APIs!
Here, we will list the most useful public and free APIs (some up to a point) for development.
But before we list these most practical APIs, let's go back a bit.
API stands for Application Programming Interface.
Specifically, in the context of this article, an API is an entry point that we call to retrieve (or write) data. It therefore returns data that will be consumed by our site or app, often in JSON format (it can also be XML or any other format).
As we will see, the possible uses are numerous, and these APIs can greatly facilitate the development of a product.
The name of this API is quite telling: OpenWeather Map is an interface that allows you to retrieve, from geographic data:
• Link: https://openweathermap.org/api
• Limit: Free up to 60 calls/minute and 1 million calls per month
• Possible uses: Website listing historical weather during specific events; use for machine learning
Open Food Fact is the reference API when we talk about data concerning food. Indeed, it's the dataset upon which the app Yuka is based!
It notably provides, for each food item in its database, information such as:
And many more elements!
• Link: https://fr.openfoodfacts.org/data
• Limit: No limit
• Possible uses: Food scanning app for allergens (like Bokha), list of possible food items to buy for a given recipe
Are you passionate about botany? There's a perfect API for you! trefle.io indeed allows, via queries, to retrieve a wealth of information about the plant world.
Want to retrieve all the red flowers? No problem. All plants that are between 5 and 20 cm tall? No problem.
• Link: https://docs.trefle.io/
• Limit: No limit
• Possible uses: App allowing you to find the ideal plant for your home
This API allows you to retrieve, in real time, data from each aircraft flying around the globe. This data includes, for example, the location, the country of origin, and the velocity.
• Link: https://openskynetwork.github.io/opensky-api/
• Limit: No limit
• Possible uses: Create a personalized flight tracking app
Find tools to create or easily fetch API on Indie Dev Tools.
The name of this API is quite clear: it is a movie database. It allows for multiple queries, for example:
Depending on the queries, we will therefore retrieve elements with attributes (a movie will come for example with a title, a genre, the rating, whether it is intended for adults, etc.)
• Link: https://www.themoviedb.org/documentation/api
• Limit: No limit
• Possible uses: Create a smart search tool to find what movie to watch tonight
RandomUser, as its name suggests, allows the generation of users (or rather human profiles), randomly.
As you can imagine, here we do not retrieve real data like with the other APIs, but we generate fake data. RandomUser can be particularly useful for creating stubs for your own APIs without needing to create user data yourself.
And RandomUser generates very complete profiles. We can notably retrieve the name, the gender, address, login coordinates (with encrypted password), etc.
• Link: https://randomuser.me/
• Limit: No limit
• Possible uses: Fill your database with fake users for your tests
This API is well known and already widely used. It allows you to retrieve a lot of data about countries around the world.
Through this API, we retrieve:
And many other data.
• Link: http://countrylayer.com/
• Limit: 100 searches per month with limited returned data, payable beyond that
• Possible uses: Display countries in a selectbox, create an interactive map with information display on click
Still in the same theme of geography, here is another very handy API: Zippopotam!
This API allows, from a country code and a postal code, to retrieve all the information of a city.
For example, the URL https://api.zippopotam.us/fr/33000
will return information about the city of Bordeaux, France (name, geographical coordinates, and region).
• Link: http://www.zippopotam.us/
• Limit: No limit
• Possible uses: Retrieve city information from its postal code to avoid forcing the user to manually fill in all the information
Do we need to introduce Giphy? This giant dictionary of gifs allows, via an SDK and APIs, to retrieve gifs according to several criteria (trending, via search, random, etc.).
• Link: https://developers.giphy.com/
• Limit: No limit
• Possible uses: Create a tool for generating and sending random gifs
Cloud Convert is a set of APIs that allow multiple actions on files:
Very handy when you need to manipulate files.
• Link: https://cloudconvert.com/api/v2
• Limit: 25 conversions per day, payable beyond that
• Possible uses: Automatically convert files sent via a form into pdf if those provided are not in this format.
If you haven't found what you're looking for in our list, don't panic, there may still be an API that meets your needs!
There is a site that lists a large part of the APIs available on the web. However, be aware, some are paid from the start.
The site is called RapidAPI.
And, if you're interested, you can also create and make available (or even sell) your APIs on this site!
You might also want to read: The Best Platforms to Launch Your Product as a Developer in 2024
Written by Alexandre Grisey