Permalink
Fetching contributors…
Cannot retrieve contributors at this time
122 lines (110 sloc) 5.14 KB
---
title: API Umbrella - Open Source API Management
---
<div id="headerwrap">
<div class="container">
<div class="row text-center">
<div class="col-lg-12">
<h1><i class="fa fa-umbrella" aria-hidden="true"></i> <b>API Umbrella</b></h1>
<h3>Open Source API Management</h3>
<p class="actions">
<%= link_to('<i class="fa fa-download fa-lg" aria-hidden="true"></i>Install', "/install.html", :class => "btn btn-default btn-lg", :role => "button") %>
</p>
<div class="details">
<p>
API Umbrella is a proxy that sits in front of your APIs.<br>
It can seamlessly add common functionality like api keys, rate limiting, and analytics to any API.
</p>
</div>
<img class="img-responsive img-center" src="images/overview.png" data-at2x="images/overview@2x.png" alt="" width="676" height="266">
<div class="links">
Version 0.14.4&nbsp;&nbsp;&nbsp;&nbsp;&sdot;&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://github.com/NREL/api-umbrella"><i class="fa fa-github" aria-hidden="true"></i>GitHub Project</a>
</div>
</div>
</div>
</div>
</div>
<div class="container features">
<h2 id="features" class="text-center">Features</h2>
<div class="row">
<div class="feature-graphic">
<i class="fa fa-key" aria-hidden="true"></i>
</div>
<div class="feature-description">
<h3>API Keys</h3>
<p>Track API usage and control access to your APIs with API keys. API Umbrella provides an API key signup form that an be embedded on any website, or internal APIs you can leverage to create API keys programmatically.</p>
</div>
</div>
<div class="row">
<div class="feature-graphic">
<i class="fa fa-hand-paper-o" aria-hidden="true"></i>
</div>
<div class="feature-description">
<h3>Rate Limiting</h3>
<p>Control how many requests each user can make to your APIs to prevent abuse or define usage tiers. Flexible rate limits can be defined ranging from per-second to per-day limits. Different limits can be defined for different APIs or for specific users.</p>
</div>
</div>
<div class="row">
<div class="feature-graphic">
<i class="fa fa-bar-chart" aria-hidden="true"></i>
</div>
<div class="feature-description">
<h3>Analytics</h3>
<p>Understand how your API is being used with rich analytics about API requests. View high level summary data, or drill down into the specifics with a flexible analytics querying interface in the admin tool.</p>
</div>
</div>
<div class="row">
<div class="feature-graphic">
<i class="fa fa-rocket" aria-hidden="true"></i>
</div>
<div class="feature-description">
<h3>Caching</h3>
<p>API Umbrella integrates a standard HTTP caching layer in front of your APIs. Accelerating your APIs and offloading work from your API servers is as easy as setting standard <a href="https://api-umbrella.readthedocs.io/en/latest/admin/api-backends/caching.html">Cache-Control</a> headers.
</div>
</div>
<div class="row">
<div class="feature-graphic">
<i class="fa fa-home" aria-hidden="true"></i>
</div>
<div class="feature-description">
<h3>Unify your APIs</h3>
<p>Provide a single, public entry point to all your APIs and microservices regardless of where your APIs might live behind the scenes or how many APIs you might have. API Umbrella can define how your public endpoints get routed to your API servers.</p>
</div>
</div>
<div class="row">
<div class="feature-graphic">
<i class="fa fa-smile-o" aria-hidden="true"></i>
</div>
<div class="feature-description">
<h3>Make Both API Consumers and API Producers Happy</h3>
<p>If you have multiple APIs, API Umbrella can simplify access for API consumers, with a single API key that can be used across different APIs. And by shifting common functionality, like API keys, rate limiting, and analytics outside of any individual API, API producers don't need to implement any of those details over and over again.</p>
</div>
</div>
<div class="row">
<div class="feature-graphic">
<img src="images/features/admin_ui.png" alt="" />
</div>
<div class="feature-description">
<h3>Admin Web Interface</h3>
<p>An administrative web tool is available to manage all aspects of API Umbrella, including API routing configuration, user management, and viewing analytics.</p>
</div>
</div>
<div class="row">
<div class="feature-graphic">
<i class="fa fa-cog" aria-hidden="true"></i>
</div>
<div class="feature-description">
<h3>Admin REST APIs</h3>
<p>All administrative functionality is also available via a <a href="https://api-umbrella.readthedocs.io/en/latest/admin/api.html">REST API</a>.</p>
</div>
</div>
<div class="row">
<div class="feature-graphic">
<i class="fa fa-users" aria-hidden="true"></i>
</div>
<div class="feature-description">
<h3>Multitenancy</h3>
<p>Multiple organizations can co-exist on a single API Umbrella installation with granular admin permissions and the ability to serve multiple domains.</p>
</div>
</div>
</div>