Request Publish

Learn how to configure and use the Request Publish workflow to route content through an approval process before it goes live.

Introduction

The Request Publish workflow provides a structured approval process for content publishing. Authors submit a publish request directly from the Document Authoring editing interface. The designated approvers receive an email notification with a link to review the content and either approve or reject it.

The workflow consists of two components working together:

Email notifications are sent via a backend worker managed by the AEM Engineering team. The worker is provisioned per customer using your own email infrastructure. A demo environment based on Gmail is available to get you started.

Setup

The Request Publish workflow requires three steps: getting onboarded by your AEM Engineering contact to configure your org and site, configuring your DA site to enable the plugin and app, and setting up the required user permissions.

Step 1: Get Onboarded

Your org and site needs to get onboarded in order to use the plugin. To get started, reach out to your AEM Engineering contact with the following information:

At this time, your custom API should support the following payload format

{\n  \"personalizations\": [\n    {\n      \"to\": [\n        { \"email\": \"[email protected]\" },\n        { \"email\": \"[email protected]\" }\n      ],\n      \"cc\": [\n        { \"email\": \"[email protected]\" }\n      ],\n      \"subject\": \"Subject line\"\n    }\n  ],\n  \"from\": {\n    \"email\": \"[email protected]\",\n    \"name\": \"DA Publishing\"\n  },\n  \"content\": [\n    {\n      \"type\": \"text/html\",\n      \"value\": \"<html>...</html>\"\n    }\n  ]\n}

Step 2: Configure Your DA Site

You need to have CONFIG write permissions for this step in DA

Once onboarded, configure your site's DA config sheet to enable the plugin, app, and workflow rules. Open your config sheet at https://da.live/config#/<org>/<site> and make the following changes.

library tab — Request Publish plugin

Adds the plugin to the DA library so authors can access it from the editing interface:

title path icon experience
Request Publish
https://main--da-blog-tools--aemsites.aem.live/tools/plugins/request-for-publish/request-for-publish.html
https://main--da-blog-tools--aemsites.aem.live/tools/plugins/request-for-publish/request-for-publish.svg
fullsize-dialog

apps tab — Publish Requests inbox

Adds the inbox app to the DA Apps menu. The app automatically shows the appropriate view based on who is logged in — approvers see pending requests to manage, authors see their own submitted requests.

title description path
Publish Requests Inbox Manage Requests to publish the content
/app/aemsites/da-blog-tools/tools/apps/publish-requests-inbox/publish-requests-inbox

publish-workflow-config tab

Defines path-based rules that determine which approvers are assigned to different areas of your site. Each rule has a Pattern (supporting wildcards), an Approvers column (comma-separated emails or distribution list names), and an optional CC column. The most specific matching rule is used for any given content path.

pattern approvers CC notifyonreject
/blog/authors/*
[email protected] [email protected] true
/blog/*
[email protected]
/*
[email protected]

Pattern specificity is determined by the number of path segments that match. An exact match takes highest priority, followed by closer wildcard matches, with the root /* wildcard as the catch-all fallback.

publish-workflow-groups-to-email tab (optional)

If you use distribution list (DL) names in the Approvers or CC columns, add this tab to map them to individual email addresses:

The config is read from the site-level config first (/config/<org>/<site>/), with an automatic fallback to the org-level config (/config/<org>/) if not found at the site level.

Step 3: Configure User Permissions in EDS

Users must have the appropriate EDS permissions for their role on the <org>/<site>:

Use the AEM User Admin tool to add users and assign roles for your org and site. For a full description of available roles, see the Admin Roles documentation.

For Authors: Requesting Publish Approval

Once the plugin is configured, authors can submit publish requests directly from the DA editing interface.

Submitting a Request

After previewing your content and confirming it is ready to publish, open the Request Publish plugin from the DA library panel. The plugin will automatically detect your current page and load the relevant information.

The plugin pre-fills the following information:

Click the View Content Diff link to see a side-by-side comparison of your draft content against the currently published version before submitting. This will open in a new tab to AEM Diff Checker Tool, you need to ensure you are logged in to sidekick to be able to view the diff between your changes and what is live. You can optionally add a note for your approver to provide context, flag areas for review, or indicate urgency.

Click Request Publish to submit. A confirmation will appear showing who was notified. The approver will receive an email with a link to review the request.

Once submitted, you will receive an email when the request is approved or rejected:

Note: You can only have one pending request per page. If you need to make additional changes, wait for the current request to be processed first.

Tracking Your Requests

Open the Publish Requests Inbox from the DA Apps menu to see all requests you have submitted. The app shows a My Publish Requests view listing each request with its current status.

From this view you can:

For Approvers: Reviewing Publish Requests

Approvers open the Publish Requests Inbox from the DA Apps menu, or follow the review link directly from a notification email. The app shows a Publish Request Inbox view listing all pending requests you are authorized to approve.

Managing Requests from the Inbox

Each entry in the inbox shows the content path, the author who submitted the request, and quick action buttons:

Reviewing a Request in Detail

The detail view shows the content path, author, optional note, preview link, and a content diff. Use the diff to confirm the changes are correct before approving.

Click Approve & Publish to publish the content. The author will receive a confirmation email with a link to the live page.

To reject a request, expand the Reject Request section, provide a reason, and click Reject Request. The author will receive an email with your rejection reason.

Troubleshooting

"No approver rule found matching path"

The content path does not match any rule in the publish-workflow-config tab. Add a matching pattern (e.g., /* as a catch-all) or contact your site administrator.

"Publish workflow configuration not found"

The publish-workflow-config tab is missing from the DA config at both the site and org level. Verify that the tab exists and is named exactly publish-workflow-config.

"Request Pending" shown instead of the plugin form

You already have a pending request for this page. Open the Publish Requests Inbox App to view its status, resend the notification, or withdraw it.

"Could not determine your email"

Your session may have expired. Refresh the page or sign in again.

"Not Authorized" shown in the approver inbox

You are not configured as an approver for this content path. The message will show who is authorized. Contact your site administrator if you believe this is incorrect.

If the app shows a 403 error

Sign out from both the sidekick and DA, then sign in again. If the issue persists, try in a fresh incognito tab.