13 free tools for API design, development, and testing

These free and free-tier services and open-source utilities will have your API up and running in no time

13 free tools for API design, development, and testing
Thinkstock

The rise of RESTful APIs has been met by a rise in tools for creating, testing, and managing them. Whether you’re an API newbie or an expert on an intractable deadline, you have a gamut of services to help you bring your API from concept to production, and many of them won’t cost you a dime.

Following is a sampling of free services for working with APIs. Some are quick and dirty applications to ease the job of assembling or testing an API. Others are entry-level tiers for full-blown professional API management services, allowing you to get started on a trial basis and later graduate to a more professional level of (paid) service if and when you need it. 

Amazon API Gateway

The Free Tier for AWS provides developers with no-cost access to most of the services AWS offers—including Amazon API Gateway. Your free Amazon API Gateway maxes out at one million API calls per month, and only lasts one year, but it’s enough to get you started.

The full, for-pay version of Amazon API Gateway allows you to build front-end APIs for applications built on Amazon EC2, AWS Lambda, or “any web application,” with meta-tools like traffic management, API version control, and monitoring all part of the package.

APImetrics

APImetrics is an API monitoring and alerting service that includes a visual API designer, support for both REST and SOAP APIs (easing the move from the latter to the former), a workflow system that allows multiple API calls to be triggered in sequence, and dashboarding for everything that needs to go right but could go wrong. There is no free tier, but the company does offer a 14-day free trial of its various service tiers. The minimal plan offers 500 calls per day, up to 15,500 per month, for $15 per month.

Assertible

Assertible lets you set up simple tests, or assertions, to monitor in-production APIs. You can import APIs from common third-party formats including Swagger, Postman, and curl. You can group tests by various criteria and execute them with various environmental parameters (e.g., staging vs. production) or with optional SSL validation, if you’re testing outside of your default domain. And you can execute Assertible tests on a schedule or by way of triggers, and have test statuses posted to GitHub.

The personal plan is free, although it only allows two web services, 10 tests per service, and 1,000 results retained. Paid plans begin at $25 per month, raise many usage caps, and allow tests to run more often.

BlazeMeter

BlazeMeter is an API load-testing service that provides real-time reporting. Other goodies include geo-distributed load testing, meaning you can have traffic generated from servers on multiple continents, and support for tests created by Apache JMeter.

The free tier for BlazeMeter lets you run 10 tests per month (max 20 minutes each), with up to 50 concurrent users, one shared load generator, and one week of data retention. Paid plans start at $99 per month for 1,000 concurrent users, 200 tests per year, and three months of data retention. 

Httpbin.org

Httpbin.org provides you with an array of HTTP API endpoint responses that are useful for testing or debugging front-ends that send requests. Instead of configuring the responses through a web interface, you configure them with URL parameters. This makes it easy to automate the use of the service.

For example, the /links/:n endpoint allows you to request a webpage with n HTML links—as a way to test a web scraper, for instance. Httpbin is also available as a Python package under an MIT-like license.

IBM API Connect

Like AWS, IBM Cloud offers a free tier that is robust enough to provide developers with a taste of what’s available, but not full-featured enough to build full-blown production applications. And like AWS, IBM Cloud offers an API management tool on that free tier, IBM API Connect.

IBM API Connect was originally just a tool to create APIs and hitch them up to live code. Today it also includes tools for enforcing policies around APIs, encouraging discovery, creating composite API designs, and “[integrating] cloud services with enterprise systems of record.” The service has a free tier of 50,000 API calls a month—more than enough to get one’s feet wet. Note that IBM Cloud automatically deletes any free-tier services after thirty days of inactivity, so use it or lose it.

JsonStub

JsonStub is a web interface that allows you to create quick mockups of API endpoints, returning static text (such as a JSON response) to test a front-end that queries for data. It isn’t very involved, but it isn’t meant to be. JsonStub is just the ticket when you want to, as the JsonStub homepage says, “Fake the back-end while you develop the front-end.”

Loader

How do you know your public-facing API won’t fall over dead the minute it goes live? Only by testing how well it holds up under heavy load. Set up a target host’s endpoint via Loader’s web interface or API, and test results will be delivered to you via a browser page in real time. The free version of the service allows you to test one target host for one minute at a time, with up to 10,000 simulated clients and two URLs per test. Paid plans start at $99.95 per month and remove most of the usage caps.

Mockable

Mockable is another quick-and-dirty service for mocking up REST and SOAP endpoints. The base tier is free in perpetuity and includes HTTPS support for mocks, although any routes not used within three months are deleted, logs are only retained for 24 hours or 5MB, and you’re only allowed to create up to 10 mocks per three-member team. Best part: You don’t even have to register to try it out. Temporary accounts are automatically created for you the minute you enter the admin console.

Mockbin

Mockbin, by API mavens Mashape (now Kong), lets you create mock endpoints for testing. Endpoints can use any HTTP method, return results in JSON, YAML, XML, or HTML, attach CORS headers to responses, and log and inspect the call traffic. Data in HAR format can be used to auto-generate HTTP responses as well, so mocks more closely match actual results returned from a live server. Mockbin is also available as a liberally licensed open source project.

Pyresttest

Python Rest Testing, or Pyresttest for short, is a Python tool for benchmarking and REST-testing APIs. Tests are defined in a simple YAML or JSON format, and can be integrated into a workflow or extended with conventional Python programming mechanisms. Downsides: Pyresttest offers only preliminary support for Python 3 and hasn’t been updated since 2016.

Restlet Studio

Billed as a “web IDE for API design,” Restlet Studio describes APIs with a set of visual tools. Beyond setting methods or query parameters, capabilities include auto-generating skeleton code for the APIs and even auto-generating client SDKs. Both Swagger and RAML are supported. In fact, you can toggle between Swagger and RAML while working on an API.

The free plan supports only one API, but you get an unlimited number of calls for testing, 10MB of stored data, and 1,000 calls in production. That’s right, you can use the free tier to deploy to production, albeit without support for the likes of CI/CD or custom domain names.

Runscope

Runscope offers a web-based toolkit for testing your APIs to make sure they function properly, return valid data, and can be debugged. You can import test plans using the Swagger 2.0 API definition standard, along with a slew of other common formats, including the format Runscope uses for its own testing products. There is no free tier, but 14-day free trials are available for all pricing plans save the bespoke enterprise tier.

Copyright © 2019 IDG Communications, Inc.