Skip to content

Conversation

@michelle0927
Copy link
Collaborator

@michelle0927 michelle0927 commented Oct 22, 2025

Resolves #18644

Summary by CodeRabbit

  • Chores

    • Updated component versions for Zoho Desk actions and sources.
  • Documentation

    • Updated documentation link text in help article and support resources.
  • New Features

    • Enhanced knowledge base article and root category selection with dynamic loading based on portal context.

@vercel
Copy link

vercel bot commented Oct 22, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

2 Skipped Deployments
Project Deployment Preview Comments Updated (UTC)
pipedream-docs Ignored Ignored Oct 22, 2025 7:01pm
pipedream-docs-redirect-do-not-edit Ignored Ignored Oct 22, 2025 7:01pm

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 22, 2025

Walkthrough

This PR updates the Zoho Desk component with version bumps across 16 action modules and 10 source modules, increments the package version from 0.2.3 to 0.3.0, updates action descriptions, and adds async options functions to dynamically load article and category lists based on portal context.

Changes

Cohort / File(s) Summary
Action version bumps (0.0.5 → 0.0.6)
components/zoho_desk/actions/add-ticket-comment/add-ticket-comment.mjs, create-account/create-account.mjs, create-contact/create-contact.mjs, create-ticket/create-ticket.mjs, find-contact/find-contact.mjs, find-or-create-contact/find-or-create-contact.mjs, search-ticket/search-ticket.mjs, send-email-reply/send-email-reply.mjs, update-contact/update-contact.mjs, update-ticket/update-ticket.mjs
Exported action metadata version incremented from 0.0.5 to 0.0.6 across 10 action files.
Action version bump (0.1.4 → 0.1.5)
components/zoho_desk/actions/add-ticket-attachment/add-ticket-attachment.mjs
Exported action metadata version incremented from 0.1.4 to 0.1.5.
Knowledge base actions with enhanced descriptions and prop definitions
components/zoho_desk/actions/get-article/get-article.mjs
Version bumped 0.0.1 → 0.0.2, description text updated ("See the docs here" → "See the documentation"), articleId propDefinition augmented with mapper to expose portalId.
Knowledge base actions with prop definition enhancements
components/zoho_desk/actions/list-articles/list-articles.mjs, search-articles/search-articles.mjs
Version bumped 0.0.1 → 0.0.2, description text updated, categoryId converted from simple field to propDefinition array with portalId mapping; minor description punctuation adjustments.
Knowledge base actions with description updates
components/zoho_desk/actions/list-help-centers/list-help-centers.mjs, list-root-categories/list-root-categories.mjs
Version bumped 0.0.1 → 0.0.2, description text updated from "See the docs here" to "See the documentation"; list-root-categories updated departmentId to use propDefinition.
Source version bumps (0.0.6 → 0.0.7)
components/zoho_desk/sources/changed-ticket-status/changed-ticket-status.mjs, new-account/new-account.mjs, new-agent/new-agent.mjs, new-contact/new-contact.mjs, new-ticket-comment/new-ticket-comment.mjs, new-ticket-message/new-ticket-message.mjs, new-ticket/new-ticket.mjs, updated-ticket/updated-ticket.mjs
Exported source metadata version incremented from 0.0.6 to 0.0.7 across 8 source files.
Source version bumps (0.0.2 → 0.0.3)
components/zoho_desk/sources/deleted-article-instant/deleted-article-instant.mjs, new-article-instant/new-article-instant.mjs, updated-article-instant/updated-article-instant.mjs
Exported source metadata version incremented from 0.0.2 to 0.0.3 across 3 instant source files.
Source version bump (0.1.1 → 0.1.2)
components/zoho_desk/sources/new-ticket-attachment/new-ticket-attachment.mjs
Exported source metadata version incremented from 0.1.1 to 0.1.2.
Package manifest version update
components/zoho_desk/package.json
Component package version incremented from 0.2.3 to 0.3.0.
App definitions with async options functions
components/zoho_desk/zoho_desk.app.mjs
articleId description punctuation adjusted; async options functions added to both articleId and categoryId propDefinitions to dynamically load knowledge base articles and root categories via paginated API calls using portalId and prevContext.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

