Skip to content

Commit

Permalink
Merge pull request #1670 from jhivandb/subscriptionApproval2
Browse files Browse the repository at this point in the history
Subscription approval docs
  • Loading branch information
Nashaath authored Dec 6, 2024
2 parents 3422951 + 0ba84ed commit 2a114c1
Show file tree
Hide file tree
Showing 6 changed files with 34 additions and 6 deletions.
34 changes: 29 additions & 5 deletions en/docs/administer/configure-approvals-for-choreo-workflows.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,30 @@

Choreo allows you to configure approval processes for specific workflows within the platform. An approval process for a workflow ensures that critical or sensitive changes are properly managed and controlled.

Choreo currently allows you to configure approvals for environment promotion workflows, with support for API subscription approvals coming soon.
Choreo currently allows you to configure approvals for environment promotion and API subscription workflows.

Configuring approvals for environment promotion allows authorized users to control components being promoted to a critical/production environment.

Configuring approvals for the API subscription workflow allows you to create subscription plans that require approval before being activated. This feature allows you to control access to APIs by requiring administrative review and authorization of subscriptions before they become active.

## Permissions to review and respond to approval requests

To review and respond to approval requests, a user must have the following permissions. Administrators must ensure that users designated to review and respond to approval requests have these permissions:
Click the respective tab for details on permissions depending on the workflow for which you want to configure approvals:

=== "Environment promotion"

To review and respond to environment promotion approval requests, a user must have the following permissions. Administrators must ensure that users designated to review and respond to approval requests have these permissions:

- **WORKFLOW-MANAGEMENT**: Grants access to view and approve workflow requests. Each workflow type has a separate permission.
- **PROJECT-MANAGEMENT**: Grants access to view and approve workflow requests. This is the same permission used to update or delete projects.

=== "API subscription"

- **WORKFLOW-MANAGEMENT**: Grants access to view and approve workflow requests. Each workflow type has a separate permission.
- **PROJECT-MANAGEMENT**: Grants access to view and approve workflow requests. This is the same permission used to update or delete projects.
To review and respond to API subscription approval requests, a user must have the following permissions. Administrators must ensure that users designated to review and respond to approval requests have these permissions:

- **WORKFLOW-MANAGEMENT**: Grants access to view and approve workflow requests. Each workflow type has a separate permission.
- **PROJECT-MANAGEMENT**: Grants access to view and approve workflow requests. This is the same permission used to update or delete projects.
- **Approve API subscriptions**: Grants access to approve or reject API subscription requests.

## Set up an approval process for a workflow

Expand All @@ -34,4 +50,12 @@ To set up an approval process for a workflow, follow these steps:

7. Click **Save**. This configures and enables the approval process for the workflow.

Once you configure an approval process for a workflow, developers must [submit a request for approval to use the workflow](../develop-components/submit-and-manage-workflow-approval-requests.md). An authorized assignee must then [review and approve the request](./review-workflow-approval-requests.md) for a developer to proceed with the task related to the workflow. Depending on the workflow, there can be tasks where the execution may occur automatically upon approval.
Once you enable the approval process for a workflow, see the following details on how to submit a request for approval and the approval process. Click the respective tab depending on the workflow for which you enabled the approval process:

=== "Environment promotion"

Once you configure an approval process for environment promotion, developers must [submit a request for approval to use the workflow](../develop-components/submit-and-manage-workflow-approval-requests.md). An authorized assignee must then [review and approve the request](./review-workflow-approval-requests.md) for a developer to proceed with the task related to the workflow.

=== "API subscription"

Once you configure an approval process for API subscription, administrators can select the **Approval required** checkbox to create or update subscription plans to require approval. For details, see [Create API Subscription Plans](../administer/create-api-subscription-plans.md). API consumers using these plans must request approval to proceed. For details, see step 7 in [Subscribe to an API with a Subscription Plan](../api-management/manage-api-traffic/subscribe-to-an-api-with-a-subscription-plan.md). An authorized approver must then [review and approve the request](./review-workflow-approval-requests.md) before the subscription is granted.
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 subscription requests made to this plan require administrator or API publisher approval to activate the plan. This allows for manual review and approval of a subscription before granting API access.

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

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,10 @@ To subscribe to an API with a subscription plan, follow the steps given below:
4. In the left navigation menu, click **Subscriptions**.
5. In the **Subscription Management** pane that opens, click **+ Add APIs**.
6. In the **Add APIs** pane that opens, select the API, API version, and subscription plan with which you want to subscribe to the API.
7. Click **Add Subscription**.
7. If the selected subscription plan requires administrator or API publisher approval to become active, click Request Subscription. Otherwise, click Add Subscription. 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
If the subscription plan requires administrator or API publisher approval to become active, the subscription status will be set to Pending Creation until it is reviewed and approved.

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

Expand Down
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.

0 comments on commit 2a114c1

Please sign in to comment.