Over a million developers have joined DZone.

Where Do I Start With APIs? Your Website!

DZone's Guide to

Where Do I Start With APIs? Your Website!

If your organization or business wants to get started with APIs but isn't sure where to begin, go for the "low-hanging fruits" already on your website.

· Integration Zone
Free Resource

Learn how API management supports better integration in Achieving Enterprise Agility with Microservices and API Management, brought to you in partnership with 3scale

I was firing up my low hanging fruit engine for a customer today, pulling down their entire website, giving them suggestions on where they should start with their API efforts, so I felt it was a good time to blog about this process again. Getting started with APIs can be a challenging question for some organizations, especially when they don't have executive and/or IT buy-in to the concept. To assist folks who find themselves in this situation, I have a process which I call "low-hanging fruit," designed to help jumpstart the API conversation in a safer way.

When someone approaches me with the question: Where do I start with APIs at our company, organization, institution, or government agency? If they do not have a specific project in mind or have the buy-in of IT yet, I always recommend started with the low hanging fruit on your website, and targeting these four areas:

  • Existing Spreadsheets - If there is a CSV, Microsoft Excel Spreadsheet, or Google sheet on the public website, it should be available as an API for searching, and usage in other applications.
  • Existing Data Files - If there are existing XML, JSON, or other machine-readable data files already available on the public website, they should be available as an API for searching, versioning, and usage in other applications.
  • Existing Tables - Any page that has a table over 25 rows should be reviewed and considered for publishing as a simple API, for use in all applications.
  • Existing Forms - Any page that has a form should be reviewed and considered for publishing the content available within as a simple API, for use in all applications.

Begin here. Target these four areas across your websites. Identify the data source. See if you can get access to the source. If not, scrape the data. Either way, get the data published as a simple API. As soon as you launch your first API, make sure you also publish a basic API portal on Github, using Github pages, and publish your first API there. Get to work on additional APIs, and repeat until you have a robust catalog of APIs in your developer portal. Get to work evolving each API, improving how it acquires and delivers its data, and develop new types of applications and partnerships around the data you've made available. #repeat

The data and content available on your public website have two important characteristics: 1) it has already passed legal and approved for being available publicly, and 2) there is a value in it being made available, as it's already on the public website for a reason. Learn about APIs and the API life cycle within this process. Practice. Grow. Learn. Low hanging fruit gives you a simple, safe place to begin your API journey, learning how it all works in an environment that will be more forgiving when you make mistakes, and hopefully will provide some pretty useful solutions that you can use to demonstrate the value of doing APIs at your company, organization, institution, or government agency.

Unleash the power of your APIs with future-proof API management - Create your account and start your free trial today, brought to you in partnership with 3scale.

integration ,api ,xml ,json

Published at DZone with permission of Kin Lane, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.


Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.


{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}