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

submission-review-updates #186

Open
wants to merge 8 commits into
base: main
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
21 changes: 20 additions & 1 deletion gatsby-config.js
Original file line number Diff line number Diff line change
Expand Up @@ -138,8 +138,27 @@ module.exports = {
],
},
{
title: "Submission and review",
title: "Integration submission and approval",
Copy link
Collaborator

Choose a reason for hiding this comment

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

I would omit "Integration" as it seems redundant (and splits the text in two lines), what about "Submission and Approval" or "Submission & Approval"?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I shall choose this: Submission and approval

path: "/guides/review/",
pages:
Copy link
Collaborator

Choose a reason for hiding this comment

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

I'm not 100% sure about this, so please correct me if I'm wrong, but I believe we usually have an explicit submenu entry for the page that opens when you click/expand the menu.
What I'm saying is that /review/index.md should also appear:

Submission and Approval
 - Overview 👈 new, the index.md
 - Submission guidelines
 - Review test cases
 - ...

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Let me check this.

[
{
title: "Submission guidelines",
path: "/guides/review/submission_guidelines.md"
},
{
title: "Review test cases",
path: "/guides/review/test_cases.md"
},
{
title: "Our review process",
path: "/guides/review/review_process.md"
},
{
title:" Handle rejections",
path: "/guides/review/rejections.md"
}
]
},
{
title: "Changelog",
Expand Down
115 changes: 9 additions & 106 deletions src/pages/guides/review/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ Adobe reviews all applications that integrate Adobe Express Embed SDK before ena

## Overview

This guideline outlines the process for reviewing and submitting an integration using the Adobe Express Embed SDK. Whether you’re embedding the Full Editor, Quick Actions, or Modules, adhering to these guidelines will ensure a seamless experience for users and maintain consistency across all implementations.
This guideline outlines the process for submitting an integration using the Adobe Express Embed SDK for review.
Whether you’re embedding the Full Editor, Quick Actions, or Modules, adhering to these guidelines will ensure a seamless experience for your users and maintain consistency across all implementations.

<InlineAlert variant="help" slots="text" />

Expand All @@ -28,9 +29,9 @@ This process is valuable, as gaining approval enhances the credibility of your i

<InlineAlert slots="text" />

We aim to review your integration within 10 business days of submission, and will let you know if it is accepted, or if any changes need to be made.
We aim to review your integration within 10 business days of submission, and will let you know if it is accepted, rejected, or if any changes need to be made.

## Review criteria
## Our review criteria

Our reviewers will assess your submission based on a variety of factors, including:

Expand Down Expand Up @@ -69,112 +70,14 @@ By creating a project using the SDK in Adobe Developer Console, you are agreeing

Additionally, your integration must not violate the trademarks and copyrights of Adobe, Inc., or those of any other party. Please adhere to all trademark guidelines as noted [here](https://www.adobe.com/legal/permissions/trademarks.html).

## Submission guidelines

You have to submit your app for approval in the [Adobe Developer Console](https://developer.adobe.com/console).

<InlineAlert variant="help" slots="text" />

If you started your developement by clicking the [Get Credentials](https://developer.adobe.com/express/embed-sdk/docs/get-credential/) button, you'll need to identify your project before proceeding. Alternatively, you can click on the [Get Credentials](https://developer.adobe.com/express/embed-sdk/docs/get-credential/) button, which should provide a link to any previously created projects. This link will take you to the developer console.

Follow the steps below, in the Developer console.

- Navigate to your project in [Adobe Developer Console](https://developer.adobe.com/console).
- Select **Submit for review** from the **Project overview** tab or select the **Approval** tab on the left panel.

![Submit for review in Console UI](submission_bigger.png)

<InlineAlert variant="help" slots="text1, text2, text3" />

Confirm that the `appName` used to initialize the SDK in your application code reflects your app's name.

Note any projects created through your integration will be saved in the user's Express account, inside an Express folder with this name.

Confirm that the SDK is never initialized more than once per page load.

To make sure your review process goes smoothly, check off the tasks in this list before submitting.

### 1. Set up your public profile

If this is your first Adobe integration, set up your public profile. If your app processes personal information, include a link to the privacy policy on your app’s website, per the Adobe Developer Agreement.

### 2. Details for approval

Describe what your app does, to help Adobe review it for approval.

### 3. Notes to reviewer

Make sure you’ve included the following in the **Notes to reviewer** feild.

1. **Test credentials** for your integration.
2. **Workflow** of your integration within your product (URL, step-by-step instructions, and more.)
3. **Version** of the SDK you are using.
4. List the intended behavior of any custom export buttons you use with the full editor, modules, or quick actions.

### 4. Provide screenshots

Complete the **Screenshots for approval** section.

Include screenshots that show the full experience of your app or integration, as well as any usage of Adobe branded elements.
Any usage of [Adobe branding](https://partners.adobe.com/exchangeprogram/creativecloud/marketing/brand-assets.html) must be approved before you submit for approval. These screenshots will only be seen by Adobe during the review process.

Screenshots must be in `JPG` or `PNG` file format, be no larger than `5 MB` and `1360px x 800px` dimensions.

## Submission process

Congratulations! You're on your way to getting your integration into the hands of your users. Our teams are working on new submissions every day. Depending on volume, it can be up to 10 business days before you hear a response from us. On average, we approve integrations within 3 business days.

If you have any questions, feel free to contact us at [[email protected]](mailto:[email protected]) or reach out on our [Adobe Express Embed SDK community forum](https://community.adobe.com/t5/express-embed-sdk/ct-p/ct-express-embed-sdk?page=1&sort=latest_replies&lang=all&tabid=all).

### Submit to Adobe

Once you think you're good to go, click the **Submit for Review** button in the Developer console. Our review team will ensure your integration fulfills all the guidelines and passes all the [test cases](#test-cases) before approving it for public usage.

### Initial review

Adobe’s team will perform an initial review, focusing on technical correctness, design, and user experience. This process may take up to 10 business days.

### Feedback and revisions

If any changes or improvements are required, you will receive feedback with detailed instructions. You can resubmit after addressing the feedback.

### Approval

Once your integration passes all stages of review, you will receive an approval notification, and your integration will be published or distributed as required.
If it was rejected, we will include the reasons for rejection along with any next steps. If you'd like to back and edit your submission, you can do so in the Developer Console.

## Test cases

- Public profile content (name) adheres to Adobe brand guidelines.
- The public profile logo must not include Adobe icons or dummy icons.
- The app description is not ill-formatted, garbled, or improperly exposing character encoding.
- The app description is clear in conveying the integration's functionality.
- The integration is able to perform all advertised features.
- Any website links that are provided successfully open and are safe (check with <https://urlvoid.com>).
- Proper contact details or a contact form is provided on the GitHub/website link.
- The privacy policy and terms of use URLs (if any) link to the right content.
- Only developers should create projects in the Adobe Developer Console. Users should not be asked to create projects in the Console just to use an integration.
- The project is only asking for access to Adobe APIs/services needed by the integration.
- All details are shown on the iFrame correctly; no truncation or overlapping of a button.
- The editor launches accurately when customized input parameters are defined.
- The editor launches with the right project when passed a valid (existing) Adobe Express project's ID.
- `edit()` is not invoked until after a `create()` or `createWithAsset()` API call is made, and a corresponding project ID is saved.
- If the integration lets users start with an existing asset, the iFrame should load with the user-selected image.
- The export buttons appear as the developer declared (in the "Notes for reviewers" section) during submission. Custom buttons should behave as defined.

## Common rejection reasons

- Your app or integration is **not accessible via free user sign-up** and **test credentials are not provided** to our review team for testing purposes.
- Your app is built on a **deprecated version of the SDK**. We currently do not accept versions V3 and below.
- Your **website is not functioning**.
- You have deployed your app in a **staging environment**. Our review team only reviews apps in a production environment.
- Your app **description is not complete** in the **Notes to reviewer** section, and our review team **cannot test all the entrypoints**. Make sure you are clear about what your app integrates (full editor, modules, and/or quick actions) and where/how to invoke them.
- Your **app name should correspond with the name of your projec**t in Adobe Developer Console. This `appName` should also be consistent throughout your application. We use this property in our analytics checks so if there are any discrepancies, we will ask that you make that change before you are able to release the integration to your users.

## Marketing

To learn more, see the [Adobe Creative Cloud Developer Brand Guide](https://partners.adobe.com/content/dam/tep_assets/public/public_1/documents/Adobe-Creative-Cloud-Developer-Brand-Guide.pdf). This guide includes best practices for brand assets in marketing, press releases and social media guidance. It's the best spot to get our most up to date assets. Here you'll also find information for how to publicize and promote your application once it's approved.

During the submission process, we're available to answer any direct questions you may have at CCIntegrationsReview@adobe.com. Please note that this inbox may have delayed responses depending on the number of queries.
If you have any questions, feel free to contact us at [ccintrev@adobe.com](mailto:[email protected]) or reach out on our [Adobe Express Embed SDK community forum](https://community.adobe.com/t5/express-embed-sdk/ct-p/ct-express-embed-sdk?page=1&sort=latest_replies&lang=all&tabid=all).

We look forward to seeing your creative solutions!

## Next steps

Checkout the [submission guidelines](./submission_guidelines.md) to submit your integration for approval.
94 changes: 94 additions & 0 deletions src/pages/guides/review/rejections.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
---
keywords:
- Developer submission guidelines
- Review process
- Review
- Approval
- Rejection
title: Rejection reasons
description: This page explains the submission and review process.
contributors:
- https://github.com/nimithajalal
---

# Rejection reasons
Copy link
Collaborator

Choose a reason for hiding this comment

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

For consistency, I would pick as a title Handle rejections to match the submenu


Learn how to address common integration rejection reasons with this comprehensive step-by-step guide.

## Overview

Submitting your app for review can be a meticulous process, and it's not uncommon to encounter some hurdles along the way.This guide provides a step-by-step approach to help you navigate through the most frequent rejection reasons and ensure your app meets all the necessary criteria.

## Step-by-Step Guide for Common Rejection Reasons

### 1. Accessibility and Test Credentials

- Ensure your app or integration is accessible via free user sign-up.
- Provide test credentials to the review team for testing purposes.
- **Example**: Ensure that users can sign up for free to access your app. Provide test credentials like:
- Username: `[email protected]`
- Password: `TestPassword123`

### 2. SDK Version

- Verify that your app is built on V4 SDK version.
- Note that versions V3 and below are not accepted.
- **Example**: If your app is using SDK version V3, update it to the latest version, such as V4. Check the SDK documentation for [migragtion guide](../concepts/migration_v3_v4.md) from V3 to V4.

### 3. Website Functionality

- Check that your website is fully functional and accessible.
- **Example**: Before submitting your app, ensure your website is live and accessible. Test it by visiting the URL and checking all links and features. If your website is `www.example.com`, make sure it loads correctly and all pages are operational.

### 4. Environment Deployment

- Deploy your app in a production environment.
- Avoid using a staging environment for the review process.
- **Example**: Deploy your app to a production environment. For instance, if your staging URL is `staging.example.com`, move it to `www.example.com` before submission.

### 5. App Description

- Complete the app description in the "Notes to reviewer" section.
- Clearly state what your app integrates (full editor, modules, and/or quick actions).
- Specify where and how to invoke these integrations to ensure all entry points can be tested.
- **Example**: Provide a detailed description like:
- "Our app integrates with the full editor, allowing users to edit documents directly. It also includes modules for image processing and quick actions for one-click enhancements. To test, navigate to the 'Edit' tab and select 'Image Processing'."

### 6. App Name Consistency

- Ensure your app name matches the name of your project in Adobe Developer Console.
- Maintain consistency of the `appName` throughout your application.
- This consistency is crucial for analytics checks and to avoid discrepancies.
- **Example**: If your app is named "PhotoEditor Pro" in the Adobe Developer Console, ensure this name is used consistently throughout your application. Avoid discrepancies like using "PhotoEditor" in some places and "PhotoEditor Pro" in others.

### Here are some steps you can take to address the issues and improve your chances of approval

### 1. Review Feedback Thoroughly

- Carefully read the feedback provided by the review team. They usually specify the reasons for rejection and what needs to be fixed.

### 2. Address Specific Issues

- Go through each rejection reason and make the necessary changes. For example, if the issue is with test credentials, ensure they are correct and accessible.

### 3. Seek Clarification

- If you have any questions, feel free to contact us at [[email protected]](mailto:[email protected]) or reach out on our [Adobe Express Embed SDK community forum](https://community.adobe.com/t5/express-embed-sdk/ct-p/ct-express-embed-sdk?page=1&sort=latest_replies&lang=all&tabid=all).

### 4. Test Your App

- Before resubmitting, thoroughly test your app to ensure all issues have been resolved. This includes checking functionality, accessibility, and consistency.

### 5. Update Notes to reviewer section

- Make sure the "Notes to reviewer" section, is complete and clear. Provide detailed instructions on how to test your app.

### 6. Consult the Guidelines

- Revisit the [submission guidelines](./submission_guidelines.md) and [test cases](./test_cases.md) to ensure your app meets all the requirements.

### 7. Resubmit

- Once you have addressed all the issues, resubmit your app for review. Highlight the changes you have made in the "Notes to reviewer" section.

Persistence is key! Each rejection is an opportunity to improve your app and make it even better. If you need any specific help or have questions about the feedback, feel free to ask!
39 changes: 39 additions & 0 deletions src/pages/guides/review/review_process.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
keywords:
- Developer submission guidelines
- Review process
- Review
- Approval
- Rejection
title: Review Process
description: This page explains the review process.
contributors:
- https://github.com/nimithajalal
---

# Overview
Copy link
Collaborator

Choose a reason for hiding this comment

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

Same title/menu mismatch, I wouldn't start with Overview as a #


Congratulations! You're on your way to getting your integration into the hands of your users.

## Our review process

Our teams are working on new submissions every day. Depending on volume, it can be up to 10 business days before you hear a response from us. On average, we approve integrations within 3 business days.

If you have any questions, feel free to contact us at [[email protected]](mailto:[email protected]) or reach out on our [Adobe Express Embed SDK community forum](https://community.adobe.com/t5/express-embed-sdk/ct-p/ct-express-embed-sdk?page=1&sort=latest_replies&lang=all&tabid=all).

## Submit for review

Once you think you're good to go, click the **Submit for Review** button in the [Developer console](https://developer.adobe.com/console).

### Initial review

Adobe’s team will perform an initial review, focusing on technical correctness, design, and user experience. This process may take up to 10 business days.

### Feedback and revisions

If any changes or improvements are required, you will receive feedback with detailed instructions. You can resubmit after addressing the feedback.

### Approval

Once your integration passes all stages of review, you will receive an approval notification, and your integration will be published or distributed as required.
If it was rejected, we will include the reasons for rejection along with any next steps. If you'd like to back and edit your submission, you can do so in the Developer Console. Checkout how to [handle rejections](./rejections.md) here.
Comment on lines +38 to +39
Copy link
Collaborator

Choose a reason for hiding this comment

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

For the future, it would be nice to have like a screenshot of an anonymized approval or rejection letter, just to give partners a sense of what to expect.
Totally minor/low-priority.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Yeah, this can be arranged.

Loading