The diff consists predominantly of homogeneous version bumps repeated across 26+ files (actions and sources), which are trivial and low-risk. While there are some heterogeneous changes—specifically, propDefinition enhancements and async options functions in knowledge base actions and the app definitions—these follow consistent patterns and are localized to a small subset of files. The mixed complexity is offset by the repetitive nature of the bulk changes.

Possibly related PRs

Suggested reviewers

  • GTFalcao

Poem

🐰 Versions climb and options flow,
Through knowledge bases we now know,
From articles to categories bright,
Async props make selections right,
Zero-point bumps complete the quest,
Zoho Desk is looking its best! 📚✨

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Description Check ⚠️ Warning The PR description only contains "Resolves #18644" without fulfilling the repository template's required "WHY" section. While the issue reference provides some context, the description does not explain what was implemented or why these changes are needed. The template explicitly requests an author-completed "WHY" section, which is missing entirely. The description is too minimal and incomplete to meet even a basic standard for PR documentation. Add a proper description following the template by filling in the "WHY" section. Explain what Help Center and Knowledge Base actions were added, their purpose, and how they enhance the Zoho Desk integration. This helps reviewers and future maintainers understand the context and intent of these changes.
✅ Passed checks (4 passed)
Check name Status Explanation
Title Check ✅ Passed The PR title "Zoho Desk - Help Center & Knowledge Base Actions" directly and clearly describes the primary change in the pull request - the addition of Help Center and Knowledge Base actions to the Zoho Desk integration. The title is concise, specific, and aligns with the main objective of implementing the five requested actions (List Help Centers, List articles, Get article, Search articles, and List root categories) as specified in issue #18644. A teammate reviewing the git history would immediately understand this adds knowledge base functionality to the Zoho Desk component.
Linked Issues Check ✅ Passed All five coding-related objectives from issue #18644 are implemented in the PR: list-help-centers, list-articles, get-article, search-articles, and list-root-categories actions are all present with appropriate version bumping and functionality. The changes to zoho_desk.app.mjs include dynamic async options functions for articleId and categoryId to support the new Knowledge Base functionality. The PR fulfills the core requirement to add these Help Center and Knowledge Base actions as specified in the linked issue.
Out of Scope Changes Check ✅ Passed The changes appear appropriately scoped to the objective of adding Help Center and Knowledge Base actions. Beyond implementing the five new actions, the PR includes version bumps across existing Zoho Desk actions and sources and updates to zoho_desk.app.mjs with dynamic loading functions for article and category selection. These supporting changes (version increments, prop definition enhancements, description refinements) are consistent with a coordinated release and directly enable the new functionality without introducing unrelated features or fixes.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch issue-18644

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@michelle0927 michelle0927 marked this pull request as ready for review October 22, 2025 19:02
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (13)
components/zoho_desk/actions/create-account/create-account.mjs (1)

55-65: Align with action patterns: pass $ to client and guard $summary.

  • Pass $ to createAccount for consistent logging/metrics (other actions do this).
  • Use optional chaining in $summary to avoid errors if response is unexpected.

Apply:

