diff --git a/README.md b/README.md index f0e1066f2..029f1252e 100644 --- a/README.md +++ b/README.md @@ -14,8 +14,47 @@ API Umbrella is an open source API management platform for exposing web service * **Standardize documentation:** All your APIs are documented in a single place and in a similar fashion. ## Getting Started +Follow the instructions available [here](https://api-umbrella.readthedocs.io/en/latest/getting-started.html#) to download and install API Umbrella. Follow the quick setup instructions on the download page to begin running API Umbrella. -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](https://api-umbrella.readthedocs.org/en/latest/getting-started.html). +## Features +API Umbrella brings a range of features to simplify the lives of API creators and consumers. The primary features offered by API Umbrella are: + +1. [**API Key Management:**](#api-key-management) Handles API key registration, usage, and validation across multiple services without requiring any code changes in the API. + +2. [**Rate Limiting:**](#rate-limiting) Prevents abuse by controlling API usage on a per-user basis, ensuring API servers aren't overloaded. + +3. [**Analytics & Reporting:**](#analytics--reporting) Provides detailed insights into API usage, performance monitoring, and flexible querying for traffic analysis. + +4. [**Additional Security Layer:**](#additional-security-layer) Acts as a proxy layer above APIs to help scale services while managing access control. + +5. [**Centralized API Access:**](#centralized-api-access) Offers a unified entry point for developers to manage and maintain multiple APIs across the platform. + +6. [**Native Documentation Support:**](#native-documentation-support) Can host or link to API documentation, making it easy for developers to find and understand APIs. + +API Umbrella allows developers to focus on building APIs while it automates common tasks like access control, security, logging, and scaling​ + +### API Key Management +* **API Key Signup:** Provides a streamlined process for users to register and receive API keys. +* **Shared API Keys:** Users can reuse a single API key across all participating APIs in the Umbrella network. +* **No Code Changes:** API providers don’t need to modify their code to accommodate key management as API Umbrella handles this via a transparent layer. +### Rate Limiting +* **Custom Rate Limits:** Helps prevent abuse by allowing admins to set different rate limits per user or per API. +* **Per-User Limits:** Admins can assign varying usage quotas for different users, which ensures balanced API access. +* **Automatic Enforcement:** The rate limiting rules are enforced within the Umbrella layer, removing the need to do so locally. +### **Analytics & Reporting** +* **Usage Monitoring:** Allows for monitoring of API consumption through detailed traffic and performance metric logging. +* **Detailed Stats:** Provides insights into API traffic down to individual users. +* **API Performance Metrics:** Displays API response times in a graphical format. +* **Flexible Data Queries:** Custom queries allow for detailed data breakdowns based on API usage. +### **Additional Security Layer** +* **Access Control:** Provides access control mechanisms to restrict who can access specific APIs based on roles or permissions. +* **IP Whitelisting/Blacklisting:** Can restrict or allow access to APIs based on IP addresses. +* **SSL/TLS Encryption:** Ensures secure communication between clients and the API gateway by enforcing SSL encryption. +### **Centralized API Access** +* **Unified API Gateway:** Simplifies multi-API management by acting as a single access point for all APIs under an Umbrella. +### **Native Documentation Support** +* **API Documentation Hosting:** Hosts or links to API documentation, allowing users to easily explore and learn about various APIs. +* **Interactive Documentation:** API Umbrella supports interactive API documentation, enabling developers to try out APIs directly from the documentation site (integrated via tools like Swagger)​ ## API Umbrella Development