Versions: — current

This page is a part of the Getting Started with Repose
series. For more context around pre- and post-actions,
consult the table of contents on that page.


What is Repose?

Repose is an open-source, RESTful, middleware platform that transparently integrates with your existing infrastructure. Repose provides highly scalable and extensible solutions to API processing tasks such as authentication, rate limiting, API validation, HTTP request logging, and much more. Additionally, Repose allows services to use Enterprise Integration Patterns.

How does Repose work?

Repose takes incoming requests from clients and adjusts them for consumption by services by passing the requests through a series of extensible filters. These filters provide functionality such as authentication, authorization, rate-limiting, and request modification.

Repose can run as a stand-alone proxy server between the client and the origin service. The Repose instance can be on the same host as the origin service, but it doesn't have to be.  This deployment method, illustrated in the following graphic, is called Valve.

Repose can also run within a servlet container such as GlassFish and Tomcat in the WAR deployment. 

You can decide which configuration works best for you, and you can tweak many of your configurations without having to restart Repose – it will pick up configuration changes on the fly, making it easy to configure and test.

Repose can be configured to use a distributed data store service where cached information is exchanged across multiple nodes. This makes Repose fault tolerant with proven performance.

What services does Repose provide?

Repose provides a series of customizable filters that you can configure to perform a large number of API tasks.  The full list of filters is on the Filters and Services page.  Following are some of the most common ones:

Who can use Repose?

Anyone can use Repose! It is an open-source platform for the general public to consume, share, and improve.

How can I get Repose?

To get Repose, log in to your server and run the installation commands. Then, configure your origin service endpoint in the System Model, and you are ready to configure Filters and Services that work for you. We have many sample configurations that you can use to get started. Or, because Repose is open source, you can build your own stacks of reusable software components. 

Need more information about Repose?

Contact Us!  We're available on Freenode IRC, by email and you can post questions on our wiki.  Follow the Contact Us link for more information.

If you wonder what we've been working on lately, visit the Release Notes page.