-
Notifications
You must be signed in to change notification settings - Fork 5.6k
Helpscout API Key - new components #19384
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
base: master
Are you sure you want to change the base?
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 2 Skipped Deployments
|
WalkthroughAdds three Help Scout article actions (get, list, search), expands the Help Scout app with a full HTTP client and propDefinitions for dynamic UI options, and updates package metadata/version and dependencies. Changes
Sequence Diagram(s)mermaid Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20–25 minutes
Pre-merge checks and finishing touches❌ Failed checks (1 inconclusive)
✅ Passed checks (4 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (5)
components/help_scout_api_keys/actions/get-article/get-article.mjs(1 hunks)components/help_scout_api_keys/actions/list-articles/list-articles.mjs(1 hunks)components/help_scout_api_keys/actions/search-articles/search-articles.mjs(1 hunks)components/help_scout_api_keys/help_scout_api_keys.app.mjs(1 hunks)components/help_scout_api_keys/package.json(2 hunks)
🧰 Additional context used
🧠 Learnings (4)
📚 Learning: 2024-07-04T18:11:59.822Z
Learnt from: GTFalcao
Repo: PipedreamHQ/pipedream PR: 12731
File: components/hackerone/actions/get-members/get-members.mjs:3-28
Timestamp: 2024-07-04T18:11:59.822Z
Learning: When exporting a summary message in the `run` method of an action, ensure the message is correctly formatted. For example, in the `hackerone-get-members` action, the correct format is `Successfully retrieved ${response.data.length} members`.
Applied to files:
components/help_scout_api_keys/actions/list-articles/list-articles.mjs
📚 Learning: 2024-12-12T19:23:09.039Z
Learnt from: jcortes
Repo: PipedreamHQ/pipedream PR: 14935
File: components/sailpoint/package.json:15-18
Timestamp: 2024-12-12T19:23:09.039Z
Learning: When developing Pipedream components, do not add built-in Node.js modules like `fs` to `package.json` dependencies, as they are native modules provided by the Node.js runtime.
Applied to files:
components/help_scout_api_keys/package.json
📚 Learning: 2025-06-04T17:52:05.780Z
Learnt from: GTFalcao
Repo: PipedreamHQ/pipedream PR: 16954
File: components/salesloft/salesloft.app.mjs:14-23
Timestamp: 2025-06-04T17:52:05.780Z
Learning: In the Salesloft API integration (components/salesloft/salesloft.app.mjs), the _makeRequest method returns response.data which directly contains arrays for list endpoints like listPeople, listCadences, listUsers, and listAccounts. The propDefinitions correctly call .map() directly on these responses without needing to destructure a nested data property.
Applied to files:
components/help_scout_api_keys/help_scout_api_keys.app.mjs
📚 Learning: 2025-09-15T22:01:11.472Z
Learnt from: GTFalcao
Repo: PipedreamHQ/pipedream PR: 18362
File: components/leonardo_ai/actions/generate-image/generate-image.mjs:103-105
Timestamp: 2025-09-15T22:01:11.472Z
Learning: In Pipedream components, pipedream/platform's axios implementation automatically excludes undefined values from HTTP requests, so there's no need to manually check for truthiness before including properties in request payloads.
Applied to files:
components/help_scout_api_keys/help_scout_api_keys.app.mjs
🧬 Code graph analysis (4)
components/help_scout_api_keys/actions/get-article/get-article.mjs (2)
components/help_scout_api_keys/actions/list-articles/list-articles.mjs (1)
response(85-95)components/help_scout_api_keys/actions/search-articles/search-articles.mjs (1)
response(60-70)
components/help_scout_api_keys/actions/list-articles/list-articles.mjs (3)
components/help_scout_api_keys/help_scout_api_keys.app.mjs (1)
params(59-61)components/help_scout_api_keys/actions/get-article/get-article.mjs (1)
response(46-49)components/help_scout_api_keys/actions/search-articles/search-articles.mjs (1)
response(60-70)
components/help_scout_api_keys/actions/search-articles/search-articles.mjs (2)
components/help_scout_api_keys/actions/get-article/get-article.mjs (1)
response(46-49)components/help_scout_api_keys/actions/list-articles/list-articles.mjs (1)
response(85-95)
components/help_scout_api_keys/help_scout_api_keys.app.mjs (1)
components/help_scout_api_keys/actions/list-articles/list-articles.mjs (1)
params(78-84)
⏰ 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). (4)
- GitHub Check: Publish TypeScript components
- GitHub Check: Verify TypeScript components
- GitHub Check: pnpm publish
- GitHub Check: Lint Code Base
🔇 Additional comments (5)
components/help_scout_api_keys/actions/get-article/get-article.mjs (1)
1-52: Get Article action wiring and props look solidProps cleanly reuse the app’s dynamic
collectionId,categoryId, andarticleIddefinitions, andrun()correctly delegates tothis.helpscout.getArticleand exports a concise summary. I don’t see any functional issues here.components/help_scout_api_keys/help_scout_api_keys.app.mjs (2)
7-79: Dynamic collection/category/article/page/status props are well-structuredThe dynamic
collectionId,categoryId, andarticleIdoptions correctly page through the relevant list endpoints and map{ id, name }to{ value, label }, and thepageandstatuspropDefinitions centralize pagination and status handling nicely. This is a clean, reusable setup for the article-related actions.
118-181: HTTP helper and endpoint methods are consistent and idiomaticCentralizing the base URL, auth, and axios call in
_makeRequestand layeringgetArticle,listCollections,listCategories,listSites,listArticlesByCollection,listArticlesByCategory, andsearchArticleson top keeps the actions thin and readable. The paths and auth pattern match the current Docs API, and the optional$argument makes these methods usable from both actions and prop option loaders without extra boilerplate.components/help_scout_api_keys/package.json (1)
3-17: Package version and platform dependency are correctly configuredThe 0.1.0 version and
@pipedream/platformdependency at ^3.1.1 align with the axios import in app.mjs (line 1) and its usage throughout the component's methods.components/help_scout_api_keys/actions/list-articles/list-articles.mjs (1)
1-100: List Articles action matches the Docs API parameters and response shapeThe props cover the expected filters (collection/category, status, sort, order, page, pageSize) and the
paramsobject aligns with the List Articles endpoint contract, including the documented max pageSize of 100.Routing to
listArticlesByCategoryvslistArticlesByCollectionbased oncategoryIdand summarizing viaresponse.articles.items.lengthmatches the published response structure. The action correctly implements the Help Scout Docs API contract and is ready.
components/help_scout_api_keys/actions/search-articles/search-articles.mjs
Show resolved
Hide resolved
There was a problem hiding this 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
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (1)
components/help_scout_api_keys/actions/search-articles/search-articles.mjs(1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2024-07-04T18:11:59.822Z
Learnt from: GTFalcao
Repo: PipedreamHQ/pipedream PR: 12731
File: components/hackerone/actions/get-members/get-members.mjs:3-28
Timestamp: 2024-07-04T18:11:59.822Z
Learning: When exporting a summary message in the `run` method of an action, ensure the message is correctly formatted. For example, in the `hackerone-get-members` action, the correct format is `Successfully retrieved ${response.data.length} members`.
Applied to files:
components/help_scout_api_keys/actions/search-articles/search-articles.mjs
🧬 Code graph analysis (1)
components/help_scout_api_keys/actions/search-articles/search-articles.mjs (2)
components/help_scout_api_keys/actions/get-article/get-article.mjs (1)
response(46-49)components/help_scout_api_keys/actions/list-articles/list-articles.mjs (1)
response(85-95)
⏰ 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). (4)
- GitHub Check: Lint Code Base
- GitHub Check: pnpm publish
- GitHub Check: Publish TypeScript components
- GitHub Check: Verify TypeScript components
🔇 Additional comments (2)
components/help_scout_api_keys/actions/search-articles/search-articles.mjs (2)
3-13: Action metadata and annotations look consistent and correctKey, name, description, version, and annotations align with existing Pipedream patterns and the Help Scout articles search use case.
14-57: Props cleanly mirror Help Scout search parametersProps are well‑structured:
queryis required, andcollectionId,siteId,status,visibility, andpagecorrectly map to the API’s query params using sharedhelpscoutpropDefinitions where available.
components/help_scout_api_keys/actions/search-articles/search-articles.mjs
Show resolved
Hide resolved
jcortes
left a comment
There was a problem hiding this 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!
|
Hi everyone, all test cases are passed! Ready for release! Test reports
|
Resolves #19178
Summary by CodeRabbit
New Features
Chores
✏️ Tip: You can customize this high-level summary in your review settings.