WSO2 API Manager (WSO2 API-M) is a powerful platform for creating, managing, consuming, and
monitoring web APIs. It combines tried and tested SOA best practices with modern
day API management principles to solve a wide range of enterprise challenges
associated with API provisioning, governance, and integration.

WSO2 API Manager consists of several loosely coupled modules.

* API Publisher
* API Store
* API Gateway
* API Key Manager

The API publisher module allows API publishers to easily define APIs and manage them
using a strong governance model that consists of well-established concepts such as,
versioning and lifecycles. API consumers can use the API Store module to discover
published, production-ready APIs and access them in a secure and reliable manner
using unique API keys. The built-in API Gateway module provides powerful tools to
secure and control the load on individual APIs.

WSO2 API Manager is based on the revolutionary WSO2 Carbon [Middleware a' la carte]
framework. All the major features have been developed as reusable Carbon
components.

Key Features

Design and Prototype APIs

- Design APIs, gather developer's feedback before implementing (API First Design).
- Design can be done from the publishing interface or by importing an existing Swagger definition.
- Deploy a prototyped API, provide early access to APIs, and get early feedback.
- Mock API implementation using Javascript.
- Support publishing SOAP, REST, JSON, and XML style services as XML.

Create a Store of All the Available APIs

- Graphical experience similar to Android Marketplace or Apple App Store.
- Browse APIs by provider, tags, or name.
- Self-registration to developer community to subscribe to APIs.
- Subscribe to APIs and manage subscriptions on per-application basis.
- Subscriptions can be at different service tiers based on the expected usage levels.
- Role based access to API Store, which helps to manage public and private APIs.
- Manage subscriptions per-developer.
- Browse API documentation, download helpers for easy consumption.
- Comment on and rate APIs.
- Forum for discussing API usage issues (Available soon in a future version).
- Try APIs directly on the Store front.
- Internationalization (i18n) support.

- All components are highly customizable through styling, theming, and open source code.
- Storefront implemented with Jaggery (jaggeryjs.org) for easy of customization.
- Pluggable to third-party analytics systems and billing systems (Available soon in a future version).
- Pluggable to existing user stores including JDBC and LDAP.
- Components usable separately.
- Store front can be used to front APIs that are routed through third-party gateways such as, Intel Expressway Service Gateway.
- Support for Single Sign On (SSO) using SAML 2.0 for easy integration with existing web apps.

Easily Deployable in Enterprise Settings

- Role based access control (RBAC) for managing users and their authorization levels.
- Store-front can be deployed in DMZ for external access with the Publisher inside the firewall for private control.
- Different user stores for developer focused store-front and internal operations in the publisher.
- Integrates with enterprise identity systems including LDAP and Microsoft Active Directory.
- Gateway can be deployed in DMZ with controlled access to WSO2 Identity Server (for authentication/authorization) and governance database behind a firewall.

Support for Creating Multi-tenanted APIs

- Run a single instance and provide API Management to multiple customers.
- Share APIs between different departments in a large enterprise.

System Requirements

Minimum memory - 2GB

Processor - Pentium 800MHz or equivalent at minimum

Java 1.8 or higher

The Management Console requires you to enable Javascript of the Web browser,
with MS IE 7. In addition to JavaScript, ActiveX should also be enabled
with IE. This can be achieved by setting your security level to
medium or lower.

Apache Ant is required to compile and run the sample clients. Apache Ant 1.7.0
version is recommended.

To build WSO2 API Manager from the source distribution, it is necessary that you have
JDK 1.8 and Maven 3.0.4 or later.

Installation & Running

Extract the wso2am-2.6.0.zip and go to the 'bin' directory

Run the wso2server.sh or wso2server.bat script based on you operating system.

Access the respective WSO2 API-M interfaces

API Publisher web application is running at - http://localhost:9763/publisher
You may sign in to the Publisher using the default administrator credentials (username: admin, password: admin).

API Store web application is running at - http://localhost:9763/store
You may sign in to the Store using the default administrator credentials (username: admin, password: admin).

Issue Tracker

Crypto Notice

This distribution includes cryptographic software. The country in
which you currently reside may have restrictions on the import,
possession, use, and/or re-export to another country, of
encryption software. BEFORE using any encryption software, please
check your country's laws, regulations and policies concerning the
import, possession, or use, and re-export of encryption software, to
see if this is permitted. See http://www.wassenaar.org/ for more
information.

The U.S. Government Department of Commerce, Bureau of Industry and
Security (BIS), has classified this software as Export Commodity
Control Number (ECCN) 5D002.C.1, which includes information security
software using or performing cryptographic functions with asymmetric
algorithms. The form and manner of this Apache Software Foundation
distribution makes it eligible for export under the License Exception
ENC Technology Software Unrestricted (TSU) exception (see the BIS
Export Administration Regulations, Section 740.13) for both object
code and source code.

The following provides more details on the included cryptographic
software: