Supported Protocols

Overview

API Simulator’s current focus is on simulating HTTP APIs, also often times called Web APIs. What are usually considered REST or RESTful APIs over HTTP fall in this category as well.

API Simulator supports the HTTP/1.1 and HTTP/1.0 protocols and, since version 1.5, the HTTP/2 protocol. To our knowledge, API Simulator is the first free and fully functional API simulation tool to offer HTTP/2 in a stable release – not just some beta or a roadmap item – for running HTTP API simulations!

HTTP/1.x and HTTP/2

It is really easy with API Simulator - there are no startup arguments, switches, or configuration to set. API Simulator auto-detects and negotiates the HTTP protocol – HTTP/1.x or HTTP/2 – when client establishes a connection or submits the first request.

Another convenient feature: HTTP/1.x and HTTP/2 connections are on the same port number - no additional configuration is required.

When it comes to HTTP/2, API Simulator supports all three ways for starting HTTP/2:

HTTP and HTTPS

API Simulator supports both plain HTTP and HTTPS (HTTP over TLS/SSL) connections. That is for HTTP/1.x and HTTP/2 as well.

In the spirit of making it easy for you, HTTP and HTTPS connections to API Simulator are on the same port number - no additional configuration is required.

HTTP and HTTPS Proxy

API Simulator supports being called as HTTP or HTTPS proxy. This helps when it is hard or impossible to change the application/service under test or its configuration. Instead, configure the HTTP client to use API Simulator as HTTP or HTTPS proxy. (How to do that depends on the HTTP client in use. Some, for example, would look at environment variables like HTTP_PROXY and HTTPS_PROXY; a Java program would use -D arguments…​)

The client will usually make first a HTTP CONNECT call to establish a connection and then sends over that connection the actual request to establish a TLS tunnel. There are two cases and API Simulator supports both of them:

  • The connection to API Simulator as HTTP Proxy is plain text HTTP; the actual request is then HTTPS.

  • The connection to API Simulator as HTTPS Proxy is HTTPS (HTTP over TLS/SSL); the actual request then is HTTPS through HTTPS.

Calling API Simulator as HTTP or HTTPS proxy does not require any additional configuration in API Simulator. Moreover, API Simulator answers as HTTP or HTTPS proxy on the same port number.


We would love to hear your feedback! Shoot us a quick email to [feedback at APISimulator.com] to let us know what you think.

Happy API Simulating!