Overview

Infosys Equinox includes multiple content authoring microservices including Catalog, Merchandising, Pricing, and Promotions. Editors create and edit content in these authoring services and Managers approve this content prior to this content becoming available to consumers/shoppers (live). All content in these authoring services must go through a simple approval process which originates with microservice Editors and ends with microservice Managers. In order to keep all edits contextual and to be able to manage them effectively, all content is authored and edited within a Project.

A Project is akin to a temporary workspace where microservice Editors can make as many changes as they would like without affecting any of the content available to consumers/shoppers. Projects are collaborative in nature allowing multiple Editors to submit their individual and bulk updates concurrently. Also, microservice Editors can create any number of Projects in the event some content changes need to be isolated. Upon approval of a Project, Infosys Equinox Commerce automatically versions the previous content and retains the previous version.

In summary, the Infosys Equinox Approval Workflow Process with Projects is a process that enables multiple Editors to:

  • Collaboratively create and edit content in singular or in bulk
  • Track the content through the review and approval process
  • Version the content and maintain a history for auditing

Note: Project-based Approval Workflow is mandatory for all authoring microservices, which include Catalog, Merchandising, Pricing, and Promotions.

Projects and Roles Defined

  • Project – is a container/wrapper entity to hold change. New and updated content must pass through the Project approval workflow process before it is reflected in the approved (live) content.
  • Editor role – this role has the privilege to open a Project, create and edit items in a Project, create Project notes, and submit a Project for approval. Editor privileges are specific to a collection of a microservice and in some instances also specific to an entity within the collection. For example, in the Catalog microservice, an Editor’s privileges could be defined specific to each Catalog within a specific collection.
  • Manager role – in addition to the Editor role privileges, the Manager role also has the privilege to approve, deny, or reopen a Project. Similar to an Editor’s privileges, a Manager’s privileges will be specific to a collection of a microservice or an entity within a collection.

States of Project and Transitions

A Project has the following definitive end states:

  • Open – state when a project is created or re-opened. In this state, the project is able to accept multiple changes from multiple Editors and Managers.
  • Submitted – state when a project is submitted for Manager approval. In this state, the project cannot be edited without being reopened by a Manager.
  • Approved – the project is closed and all changes are approved. In this state, the project cannot be edited or reopened.
  • Denied – the project is closed and all changes are denied. In this state, the project cannot be edited or reopened.

Additionally, there are two (2) intermediate (transitional) states for projects. When a Manager clicks the Approve button for a submitted project, the data prior to the change requested in the Project is first versioned and saved for each of the entities being changed and then the entity is updated with the new changes in the Project.  For Catalog, Merchandising, and Pricing Projects, data transformation is done with the assistance of the Feed microservice for Infosys Equinox. In the rare case that the feed job that completes the data updates gets delayed or fails, there are two (2) additional states of the project that help the workflow approval process:

  • Approval In Progress – state immediately after the Manager has initiated the approval of a Project. This state typically will transform into the Approved state shortly thereafter.
  • Approval Failed – in the event that the approval process fails for some technical reason, this state is reported. The Manager may initiate the approval process again and get the Project approved.

Note: The Promotions microservice does not use the Feed microservice. Accordingly, the two (2) states mentioned above do not apply for Promotions Projects.

Project Data Model

Project Flow Chart

Project API Endpoints

Note: the examples below are using endpoints for the Catalog microservice, you can replace the microservice name accordingly for the other authoring microservices.

Project Endpoints

  • GET /catalogs/{catalogid}/projects/ (Find All Projects)
  • POST /catalogs/{catalogid}/projects/ (Create a Project)
  • GET /catalogs/{catalogid}/projects/{projectid} (Get a Project)
  • PUT /catalogs/{catalogid}/projects/{projectid} (Update a Project)
  • DELETE /catalogs/{catalogid}/projects/{projectid} (Delete a Project)
  • PATCH /catalogs/{catalogid}/projects/{projectid} (Patch Update a Project)

Project Notes

  • GET /catalogs/{catalogId}/projects/{projectId}/notes/ (Find all the notes of a Project)
  • POST /catalogs/{catalogId}/projects/{projectId}/notes/ (Create a Project Note)
  • GET /catalogs/{catalogId}/projects/{projectId}/notes/{identifier} (Get a Project Note)

States of the Content

Content edited by Editors or Managers can be either in a Project or in an approved state. In the Admin User Console, the approved data is always presented first in all the authoring microservices including Catalog, Merchandising, Pricing, and Promotions. This state of the data is seen by the filter All Approved in the content presented.

When the Business Admin selects the project from the top toolbar of the Admin User Console, the data presented in the Admin User Console then uses the selected project, i.e. “<Project Name>” as the filter.

Project in the Infosys Equinox Admin User Console

In order to help Editors or Managers maintain focus on the content being edited, the project in the Infosys Equinox Admin is as non-intrusive as possible. The project creation and/or selection is done with a modal window that shows up when any creation or edit interaction is initiated by the user. Once the project is selected, the project is shown on the top toolbar as the context and all the normal creation and editing space is available on the user’s screen. The user enters the project details only to deep dive into the project or add, edit, or review project notes.

Example: Catalog

In Infosys Equinox Commerce Catalog microservice, Projects are based on each catalog and therefore different Editors and Managers may have privileges to different catalogs.

To create a new product, the Editor simply clicks the Create Item button upon which the Editor is prompted to make a selection of a project.

Upon selecting the project by clicking on the Enter button, the Project is set on the top toolbar and the Editor can now quickly create the product. Note: the Editor may click on Add for the quick addition of an item or click on Add Details to further enrich the item.

Microservices Utilizing Project

All authoring microservices including Catalog, Merchandising, Pricing, and Promotions utilize the project-based approval workflow process as described here. The process is identical in all respects including the business admin user interface and other details. The entities individually covered in the project are different for each microservice.

Helpful Links

 

 


Revision History
2022-04-10 | JP – Fixed link and http issues.
2021-12-23 | SW – Image updates.
2020-03-27 | JP – Minor edits.
2019-07-03 | PLK – Minor formatting edits.
2019-06-09 | PLK – Content uploaded.
2019-06-03 | PLK – Page created.