Chances are you’ve heard the term API tossed around by various people, especially in the last couple of years. However, while a lot of us talk about APIs, it can get pretty obvious pretty quickly that most of us don’t actually know what an API is, even though many of us use products built with one in our daily lives.
This is meant to be a quick dive into what an API is, what APIs are used for, and why you might (or might not) want to use the Yext API for your business. This guide assumes a certain amount of internet literacy; if you’re still a bit confused at the end of this, please feel free to ask questions in the forums.
API stands for Application Programming Interface, and literally means “a connection that lets you create software.” That basic statement is, at its core, what the purpose of an API is.
APIs allow you (that is, a developer) to access an existing library of information using a key. The owner of this library can control how much of their information you can see by changing what key you have, or how much that key unlocks. Some APIs allow you to write as well as read — this means that, when you access their library, you can make changes to the data you access. When you make a request for information, this is referred to as an API call. When the API returns information to you, this is called a response.
My favorite metaphor for what APIs do and how they work is a very simple, easily understood one: a restaurant. In this instance, your order is the API call. You’re putting in a formatted request for some kind of data (here, a meal) to be acted upon. In turn, the plate you receive from the kitchen is the response. The menu — the limited choices you have based on what the kitchen is willing to make for you — serves as the API itself.
By contrast, a closed API is limited by its owner on who can receive access (usually “by invite only” essentially — clients, paying customers, employees, contractors, etc.) and how much access that key will provide. Most proprietary APIs are closed.
The most honest (and, unfortunately, least helpful) answer to this is: a lot.
More specifically, it lets you build an application or a program on top of an existing dataset. This means you don’t have to spend months or years collecting enough data to make your product possible; instead, you take advantage of someone else already aggregating that information, allowing you to transform it into information — whether it’s a restaurant-finder and rating app, a video-streaming service, or a social media management application.
Some APIs are only able to retrieve (pull) information. These APIs are meant to be “read-only” and simply allow you to “pull” information into another place, whether that’s your app or somewhere else. Many first-generation versions of an API are made this way, to encourage others to develop third-party applications with the data.
Eventually, the goal is for an API to allow users to ingest (or, “push”) information back to the API owner. An example of this kind of API is Twitter — users can retrieve tweets (pull) onto their Twitter app, as well as post to Twitter (push) from their mobile devices.
A final point: most APIs are “rate limited,” a fancy way of saying that a user can submit a limited number of calls in a given time. This can be as little as twice per minute to 1000 times per second, or even more. Generally, rate-limits are put in place as part of bandwidth management, preventing a single requester from dominating the available bandwidth and thus slowing down the entire service for everyone else.
Yext has a closed API that our partners can use to manage their customers. The Yext API includes a set of two keys: one to a sandbox (testing area) database, and one to production (the live, actual data used on the site). Because the sandbox and production databases are intended for VERY different uses, access to each database will require its own key. A key for sandbox will NOT work on production.
Ideally, you’ll only need the API if you meet all three of the following criteria:
Because an API is a pretty serious outlay, we won’t be able to extend you the API option unless you have an experienced, savvy technical point person managing the integration.
If you’d like to see if you qualify for API access to Yext PowerListings, contact your Partner Developer directly. They’ll evaluate and coordinate with you to get the keys and implementation in order.
For support with the API, you can email the same support address (firstname.lastname@example.org) that you would normally use. Or, alternatively, feel free to ask in the appropriate forum. Do NOT ask questions on public forums, bulletin boards, mailing lists, etc. Because the Yext API is not an open API, there will be little to no support available outside of Yext.
I used these sites in the course of writing this article. Feel free to learn more by diving into these pages yourself!
Feel free to ask in our forums if you have any questions about APIs!