Five Top Quality APIs

By  on  

It's easy to think about creating beautiful UIs for presenting data when you don't consider the effort that goes into gathering and serving the data itself. Here's the thing -- thanks to apilayer, you can focus on your UIs and not the pain of API creation. No need to worry about licensing, load balancing, and rate limits when these five amazing APIs provide you everything you need!

exchangeratesapi

Having reliable exchange rate data is critical to maintaining a global eCommerce or financial website. Not only is real time exchange rate data important, but so is historical data. A few examples of using this amazing API include:

https://api.exchangeratesapi.io/v1/latest?access_key=###

/*
{
    "success": true,
    "timestamp": 1519296206,
    "base": "EUR",
    "date": "2021-03-17",
    "rates": {
        "AUD": 1.566015,
        "CAD": 1.560132,
        "CHF": 1.154727,
        "CNY": 7.827874,
        "GBP": 0.882047,
        "JPY": 132.360679,
        "USD": 1.23396,
    [...]
    }
}
*/

Opening your online store to a global audience is oftentimes as easy as the right API, and exchangeratesapi is the tool to make global commerce easy!

pdflayer

No one ever asks you to send them an HTML page -- PDFs are much more valuable in that they are easily portable, still indexed by search engineers, and industry standard documents. pdflayer is an excellent solution for converting websites to PDF format:

http://api.pdflayer.com/api/convert
    ?access_key=####
    &document_url=https://davidwalsh.name/resume.html
    &document_name=DavidWalshResume.pdf
    &owner_password=M00T00l$FTw!

Automated, quality PDF creation has long been a goal of web engineers and pdflayer has made it happen!

screenshotlayer

Everyone knows the saying "a picture is worth a thousand words" -- that also extends to the engineering world where a UI expert like myself would prefer to see the problem than have it described to me. Enter screenshotlayer:

http://api.screenshotlayer.com/api/capture
    ?access_key=####
    &url=https://davidwalsh.name
    &viewport=414x736
    &fullpage=1
    &format=JPG
    &delay=1

Whether you're looking to create screenshots for automation, clients, historical views, or bug reports, a solution like screenshotlayer is perfect!

serpstack

The search engine business is a billion dollar industry, from placement to analytics. serpstack allows you to continuously track your search engine placement through a variety of options, ensuring that the decision you make for your web app are data-based and intelligent:

const axios = require('axios');
const params = {
  access_key: '####',
  query: 'mcdonalds'
}

axios.get('http://127.0.0.1:8000/serp.php', {params})
  .then(response => {
    const apiResponse = response.data;
    console.log("Total results: ", apiResponse.search_information.total_results);
    apiResponse.organic_results.map((result, number) =>
      console.log(`${number+1}. ${result.title}`));
  }).catch(error => {
    console.log(error);
  });

Data-based SEO is a way to prove to your clients and employers that you've done excellent work. Also remember that rivals are gunning for your search engine placement -- monitor that placement and don't let them get the upper hand!

mailboxlayer

Email marketing is a thriving business but only when you have reliable email addresses -- if not, you risk being blacklisted by email service providers. mailboxlayer validates email addresses so that you aren't sending valuable messages into the void!

curl https://apilayer.net/api/check?access_key=####
    &email=SOME_USER@davidwalsh.name
    &smtp=1
    &format=1

{
  "email":"SOME_USER@davidwalsh.name",
  "did_you_mean":"",
  "user":"SOME_USER",
  "domain":"davidwalsh.name",
  "format_valid":true,
  "mx_found":true,
  "smtp_check":true,
  "catch_all":null,
  "role":false,
  "disposable":false,
  "free":false,
  "score":0.96
}

apilayer brings the heat when it comes to fantastic APIs. As a front-end engineer, I rely on experts in the API industry to do amazing work so that I can do amazing work. If you need reliable APIs for critical workflows, consider these five API providers to improve and enhance your apps!

Recent Features

  • By
    Interview with a Pornhub Web Developer

    Regardless of your stance on pornography, it would be impossible to deny the massive impact the adult website industry has had on pushing the web forward. From pushing the browser's video limits to pushing ads through WebSocket so ad blockers don't detect them, you have...

  • By
    Create a CSS Cube

    CSS cubes really showcase what CSS has become over the years, evolving from simple color and dimension directives to a language capable of creating deep, creative visuals.  Add animation and you've got something really neat.  Unfortunately each CSS cube tutorial I've read is a bit...

Incredible Demos

  • By
    Create a Dynamic Flickr Image Search with the Dojo Toolkit

    The Dojo Toolkit is a treasure chest of great JavaScript classes.  You can find basic JavaScript functionality classes for AJAX, node manipulation, animations, and the like within Dojo.  You can find elegant, functional UI widgets like DropDown Menus, tabbed interfaces, and form element replacements within...

  • By
    Duplicate the jQuery Homepage Tooltips Using MooTools

    The jQuery homepage has a pretty suave tooltip-like effect as seen below: Here's how to accomplish this same effect using MooTools. The XHTML The above XHTML was taken directly from the jQuery homepage -- no changes. The CSS The above CSS has been slightly modified to match the CSS rules already...

Discussion

  1. Great – I didn’t know serpstack, which helps me a lot in some projects.

    However, mailboxlayer was already tested in some projects and I have to say the results are often not accurate. 10minutemail, tempmail etc. worked are not recognized as Disposable: False – which is wrong.
    Also, if a domain does not exist, the first call needs sometimes 5-10 sec.

    There are a few open source libraries like voku/email-check which are working a lot better.

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!