Open source API management platform
JavaScript Ruby Lua HTML Java CMake Other
Latest commit 8a32ec0 Jul 27, 2016 @GUI GUI Update dependencies.
Failed to load latest commit information.
bin Fix luajit beta version references. Jun 25, 2016
build Update dependencies. Jul 27, 2016
config Make Elasticsearch 2 compatibility optional. Jun 20, 2016
deploy Fix deployment issue. May 23, 2016
docker Update version number to v0.12.0. Jun 29, 2016
docs Update architecture diagrams in documentation to reflect reality. Jul 10, 2016
scripts Add one-off script to fix invalid log geoip data. Apr 28, 2016
src Only show the "Beta Analytics" checkbox if Kylin analytics is enabled. Jul 26, 2016
templates/etc Some more shellcheck linting fixes. Standardize bash shebang. Jun 18, 2016
test Fix geocoding test for city-state that has recently changed in geoip. Jul 26, 2016
website Add docker install instructions to website. Fix YAML indentation. Jun 30, 2016
.ackrc Some additional packaging cleanup and reorganization. Apr 17, 2016
.gitignore git-ignore additional temp build packaging files. May 29, 2016
.luacheckrc Fix dns resolving in nginx when static site is set to a hostname. Oct 25, 2015
Berksfile Undo some accidentally committed stuff. Apr 3, 2016
Berksfile.lock Update development cookbook to disable optional components. Jun 1, 2016 Adjust release date of v0.12. Jun 29, 2016
CMakeLists.txt Install shellcheck during build process for shell linting. May 15, 2016
LICENSE.txt Add license. Sep 3, 2012 Update website and doc links. Apr 13, 2016
Vagrantfile Improve vagrant provision distclean detection. Jun 1, 2016
circle.yml Make Elasticsearch 2 compatibility optional. Jun 20, 2016
configure Make the hadoop analytics and test dependencies optional during build. Apr 9, 2016
sha256sums.txt Add checksums for v0.12.0 packages. Jun 30, 2016

API Umbrella

What Is API Umbrella?

API Umbrella is an open source API management platform for exposing web service APIs. The basic goal of API Umbrella is to make life easier for both API creators and API consumers. How?

  • Make life easier for API creators: Allow API creators to focus on building APIs.
    • Standardize the boring stuff: APIs can assume the boring stuff (access control, rate limiting, analytics, etc.) is already taken care if the API is being accessed, so common functionality doesn't need to be implemented in the API code.
    • Easy to add: API Umbrella acts as a layer above your APIs, so your API code doesn't need to be modified to take advantage of the features provided.
    • Scalability: Make it easier to scale your APIs.
  • Make life easier for API consumers: Let API consumers easily explore and use your APIs.
    • Unify disparate APIs: Present separate APIs as a cohesive offering to API consumers. APIs running on different servers or written in different programming languages can be exposed at a single endpoint for the API consumer.
    • Standardize access: All your APIs are can be accessed using the same API key credentials.
    • Standardize documentation: All your APIs are documented in a single place and in a similar fashion.


Binary packages are available for download. Follow the quick setup instructions on the download page to begin running API Umbrella.

Getting Started

Once you have API Umbrella up and running, there are a variety of things you can do to start using the platform. For a quick tutorial, see getting started.

API Umbrella Development

Are you interested in working on the code behind API Umbrella? See our development setup guide to see how you can get a local development environment setup.

Who's using API Umbrella?

Are you using API Umbrella? Edit this file and let us know.


API Umbrella is open sourced under the MIT license.