The rise of RESTful APIs has been met by a rise in tools for creating, testing, and managing them. Whether you’re a newbie building your first API, or an expert racing an intractable deadline, you have a gamut of services to help you bring your API from concept to production. 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 that will ease the job of assembling or testing an API. Others are entry-level tiers for full-blown, professional-grade API management services, allowing you to get started on a trial basis and graduate to a higher level of (paid) service if and when you need it.
Amazon API Gateway
The AWS Free Tier 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 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 allows up to 20,000 calls per month, for $18 per month, but all call results are stored indefinitely, so you don’t pay separately for keeping those.
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 status posted to GitHub.
The personal plan is free, but allows only two web services, 10 tests per service, and 1,000 results retained. Paid plans, which begin at $25 per month, raise usage caps and allow tests to run more often.
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. Mock services and test data can be assembled and generated to make your tests more realistic and reflective of actual use.
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 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 web page with n HTML links—as a way to test a web scraper, for instance. The software that drives the service, Httpbin, is also available as a Python package under an MIT-like license, so you could host it locally.
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.
Want to test an API reading system with some fake data? JSONPlaceholder offers a number of endpoints that provide fake data in a few common arrangements—posts to a message board, comments, images, to-do items, and so on. All results are returned as JSON, and all HTTP methods (GET, POST, PUT, etc.) are supported.
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. Register a target host’s endpoint with 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 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.com, by API gateway provider 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 that mocks more closely match actual results returned from a live server. Mockbin is also available as a liberally licensed open source project.
Runscope offers a web-based toolkit for testing that your APIs 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.
Swagger Inspector, by Smartbear, is similar to Httpbin, letting you query APIs right in the browser, and saving the results for later inspection. Swagger Inspector also works with more than just REST APIs, supporting SOAP and GraphQL as well. Documentation for your API can be auto-generated based on the tests you’ve performed. The free plan supports three API definitions, and paid accounts start at $75 per month.
Serdar Yegulalp is a senior writer at InfoWorld, focused on machine learning, containerization, devops, the Python ecosystem, and periodic reviews.
Copyright © 2022 IDG Communications, Inc.