From df4a3c4053a4fdc7042f48c6c240ba82973360e8 Mon Sep 17 00:00:00 2001 From: arunpandian d Date: Thu, 6 Nov 2025 15:15:35 +0530 Subject: [PATCH] [ARB-231] workday-give-peer-feedback --- .../.codeblocks/block_0.sh | 6 + .../.codeblocks/block_1.sh | 7 + plugins/workday-give-peer-feedback/README.md | 120 +++++++++++++++++- 3 files changed, 132 insertions(+), 1 deletion(-) create mode 100644 plugins/workday-give-peer-feedback/.codeblocks/block_0.sh create mode 100644 plugins/workday-give-peer-feedback/.codeblocks/block_1.sh diff --git a/plugins/workday-give-peer-feedback/.codeblocks/block_0.sh b/plugins/workday-give-peer-feedback/.codeblocks/block_0.sh new file mode 100644 index 00000000..23f5674b --- /dev/null +++ b/plugins/workday-give-peer-feedback/.codeblocks/block_0.sh @@ -0,0 +1,6 @@ +curl --location 'https:///ccx/api/wql/v1//data' \ +--header 'Content-Type: application/json' \ +--header 'Authorization: Bearer ' \ +--data-raw '{ + "query": "SELECT workdayID, company,fullName,businessTitle, email_PrimaryWorkOrPrimaryHome as email ,employeeID FROM allWorkers WHERE email_PrimaryWorkOrPrimaryHome = '\''{{EMAIL}}'\''" +}' diff --git a/plugins/workday-give-peer-feedback/.codeblocks/block_1.sh b/plugins/workday-give-peer-feedback/.codeblocks/block_1.sh new file mode 100644 index 00000000..c367f709 --- /dev/null +++ b/plugins/workday-give-peer-feedback/.codeblocks/block_1.sh @@ -0,0 +1,7 @@ +curl --location 'https:///ccx/api/performanceEnablement/v4//workers/{{WORKDAY_ID}}/anytimeFeedbackEvents' \ +--header 'Authorization: Bearer ' \ +--header 'Content-Type: application/json' \ +--data '{ + "comment": "{{FEEDBACK}}", + "hiddenFromManager": {{HIDE_FROM_MANAGER}} +}' diff --git a/plugins/workday-give-peer-feedback/README.md b/plugins/workday-give-peer-feedback/README.md index 5a96b6eb..d85f8982 100644 --- a/plugins/workday-give-peer-feedback/README.md +++ b/plugins/workday-give-peer-feedback/README.md @@ -6,8 +6,10 @@ description: A plugin that allows employees to provide peer feedback directly th domain: - HR - Employee Records - HR - Other -fidelity: IDEA +fidelity: GUIDE name: Give Peer Feedback +difficulty_level: INTERMEDIATE +time_in_minutes: 30 purple_chat_link: https://marketplace.moveworks.com/purple-chat?conversation=%7B%22messages%22%3A%5B%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22I+want+to+give+feedback+for+a+colleague%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22Can+you+please+specify+the+name+of+the+colleague%3F%22%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22John%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Searching+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EWorkday%3C%2Fb%3E+for+colleagues+named+%5C%22John%5C%22...%22%7D%5D%7D%2C%7B%22richText%22%3A%22I+found+a+few+colleagues+named+John.+Which+one+would+you+like+to+give+feedback+for%3F+Please+specify+the+full+name.%3Cul+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3E%3Cli%3E%3Cb%3EJohn+Doe%3C%2Fb%3E+-+%3Ci%3Ejdoe%40example.com%3C%2Fi%3E+-+Sales+Department%3C%2Fli%3E%3Cli%3E%3Cb%3EJohn+Smith%3C%2Fb%3E+-+%3Ci%3Ejsmith%40example.com%3C%2Fi%3E+-+Marketing+Department%3C%2Fli%3E%3Cli%3E%3Cb%3EJohn+Alwin%3C%2Fb%3E+-+%3Ci%3Ejalwin%40example.com%3C%2Fi%3E+-+Engineering+Department%3C%2Fli%3E%3C%2Ful%3E%22%7D%2C%7B%22citations%22%3A%5B%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22John+Doe%22%7D%2C%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22John+Smith%22%7D%2C%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22John+Alwin%22%7D%5D%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22John+Doe%2C+John+did+an+amazing+job+leading+the+Q3+project.+His+leadership+skills+really+shone+through.%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Preparing+feedback+for+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EJohn+Doe%3C%2Fb%3E+in+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EWorkday%3C%2Fb%3E.%22%7D%5D%7D%2C%7B%22richText%22%3A%22%3Cp+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EOkay%2C+I+will+record+the+following+feedback+for+%3Cb%3EJohn+Doe%3C%2Fb%3E+in+%3Cb%3EWorkday%3C%2Fb%3E%3A%3C%2Fp%3E%3Cul+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3E%3Cli%3E%3Cb%3EColleague%3A%3C%2Fb%3E+John+Doe%3C%2Fli%3E%3Cli%3E%3Cb%3EFeedback%3A%3C%2Fb%3E+John+did+an+amazing+job+leading+the+Q3+project.+His+leadership+skills+really+shone+through.%3C%2Fli%3E%3C%2Ful%3E%3Cp+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3E%3Cb%3EDoes+this+look+right%3F%3C%2Fb%3E%3C%2Fp%3E%22%7D%2C%7B%22buttons%22%3A%5B%7B%22buttonText%22%3A%22Submit%22%2C%22style%22%3A%22filled%22%7D%2C%7B%22buttonText%22%3A%22Cancel%22%2C%22style%22%3A%22outlined%22%7D%5D%7D%2C%7B%22citations%22%3A%5B%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22John+Doe%22%7D%5D%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22Submit%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Submitting+feedback+for+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EJohn+Doe%3C%2Fb%3E+to+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EWorkday%3C%2Fb%3E.%22%7D%5D%7D%2C%7B%22richText%22%3A%22I%27ve+successfully+submitted+your+feedback+for+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EJohn+Doe%3C%2Fb%3E+in+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EWorkday%3C%2Fb%3E.%22%7D%2C%7B%22citations%22%3A%5B%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22John+Doe%22%7D%2C%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22Feedback+for+John+Doe+%28Q3+Project+Leadership%29%22%7D%5D%7D%5D%7D%5D%7D solution_tags: - HR - Employee Records @@ -16,3 +18,119 @@ systems: - workday --- +## Introduction + +The “**Give Peer Feedback**” plugin enables employees to provide peer feedback seamlessly through the **Moveworks AI Assistant**, simplifying the Workday feedback process by allowing users to select a colleague and share feedback in natural language. This plugin uses **User Consent–based authentication** for secure, personalized access to Workday data. Both the feedback giver and recipient must exist in the Moveworks user roster and the Workday instance for the plugin to function properly. + +This guide will walk you through installing and configuring the plugin in **Agent Studio** in just a few minutes. Let’s get started! + +## **Prerequisites** + +- Access to Agent Studio + +## **What are we building?** + +### Agent Design + +This [purple chat](https://marketplace.moveworks.com/purple-chat?conversation=%7B%22messages%22%3A%5B%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22I+want+to+give+feedback+for+a+colleague%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22Can+you+please+specify+the+name+of+the+colleague%3F%22%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22John%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Searching+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EWorkday%3C%2Fb%3E+for+colleagues+named+%5C%22John%5C%22...%22%7D%5D%7D%2C%7B%22richText%22%3A%22I+found+a+few+colleagues+named+John.+Which+one+would+you+like+to+give+feedback+for%3F+Please+specify+the+full+name.%3Cul+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3E%3Cli%3E%3Cb%3EJohn+Doe%3C%2Fb%3E+-+%3Ci%3Ejdoe%40example.com%3C%2Fi%3E+-+Sales+Department%3C%2Fli%3E%3Cli%3E%3Cb%3EJohn+Smith%3C%2Fb%3E+-+%3Ci%3Ejsmith%40example.com%3C%2Fi%3E+-+Marketing+Department%3C%2Fli%3E%3Cli%3E%3Cb%3EJohn+Alwin%3C%2Fb%3E+-+%3Ci%3Ejalwin%40example.com%3C%2Fi%3E+-+Engineering+Department%3C%2Fli%3E%3C%2Ful%3E%22%7D%2C%7B%22citations%22%3A%5B%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22John+Doe%22%7D%2C%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22John+Smith%22%7D%2C%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22John+Alwin%22%7D%5D%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22John+Doe%2C+John+did+an+amazing+job+leading+the+Q3+project.+His+leadership+skills+really+shone+through.%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Preparing+feedback+for+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EJohn+Doe%3C%2Fb%3E+in+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EWorkday%3C%2Fb%3E.%22%7D%5D%7D%2C%7B%22richText%22%3A%22%3Cp+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EOkay%2C+I+will+record+the+following+feedback+for+%3Cb%3EJohn+Doe%3C%2Fb%3E+in+%3Cb%3EWorkday%3C%2Fb%3E%3A%3C%2Fp%3E%3Cul+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3E%3Cli%3E%3Cb%3EColleague%3A%3C%2Fb%3E+John+Doe%3C%2Fli%3E%3Cli%3E%3Cb%3EFeedback%3A%3C%2Fb%3E+John+did+an+amazing+job+leading+the+Q3+project.+His+leadership+skills+really+shone+through.%3C%2Fli%3E%3C%2Ful%3E%3Cp+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3E%3Cb%3EDoes+this+look+right%3F%3C%2Fb%3E%3C%2Fp%3E%22%7D%2C%7B%22buttons%22%3A%5B%7B%22buttonText%22%3A%22Submit%22%2C%22style%22%3A%22filled%22%7D%2C%7B%22buttonText%22%3A%22Cancel%22%2C%22style%22%3A%22outlined%22%7D%5D%7D%2C%7B%22citations%22%3A%5B%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22John+Doe%22%7D%5D%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22Submit%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Submitting+feedback+for+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EJohn+Doe%3C%2Fb%3E+to+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EWorkday%3C%2Fb%3E.%22%7D%5D%7D%2C%7B%22richText%22%3A%22I%27ve+successfully+submitted+your+feedback+for+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EJohn+Doe%3C%2Fb%3E+in+%3Cb+xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%5C%22%3EWorkday%3C%2Fb%3E.%22%7D%2C%7B%22citations%22%3A%5B%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22John+Doe%22%7D%2C%7B%22connectorName%22%3A%22workday%22%2C%22citationTitle%22%3A%22Feedback+for+John+Doe+%28Q3+Project+Leadership%29%22%7D%5D%7D%5D%7D%5D%7D) shows the experience we are going to build. + +## Installation Steps + +While you can create a connector during plugin installation, we recommend setting up the connector in **Agent Studio** beforehand to simplify the process. Please follow our [**Workday Connector Guide**](https://developer.moveworks.com/marketplace/package/?id=workday&hist=home%2Cbrws#how-to-implement) for detailed instructions. Once completed, proceed to install the plugin and complete the setup efficiently. + +**User Consent Authentication Benefits:** + +With **User Consent Authentication (UCA)** enabled for Workday, employees can securely connect their Workday accounts to Moveworks—allowing the bot to act on their behalf using their own permissions. + +This ensures that all feedback actions (like *giving* feedback) respect each user’s access rights and data boundaries within Workday. + +**Benefits:** + +- **Enhanced security** – No shared credentials or admin tokens. +- **User-level access** – Each employee sees and submits feedback using their own Workday permissions. +- **Seamless experience** – Users authenticate once through Workday and can interact naturally in Moveworks. +- **Compliance-friendly** – All actions adhere to Workday’s role-based access controls. + +### **Required Permissions** +This plugin uses the **Workday Anytime Feedback** feature and the corresponding API (`/workers/{id}/anytimeFeedbackEvents`). +If your organization uses **custom or typed feedback processes** (for example, “Project Feedback,” “360 Feedback,” or a renamed business process), you’ll need to **update the configuration and permissions** in this guide to match your specific Workday setup. + +Ensure the **Workday Integration System User (ISU)** has permissions to initiate and view Anytime Feedback events. + +- **Self-Service: Anytime Feedback** – *View Own / View All* +- **Worker Data: Anytime Feedback** – *View Own / View All* +- **Business Process: Give Feedback** – *Initiate / Manage / View All* + +If your organization uses a **different feedback type**, make sure the equivalent **domain security policies** and **business process permissions** are granted for that feedback process. + +### **Required Scopes** + +The following API scopes must be enabled for the ISU or Workday API client: + +- `Performance Enablement` +- `Worker Profile and Skills` + +**Tenant Configuration:** + +All Workday API endpoints in this plugin use `TENANT` and `API_SERVER_DOMAIN` as a placeholder. After installation, replace `TENANT` and `API_SERVER_DOMAIN` in the action definitions with your actual Workday domain and tenant name. + +To find your **API server domain**: + +- Log into Workday. +- Check the URL in your browser — The **API server domain** appears after `https://`, e.g.: + + In this case, `impl.workday.com` is your `API_SERVER_DOMAIN`. + + +To find your **tenant name**: + +- Check the URL in your browser — the tenant name appears after `workday.com/`, e.g.: + + `https://impl.workday.com/your_tenant/...` + + +Make sure to update this across all actions that reference the Workday API. + +After configuring the connector and updating your tenant, refer to our [plugin installation documentation](https://help.moveworks.com/docs/ai-agent-marketplace-installation) for more details on completing the setup. + +## **Appendix** + +### API#1: Get Workday ID By Email + +```bash +curl --location 'https:///ccx/api/wql/v1//data' \ +--header 'Content-Type: application/json' \ +--header 'Authorization: Bearer ' \ +--data-raw '{ + "query": "SELECT workdayID, company,fullName,businessTitle, email_PrimaryWorkOrPrimaryHome as email ,employeeID FROM allWorkers WHERE email_PrimaryWorkOrPrimaryHome = '\''{{EMAIL}}'\''" +}' +``` + +**Body Parameters:** + +- `EMAIL` (string) – The primary home email address of the user to look up their Workday ID + +**Note:**  The **`wql` endpoint** is not available in all tenants — it must be **enabled** in Workday **Public Web Services (PWS)** + +### API#2: Give Peer Feedback By Workday ID + +```bash +curl --location 'https:///ccx/api/performanceEnablement/v4//workers/{{WORKDAY_ID}}/anytimeFeedbackEvents' \ +--header 'Authorization: Bearer ' \ +--header 'Content-Type: application/json' \ +--data '{ + "comment": "{{FEEDBACK}}", + "hiddenFromManager": {{HIDE_FROM_MANAGER}} +}' +``` + +**Query Parameters:** + +- `WORKER_ID` (string) – The unique Workday ID of the recipient worker. + +**Body Parameters:** + +- `FEEDBACK` (string) – The feedback content provided by the user for their colleague. +- `HIDE_FROM_MANAGER` (boolean) – Indicates whether the feedback should be hidden from the recipient’s manager. The value must be in lowercase (`true` or `false`). + +**Note:** Some tenants expose it under v4 instead of v5. If you receive a `404` error, try version `v4` instead of `v5` . \ No newline at end of file