Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Subscription Approval #1568

Open
wants to merge 9 commits into
base: dev
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions en/docs/administer/create-api-subscription-plans.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ To create an organization-level subscription plan, follow the steps given below:
- In the **Name** field, you must specify a name to uniquely identify the subscription plan in various contexts. The value is editable only at the time you create the subscription plan. You cannot change the name after you create it.
- The **Stop on Quota Reach** checkbox is selected by default when creating a subscription plan. When selected, requests return an HTTP 429 response if the request count exceeds the limit. If you clear the checkbox, requests are allowed even if the quota is exceeded.
- Burst control protects your backend from sudden request spikes and manages API usage. It’s especially useful for subscription plans where the request count is enforced over a long period, to prevent consumers from using their entire quota too quickly. Ensure you select the **Burst Control** checkbox when the **Request Count Time Unit** is selected as **Hour** or **Day**.
- Select the **Approval required** checkbox if you want to enforce administrator or API publisher approval for the subscription plan. This makes it necessary for API consumers to request approval for the subscription plan to use it for API access.

![Create subscription plan](../assets/img/administer/create-subscription-plan.png)

Expand Down
19 changes: 19 additions & 0 deletions en/docs/administer/review-approval-requests.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Review Approval Requests

This guide explains how to review, approve, or reject approval requests for various types of resources in Choreo.

## Approving or rejecting requests

1. Sign in to the [Choreo Console](https://console.choreo.dev/).
2. Click on the current organization in the top left.
3. In the left navigation menu, click **Approvals**. This opens the organization-level approvals page.
4. On the **Approvals** page, you can view the list of pending approval requests.
5. Click on the approval request you want to review.
6. In the approval request details pane, click **Approve**.
7. In the approval request details pane, click **Reject**.

![Approve subscription](../../assets/img/api-management/manage-api-traffic/review-subscription-approval.png)

## Types of approval requests

1. [Subscription Approval](../api-management/manage-api-traffic/configure-subscription-approval.md)
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Configure Subscription Approval
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems to be almost the same content we have drafted under the Administer section right (The page that will probably include info on the process to review subscription requests and proceed to approve or reject)?
Any reason to repeat the content here?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This page will be instructions specific to subscription approval.IDT we should mention that under Administer/Review ApprovalRequests same reasons as above


Choreo allows you to create subscription plans that require approval before being activated. This feature enables you to control access to APIs by requiring administrative review and authorization of subscriptions before they become active.

To use a subscription plan that requires approval, follow the steps given below:

## Prerequisites

- You have [created an API subscription plan](../../administer/create-api-subscription-plans.md) that requires approval.
- You have [assigned a subscription plan that requires approval to an API](assign-subscription-plans-to-apis.md).
- You have [subscribed to an API using a plan that requires approval](subscribe-to-an-api-with-a-subscription-plan.md).

## Request approval

1. In the left navigation menu, click **Approvals**. This opens the organization-level approvals page.
2. On the **Approvals** page, you can view the list of pending subscription requests.
3. Click on the subscription request you want to approve.
4. In the **Subscription Request Approval** pane that opens, click **Approve**.

![Approve subscription request](../../assets/img/api-management/manage-api-traffic/review-subscription-approval.png)

5. The subscription is now active and available in the DevPortal.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Subscribe to an API with a Subscription Plan

If an API has subscription plans assigned to it, API consumer can select the subscription plan that best fits their requirement at the time of subscribing to the API.
If an API has subscription plans assigned to it, API consumers can select the subscription plan that best fits their requirements at the time of subscribing to the API.

To subscribe to an API with a subscription plan, follow the steps given below:

Expand All @@ -14,10 +14,17 @@ To subscribe to an API with a subscription plan, follow the steps given below:

![Add subscription](../../assets/img/api-management/manage-api-traffic/add-subscription.png)

8. If the selected subscription plan requires approval, your subscription will be shown as "Pending" until it is approved by an organization admin or the API publisher.

!!! note
Subscription plans can be set to require approval. When enabled, an **API Publisher** or **Administrator** must approve subscription requests before they can be used. To configure this setting, see [Configuring Subscription Approval](./configure-subscription-approval.md).

To verify that the subscription plan works as expected, follow the steps given below:

1. In the Developer Portal header, click **APIs**.
2. Search for the API you subscribed to and click **Try Out**.
3. Invoke the API until you exceed the request limit set in the subscription plan. You will see that the API throttles further requests once the limit is reached.
3. If your subscription is approved and active, invoke the API until you exceed the request limit set in the subscription plan. You will see that the API throttles further requests once the limit is reached.

![Throttle response](../../assets/img/api-management/manage-api-traffic/throttle-response.png)

4. If your subscription is still pending approval, you may see an error message indicating that you don't have an active subscription when trying to invoke the API.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified en/docs/assets/img/administer/create-subscription-plan.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions en/mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,7 @@ nav:
- Manage API Traffic:
- Assign Subscription Plans to APIs: api-management/manage-api-traffic/assign-subscription-plans-to-apis.md
- Subscribe to an API with a Subscription Plan: api-management/manage-api-traffic/subscribe-to-an-api-with-a-subscription-plan.md
- Subscription Request Approval: api-management/manage-api-traffic/configure-subscription-approval.md
- Rename API Display Name: api-management/rename-api-display-name.md
- Monitoring and Insights:
- Observability Overview: monitoring-and-insights/observability-overview.md
Expand All @@ -200,6 +201,7 @@ nav:
- Configure Asgardeo as an External IdP: administer/configure-an-external-idp/configure-asgardeo-as-an-external-idp.md
- Configure Azure as an External IdP: administer/configure-an-external-idp/configure-azure-ad-as-an-external-idp.md
- Create API Subscription Plans: administer/create-api-subscription-plans.md
- Review Approval Requests: administer/review-approval-requests.md
- Configure a User Store with the Built-In Identity Provider: administer/configure-a-user-store-with-built-in-idp.md
- Developer Portal:
- Customize the Developer Portal: administer/customize-the-developer-portal.md
Expand Down