-    const response = await this.zohoDesk.createAccount({
+    const response = await this.zohoDesk.createAccount({
+      $,
       headers: {
         orgId,
       },
       data: {
         accountName,
         email,
         website,
         phone,
       },
     });
-    $.export("$summary", `Successfully created a new account with ID ${response.id}`);
+    $.export("$summary", `Successfully created a new account with ID ${response?.id}`);

Also applies to: 67-67

components/zoho_desk/sources/changed-ticket-status/changed-ticket-status.mjs (2)

7-7: Tiny copy edit.
Consider “Emit an event when a ticket’s status changes.” for clarity.

-  description: "Emit new event when a status ticket is changed. [See the docs here](https://desk.zoho.com/DeskAPIDocument#Tickets#Tickets_Listalltickets)",
+  description: "Emit an event when a ticket’s status changes. [See the docs here](https://desk.zoho.com/DeskAPIDocument#Tickets#Tickets_Listalltickets)",

37-39: Optional: stabilize ordering.
If the API supports it, add a sort order to pair with sortBy: "modifiedTime" to reduce edge cases around identical timestamps.

         params: {
           sortBy: "modifiedTime", // relevance | modifiedTime | createdTime | customerResponseTime
           status: this.status,
+          order: "desc",
         },
components/zoho_desk/package.json (1)

3-3: Package version bump OK.
0.2.3 → 0.3.0 aligns with new features. Consider adding a CHANGELOG entry summarizing the new Help Center/KB actions and dynamic options.

components/zoho_desk/actions/create-contact/create-contact.mjs (1)

62-73: Match client-call pattern and harden summary.

  • Pass $ to createContact (consistent with other actions like add-ticket-attachment).
  • Use response?.id in $summary.
-    const response = await this.zohoDesk.createContact({
+    const response = await this.zohoDesk.createContact({
+      $,
       headers: {
         orgId,
       },
       data: {
         lastName,
         firstName,
         email,
         phone,
         mobile,
       },
     });
-    $.export("$summary", `Successfully created a new contact with ID ${response.id}`);
+    $.export("$summary", `Successfully created a new contact with ID ${response?.id}`);

Also applies to: 75-75

components/zoho_desk/actions/find-or-create-contact/find-or-create-contact.mjs (1)

8-8: Consider whether version bump is necessary without functional changes.

This file increments the version from "0.0.5" to "0.0.6" with no functional, behavioral, or API changes. Per semantic versioning principles, versions should typically only increment when the module itself changes. If this is part of a coordinated release policy to keep all component versions aligned with the package version bump (0.2.3 → 0.3.0), that's fine, but otherwise this version bump may be unnecessary.

components/zoho_desk/sources/new-ticket-comment/new-ticket-comment.mjs (1)

9-9: Consider whether version bump is necessary without functional changes.

Version incremented from "0.0.6" to "0.0.7" with no code changes. Same consideration as other files in this PR—this may be unnecessary unless part of an intentional release coordination policy.

components/zoho_desk/sources/deleted-article-instant/deleted-article-instant.mjs (1)

10-10: Consider whether version bump is necessary without functional changes.

Version incremented from "0.0.2" to "0.0.3" with no code changes. Same consideration applies regarding semantic versioning principles.

components/zoho_desk/actions/update-ticket/update-ticket.mjs (1)

8-8: Consider whether version bump is necessary without functional changes.

Version incremented from "0.0.5" to "0.0.6" with no code changes. Same consideration applies.

components/zoho_desk/sources/updated-article-instant/updated-article-instant.mjs (1)

10-10: Consider whether version bump is necessary without functional changes.

Version incremented from "0.0.2" to "0.0.3" with no code changes. Same consideration applies.

components/zoho_desk/sources/updated-ticket/updated-ticket.mjs (1)

9-9: Consider whether version bump is necessary without functional changes.

Version incremented from "0.0.6" to "0.0.7" with no code changes. Same consideration applies.

components/zoho_desk/actions/find-contact/find-contact.mjs (1)

8-8: Consider whether version bump is necessary without functional changes.

Version incremented from "0.0.5" to "0.0.6" with no code changes. Same consideration applies.

components/zoho_desk/actions/search-ticket/search-ticket.mjs (1)

8-8: Consider whether version bump is necessary without functional changes.

Version incremented from "0.0.5" to "0.0.6" with no code changes. Same consideration applies regarding semantic versioning principles.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 31b70d5 and 6414981.

📒 Files selected for processing (30)
  • components/zoho_desk/actions/add-ticket-attachment/add-ticket-attachment.mjs (1 hunks)
  • components/zoho_desk/actions/add-ticket-comment/add-ticket-comment.mjs (1 hunks)
  • components/zoho_desk/actions/create-account/create-account.mjs (1 hunks)
  • components/zoho_desk/actions/create-contact/create-contact.mjs (1 hunks)
  • components/zoho_desk/actions/create-ticket/create-ticket.mjs (1 hunks)
  • components/zoho_desk/actions/find-contact/find-contact.mjs (1 hunks)
  • components/zoho_desk/actions/find-or-create-contact/find-or-create-contact.mjs (1 hunks)
  • components/zoho_desk/actions/get-article/get-article.mjs (2 hunks)
  • components/zoho_desk/actions/list-articles/list-articles.mjs (3 hunks)
  • components/zoho_desk/actions/list-help-centers/list-help-centers.mjs (1 hunks)
  • components/zoho_desk/actions/list-root-categories/list-root-categories.mjs (2 hunks)
  • components/zoho_desk/actions/search-articles/search-articles.mjs (2 hunks)
  • components/zoho_desk/actions/search-ticket/search-ticket.mjs (1 hunks)
  • components/zoho_desk/actions/send-email-reply/send-email-reply.mjs (1 hunks)
  • components/zoho_desk/actions/update-contact/update-contact.mjs (1 hunks)
  • components/zoho_desk/actions/update-ticket/update-ticket.mjs (1 hunks)
  • components/zoho_desk/package.json (1 hunks)
  • components/zoho_desk/sources/changed-ticket-status/changed-ticket-status.mjs (1 hunks)
  • components/zoho_desk/sources/deleted-article-instant/deleted-article-instant.mjs (1 hunks)
  • components/zoho_desk/sources/new-account/new-account.mjs (1 hunks)
  • components/zoho_desk/sources/new-agent/new-agent.mjs (1 hunks)
  • components/zoho_desk/sources/new-article-instant/new-article-instant.mjs (1 hunks)
  • components/zoho_desk/sources/new-contact/new-contact.mjs (1 hunks)
  • components/zoho_desk/sources/new-ticket-attachment/new-ticket-attachment.mjs (1 hunks)
  • components/zoho_desk/sources/new-ticket-comment/new-ticket-comment.mjs (1 hunks)
  • components/zoho_desk/sources/new-ticket-message/new-ticket-message.mjs (1 hunks)
  • components/zoho_desk/sources/new-ticket/new-ticket.mjs (1 hunks)
  • components/zoho_desk/sources/updated-article-instant/updated-article-instant.mjs (1 hunks)
  • components/zoho_desk/sources/updated-ticket/updated-ticket.mjs (1 hunks)
  • components/zoho_desk/zoho_desk.app.mjs (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
  • GitHub Check: Publish TypeScript components
  • GitHub Check: Lint Code Base
  • GitHub Check: Verify TypeScript components
🔇 Additional comments (29)
components/zoho_desk/actions/update-contact/update-contact.mjs (1)

8-8: LGTM! Routine version bump.

The version increment is part of the coordinated release for Zoho Desk Help Center & Knowledge Base enhancements.

components/zoho_desk/actions/send-email-reply/send-email-reply.mjs (1)

8-8: LGTM! Routine version bump.

The version increment aligns with the broader release.

components/zoho_desk/sources/new-ticket-attachment/new-ticket-attachment.mjs (1)

11-11: LGTM! Routine version bump.

The version increment is consistent with the release pattern.

components/zoho_desk/actions/add-ticket-comment/add-ticket-comment.mjs (1)

8-8: LGTM! Routine version bump.

The version increment is part of the coordinated release.

components/zoho_desk/sources/new-ticket/new-ticket.mjs (1)

9-9: LGTM! Routine version bump.

The version increment aligns with the release pattern.

components/zoho_desk/actions/list-root-categories/list-root-categories.mjs (3)

5-5: LGTM! Documentation text standardization.

The description text update improves consistency across the codebase.


7-7: LGTM! Version bump reflects changes in this action.

The version increment appropriately reflects the description and propDefinition updates.


52-59: Excellent refactor to use propDefinition!

Converting departmentId to use propDefinition improves consistency with other props and adheres to the DRY principle. The description and optional status are properly preserved.

components/zoho_desk/actions/create-ticket/create-ticket.mjs (1)

8-8: LGTM! Routine version bump.

The version increment is part of the coordinated release.

components/zoho_desk/sources/new-agent/new-agent.mjs (1)

9-9: LGTM! Routine version bump.

The version increment aligns with the release pattern.

components/zoho_desk/actions/create-account/create-account.mjs (1)

8-8: Version bump looks good.
No functional changes detected.

components/zoho_desk/sources/changed-ticket-status/changed-ticket-status.mjs (1)

9-9: Version bump acknowledged.
No behavioral diffs observed.

components/zoho_desk/actions/add-ticket-attachment/add-ticket-attachment.mjs (1)

10-10: LGTM on version bump.
No logic changes; upload flow remains consistent with platform helpers.

components/zoho_desk/actions/create-contact/create-contact.mjs (1)

8-8: Version bump looks good.
No functional changes detected.

components/zoho_desk/sources/new-article-instant/new-article-instant.mjs (1)

10-10: LGTM: Version bump

Standard version increment with no functional changes.

components/zoho_desk/sources/new-account/new-account.mjs (1)

9-9: LGTM: Version bump

Standard version increment with no functional changes.

components/zoho_desk/sources/new-ticket-message/new-ticket-message.mjs (1)

9-9: LGTM: Version bump

Standard version increment with no functional changes.

components/zoho_desk/sources/new-contact/new-contact.mjs (1)

9-9: LGTM: Version bump

Standard version increment with no functional changes.

components/zoho_desk/actions/list-help-centers/list-help-centers.mjs (1)

6-8: LGTM: Description standardization and version bump

The description update standardizes the documentation link phrasing across actions. Version increment is appropriate for this metadata change.

components/zoho_desk/actions/get-article/get-article.mjs (2)

6-8: LGTM: Description standardization and version bump

The description update standardizes the documentation link phrasing. Version increment is appropriate.


35-37: LGTM: Portal-scoped article selection

Adding the portalId mapper enables dynamic article options filtered by the selected portal, which improves UX by showing only relevant articles.

components/zoho_desk/zoho_desk.app.mjs (2)

129-129: LGTM: Description cleanup

Removing the trailing period standardizes the description format.


155-183: Verify pagination cursor type for categories

Same pagination concern as articleId: the async options use ID-based cursoring (from: data[data.length - 1].id), but this should be verified against the API's expected pagination mechanism for /kbRootCategories.

components/zoho_desk/actions/search-articles/search-articles.mjs (2)

5-7: LGTM: Description standardization and version bump

The description update aligns with other actions in the PR. Version increment is appropriate.


35-42: LGTM: Enhanced category selection with dynamic options

Converting categoryId from a plain string to a propDefinition enables portal-scoped dynamic options, improving UX by showing only relevant categories. The portalId mapper correctly filters categories by the selected portal.

components/zoho_desk/actions/list-articles/list-articles.mjs (4)

5-5: LGTM! Description text improved.

The updated description is more polished and professional.


7-7: Version bump is appropriate.

The patch-level version increment aligns with the changes made.


42-42: LGTM! Improved description consistency.

Removing trailing periods from prop descriptions improves consistency across the action's interface.

Also applies to: 56-56


30-37: categoryId propDefinition implementation verified and correct.

The propDefinition exists in zoho_desk.app.mjs (lines 155-180) with proper async options that depend on portalId. The field is correctly marked as optional and implements pagination support. The refactor from a primitive field to this dynamic propDefinition pattern is implemented correctly and consistently across list-articles.mjs and search-articles.mjs.

Copy link
Collaborator

@luancazarine luancazarine left a comment

Choose a reason for hiding this comment

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

Hi @michelle0927, LGTM! Ready for QA!

@michelle0927 michelle0927 merged commit 2c5f4f2 into master Oct 24, 2025
10 checks passed
@michelle0927 michelle0927 deleted the issue-18644 branch October 24, 2025 14:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ACTION] Help Center & Knowledge Base Actions for Zoho Desk

2 participants