Skip to content

Conversation

@jcortes
Copy link
Collaborator

@jcortes jcortes commented Dec 5, 2025

WHY

Resolves #19333

Summary by CodeRabbit

  • New Features
    • Pause, process, cancel orders and change orders to concept
    • Add and retrieve order tags
    • Add products to orders
    • Retrieve order comments
  • Chores
    • Multiple action and source version bumps
  • Enhancements
    • New UI prop options for selecting tags and products; improved order lookup parameters

✏️ Tip: You can customize this high-level summary in your review settings.

@jcortes jcortes self-assigned this Dec 5, 2025
@vercel
Copy link

vercel bot commented Dec 5, 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 Dec 5, 2025 4:50pm
pipedream-docs-redirect-do-not-edit Ignored Ignored Dec 5, 2025 4:50pm

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 5, 2025

Walkthrough

This pull request introduces eight new Picqer action modules for order management, extends the Picqer app with new propDefinitions and 10 API methods, and bumps the component package version to 0.2.0.

Changes

Cohort / File(s) Change Summary
New Order Management Actions
components/picqer/actions/process-order/process-order.mjs, components/picqer/actions/pause-order/pause-order.mjs, components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs, components/picqer/actions/cancel-order/cancel-order.mjs
Added four action modules implementing process, pause, change-to-concept, and cancel operations. Each exports a default action object with metadata, orderId prop (and optional params like reason or force), and a run method that calls the corresponding app method, exports a summary, and returns the API response.
New Order Tag Management Actions
components/picqer/actions/get-order-tags/get-order-tags.mjs, components/picqer/actions/add-order-tags/add-order-tags.mjs
Added actions to list and add tags on orders. Each action wires orderId (and tagId for add) to app propDefinitions, calls this.app.getOrderTags / this.app.addOrderTags, exports a summary, and returns the response.
New Order Product & Comment Actions
components/picqer/actions/add-product-to-order/add-product-to-order.mjs, components/picqer/actions/get-order-comments/get-order-comments.mjs
Added actions to add a product to an order and to retrieve order comments. Each exports a default action object with props for required fields and a run that invokes the matching app method and returns the API reply.
Base App Extension
components/picqer/picqer.app.mjs
Extended propDefinitions with tagId and productId options (paginated), changed orderId options to accept params, and added methods: processOrder, pauseOrder, changeOrderToConcept, cancelOrder, getOrderTags, addOrderTags, addProductToOrder, getOrderComments, listTags, listProducts mapping to the corresponding Picqer API endpoints.
Package / Version bumps
components/picqer/package.json, various action modules (components/picqer/actions/*)
Bumped component package version to 0.2.0. Several existing actions and one source had their exported version fields incremented (mostly 0.0.20.0.3 and one source 0.0.10.0.2).

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25–35 minutes

  • Areas needing focused review:
    • components/picqer/picqer.app.mjs — verify HTTP methods, paths, request construction, and merging of params.
    • New propDefinitions for tagId and productId — check pagination/label formatting and performance implications.
    • Action modules that call new app methods — ensure payload mapping (e.g., idtag, idproduct, amount/price) and summary messages are correct.
    • cancelOrder — confirm force flag handling and DELETE semantics.

Suggested labels

User submitted

Suggested reviewers

  • luancazarine
  • GTFalcao

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Description check ❓ Inconclusive The PR description contains only 'Resolves #19333' but lacks substantive details about the new components, their purpose, or implementation changes. Expand the description to explain what new Picqer actions were added, their key functionality, and any implementation decisions made.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The PR title '[ACTIONS] picqer - new components' accurately describes the main change: addition of new action components for Picqer.
Linked Issues check ✅ Passed All requested Picqer API operations from issue #19333 are implemented: process, pause, change-to-concept, cancel, get/add tags, add product, and get comments actions.
Out of Scope Changes check ✅ Passed All changes are scoped to new Picqer actions and supporting app methods; version bumps and package updates are maintenance-related changes aligned with the new release.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ 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 picqer-new-components

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.

@jcortes jcortes force-pushed the picqer-new-components branch from e937b01 to d5b79f1 Compare December 5, 2025 16:50
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: 4

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 85caf1b and e937b01.

📒 Files selected for processing (10)
  • components/picqer/actions/add-order-tags/add-order-tags.mjs (1 hunks)
  • components/picqer/actions/add-product-to-order/add-product-to-order.mjs (1 hunks)
  • components/picqer/actions/cancel-order/cancel-order.mjs (1 hunks)
  • components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs (1 hunks)
  • components/picqer/actions/get-order-comments/get-order-comments.mjs (1 hunks)
  • components/picqer/actions/get-order-tags/get-order-tags.mjs (1 hunks)
  • components/picqer/actions/pause-order/pause-order.mjs (1 hunks)
  • components/picqer/actions/process-order/process-order.mjs (1 hunks)
  • components/picqer/package.json (1 hunks)
  • components/picqer/picqer.app.mjs (3 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 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/picqer/package.json
🧬 Code graph analysis (6)
components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs (6)
components/picqer/actions/add-order-tags/add-order-tags.mjs (1)
  • response (30-36)
components/picqer/actions/add-product-to-order/add-product-to-order.mjs (1)
  • response (59-69)
components/picqer/actions/get-order-comments/get-order-comments.mjs (1)
  • response (24-27)
components/picqer/actions/get-order-tags/get-order-tags.mjs (1)
  • response (24-27)
components/picqer/actions/pause-order/pause-order.mjs (1)
  • response (29-35)
components/picqer/actions/process-order/process-order.mjs (1)
  • response (24-27)
components/picqer/actions/add-product-to-order/add-product-to-order.mjs (6)
components/picqer/actions/add-order-tags/add-order-tags.mjs (1)
  • response (30-36)
components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs (1)
  • response (29-32)
components/picqer/actions/get-order-comments/get-order-comments.mjs (1)
  • response (24-27)
components/picqer/actions/get-order-tags/get-order-tags.mjs (1)
  • response (24-27)
components/picqer/actions/pause-order/pause-order.mjs (1)
  • response (29-35)
components/picqer/actions/process-order/process-order.mjs (1)
  • response (24-27)
components/picqer/actions/pause-order/pause-order.mjs (6)
components/picqer/actions/add-order-tags/add-order-tags.mjs (1)
  • response (30-36)
components/picqer/actions/add-product-to-order/add-product-to-order.mjs (1)
  • response (59-69)
components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs (1)
  • response (29-32)
components/picqer/actions/get-order-comments/get-order-comments.mjs (1)
  • response (24-27)
components/picqer/actions/get-order-tags/get-order-tags.mjs (1)
  • response (24-27)
components/picqer/actions/process-order/process-order.mjs (1)
  • response (24-27)
components/picqer/actions/add-order-tags/add-order-tags.mjs (6)
components/picqer/actions/add-product-to-order/add-product-to-order.mjs (1)
  • response (59-69)
components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs (1)
  • response (29-32)
components/picqer/actions/get-order-comments/get-order-comments.mjs (1)
  • response (24-27)
components/picqer/actions/get-order-tags/get-order-tags.mjs (1)
  • response (24-27)
components/picqer/actions/pause-order/pause-order.mjs (1)
  • response (29-35)
components/picqer/actions/process-order/process-order.mjs (1)
  • response (24-27)
components/picqer/actions/process-order/process-order.mjs (6)
components/picqer/actions/add-order-tags/add-order-tags.mjs (1)
  • response (30-36)
components/picqer/actions/add-product-to-order/add-product-to-order.mjs (1)
  • response (59-69)
components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs (1)
  • response (29-32)
components/picqer/actions/get-order-comments/get-order-comments.mjs (1)
  • response (24-27)
components/picqer/actions/get-order-tags/get-order-tags.mjs (1)
  • response (24-27)
components/picqer/actions/pause-order/pause-order.mjs (1)
  • response (29-35)
components/picqer/actions/get-order-tags/get-order-tags.mjs (6)
components/picqer/actions/add-order-tags/add-order-tags.mjs (1)
  • response (30-36)
components/picqer/actions/add-product-to-order/add-product-to-order.mjs (1)
  • response (59-69)
components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs (1)
  • response (29-32)
components/picqer/actions/get-order-comments/get-order-comments.mjs (1)
  • response (24-27)
components/picqer/actions/pause-order/pause-order.mjs (1)
  • response (29-35)
components/picqer/actions/process-order/process-order.mjs (1)
  • response (24-27)
⏰ 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: Verify TypeScript components
  • GitHub Check: Publish TypeScript components
  • GitHub Check: pnpm publish
  • GitHub Check: Lint Code Base
🔇 Additional comments (10)
components/picqer/package.json (1)

3-3: LGTM!

Version bump to 0.2.0 is appropriate for the addition of new action modules. Dependencies remain unchanged.

components/picqer/actions/pause-order/pause-order.mjs (1)

1-40: LGTM!

The action is well-implemented with appropriate annotations and consistent structure. The reason prop being required is a good design choice for audit trail purposes.

components/picqer/actions/add-order-tags/add-order-tags.mjs (1)

1-41: LGTM!

Clean implementation following established patterns. The mapping of tagId prop to idtag in the API payload is correctly handled.

components/picqer/actions/get-order-comments/get-order-comments.mjs (1)

1-31: LGTM!

The action is well-structured with correct annotations (readOnlyHint: true for a GET operation). The implementation follows the established Pipedream action pattern consistently with other similar actions in this component (search-orders, get-order-tags), which all assume array responses for their summary messages.

components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs (1)

1-37: LGTM!

The action is well-structured and follows the established pattern. The status filter for "expected" orders in the orderId prop (line 22) correctly constrains the selection to orders that can be changed to concept status, aligning with the Picqer API requirements.

components/picqer/picqer.app.mjs (3)

15-22: LGTM!

Good enhancement to the orderId options. Adding params support allows actions to filter orders by status (e.g., "expected", "concept"), which is used effectively in the new actions like change-order-to-concept and add-product-to-order.


303-338: LGTM!

The new tagId and productId propDefinitions follow the established pattern with pagination support. The label formatting for products (${productcode} - ${name}) provides good user clarity.


492-573: LGTM!

All new API methods follow a consistent pattern with _makeRequest and correctly implement the Picqer API endpoints:

  • processOrder, pauseOrder, changeOrderToConcept: POST operations for order lifecycle
  • cancelOrder: DELETE operation
  • getOrderTags, getOrderComments: GET operations
  • addOrderTags, addProductToOrder: POST operations
  • listTags, listProducts: GET operations for propDefinition options

The methods align with the PR objectives from issue #19333.

components/picqer/actions/process-order/process-order.mjs (1)

1-32: LGTM!

The action is well-implemented. The description appropriately notes that processing occurs asynchronously in the background after the response is received, which sets correct user expectations.

components/picqer/actions/add-product-to-order/add-product-to-order.mjs (1)

16-26: LGTM!

The orderId prop correctly filters to "concept" status, ensuring only editable orders are available for product addition, matching the constraint described in the action description.

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: 2

♻️ Duplicate comments (2)
components/picqer/actions/cancel-order/cancel-order.mjs (1)

29-47: Align summary message and return value with other actions.

Two consistency issues:

  1. The summary message doesn't include the orderId, unlike other actions in this PR (e.g., change-order-to-concept includes it).
  2. Returns a hardcoded { success: true } instead of the API response, which differs from the pattern used in other actions.

Apply this diff to align with other actions:

+    const response = await app.cancelOrder({
-    await app.cancelOrder({
       $,
       orderId,
       params: {
         force,
       },
     });
-    $.export("$summary", "Successfully canceled order");
-    return {
-      success: true,
-    };
+    $.export("$summary", `Successfully canceled order ${orderId}`);
+    return response;
components/picqer/actions/get-order-tags/get-order-tags.mjs (1)

1-31: LGTM with one caveat.

The action implementation follows the established Picqer action pattern correctly. The defensive check concern on line 29 was already flagged in a previous review.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between e937b01 and d5b79f1.

📒 Files selected for processing (20)
  • components/picqer/actions/add-order-comment/add-order-comment.mjs (1 hunks)
  • components/picqer/actions/add-order-tags/add-order-tags.mjs (1 hunks)
  • components/picqer/actions/add-product-to-order/add-product-to-order.mjs (1 hunks)
  • components/picqer/actions/add-return-comment/add-return-comment.mjs (1 hunks)
  • components/picqer/actions/cancel-order/cancel-order.mjs (1 hunks)
  • components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs (1 hunks)
  • components/picqer/actions/create-order/create-order.mjs (1 hunks)
  • components/picqer/actions/get-customer/get-customer.mjs (1 hunks)
  • components/picqer/actions/get-order-comments/get-order-comments.mjs (1 hunks)
  • components/picqer/actions/get-order-tags/get-order-tags.mjs (1 hunks)
  • components/picqer/actions/get-order/get-order.mjs (1 hunks)
  • components/picqer/actions/get-picklist/get-picklist.mjs (1 hunks)
  • components/picqer/actions/get-status-per-order-line/get-status-per-order-line.mjs (1 hunks)
  • components/picqer/actions/pause-order/pause-order.mjs (1 hunks)
  • components/picqer/actions/process-order/process-order.mjs (1 hunks)
  • components/picqer/actions/search-orders/search-orders.mjs (1 hunks)
  • components/picqer/actions/update-order/update-order.mjs (1 hunks)
  • components/picqer/package.json (1 hunks)
  • components/picqer/picqer.app.mjs (3 hunks)
  • components/picqer/sources/new-event-instant/new-event-instant.mjs (1 hunks)
🧰 Additional context used
🧠 Learnings (4)
📚 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/picqer/actions/add-product-to-order/add-product-to-order.mjs
📚 Learning: 2025-10-20T01:01:02.970Z
Learnt from: js07
Repo: PipedreamHQ/pipedream PR: 18744
File: components/slack_v2/actions/send-large-message/send-large-message.mjs:49-64
Timestamp: 2025-10-20T01:01:02.970Z
Learning: In components/slack_v2/actions/send-large-message/send-large-message.mjs, the metadata_event_payload prop is typed as string, so the code only needs to handle string-to-JSON parsing and does not need to handle object inputs.

Applied to files:

  • components/picqer/sources/new-event-instant/new-event-instant.mjs
📚 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/picqer/actions/get-order-tags/get-order-tags.mjs
  • components/picqer/actions/cancel-order/cancel-order.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/picqer/package.json
🧬 Code graph analysis (4)
components/picqer/actions/get-order-comments/get-order-comments.mjs (8)
components/picqer/actions/add-order-comment/add-order-comment.mjs (1)
  • response (42-50)
components/picqer/actions/get-customer/get-customer.mjs (1)
  • response (24-27)
components/picqer/actions/get-order-tags/get-order-tags.mjs (1)
  • response (24-27)
components/picqer/actions/get-order/get-order.mjs (1)
  • response (24-27)
components/picqer/actions/get-picklist/get-picklist.mjs (1)
  • response (24-27)
components/picqer/actions/get-status-per-order-line/get-status-per-order-line.mjs (1)
  • response (25-28)
components/picqer/actions/search-orders/search-orders.mjs (1)
  • response (92-107)
components/picqer/actions/update-order/update-order.mjs (1)
  • response (314-356)
components/picqer/actions/add-product-to-order/add-product-to-order.mjs (5)
components/picqer/actions/add-order-comment/add-order-comment.mjs (1)
  • response (42-50)
components/picqer/actions/create-order/create-order.mjs (1)
  • response (322-364)
components/picqer/actions/get-customer/get-customer.mjs (1)
  • response (24-27)
components/picqer/actions/get-order-tags/get-order-tags.mjs (1)
  • response (24-27)
components/picqer/actions/update-order/update-order.mjs (1)
  • response (314-356)
components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs (2)
components/picqer/actions/add-order-tags/add-order-tags.mjs (1)
  • response (30-36)
components/picqer/actions/get-order/get-order.mjs (1)
  • response (24-27)
components/picqer/actions/get-order-tags/get-order-tags.mjs (4)
components/picqer/actions/add-order-tags/add-order-tags.mjs (1)
  • response (30-36)
components/picqer/actions/create-order/create-order.mjs (1)
  • response (322-364)
components/picqer/actions/get-order-comments/get-order-comments.mjs (1)
  • response (24-27)
components/picqer/actions/get-order/get-order.mjs (1)
  • response (24-27)
⏰ 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 (15)
components/picqer/actions/process-order/process-order.mjs (2)

1-32: All 7 action modules mentioned in the AI summary have been verified to exist in the PR: add-order-tags, add-product-to-order, cancel-order, change-order-to-concept, get-order-comments, get-order-tags, and pause-order. No action required.

Likely an incorrect or invalid review comment.


8-12: The destructiveHint: false annotation is correct. In the picqer component, destructiveHint: true is reserved for operations that modify order fields (like update-order), while destructiveHint: false is appropriate for state-transition operations like process-order that finalize orders without directly modifying their fields. The action appropriately reflects the distinction between field mutation and workflow progression.

Likely an incorrect or invalid review comment.

components/picqer/actions/add-product-to-order/add-product-to-order.mjs (1)

58-69: LGTM! The implementation correctly relies on platform behavior.

The data object includes optional fields directly without filtering undefined values. This is correct because Pipedream's axios implementation automatically excludes undefined values from HTTP requests.

Based on learnings, there's no need to manually check for truthiness before including properties in request payloads.

components/picqer/actions/change-order-to-concept/change-order-to-concept.mjs (1)

1-37: LGTM!

The action follows the standard pattern correctly. The orderId is properly constrained to "expected" status, which makes sense for an operation that converts expected orders back to concept status. The summary message includes the order ID and the response is returned appropriately.

components/picqer/package.json (1)

3-3: LGTM!

The version bump from 0.1.0 to 0.2.0 appropriately reflects the addition of new action components in this PR.

components/picqer/sources/new-event-instant/new-event-instant.mjs (1)

10-10: LGTM!

The version bump from 0.0.1 to 0.0.2 is a routine update with no functional changes.

components/picqer/actions/get-customer/get-customer.mjs (1)

7-7: LGTM!

The version bump from 0.0.2 to 0.0.3 is a routine update with no functional changes.

components/picqer/actions/get-picklist/get-picklist.mjs (1)

7-7: LGTM!

The version bump from 0.0.2 to 0.0.3 is a routine update with no functional changes.

components/picqer/actions/add-order-tags/add-order-tags.mjs (1)

1-41: LGTM!

The action follows the standard pattern correctly. Props are properly defined using propDefinitions, the run method cleanly invokes the app method with appropriate parameters, and the summary message includes the order ID. The response is returned appropriately.

components/picqer/actions/pause-order/pause-order.mjs (2)

1-39: Implementation looks good overall.

The action follows the established Picqer action pattern. Annotations correctly indicate this is not read-only and not destructive (pausing is reversible). The API call structure is consistent with other actions.


22-26: No change needed — reason is required by the Picqer API.

The Picqer API documentation specifies that reason is a required parameter for the pause order endpoint. The current implementation correctly omits optional: true, ensuring users provide the required field.

Likely an incorrect or invalid review comment.

components/picqer/picqer.app.mjs (4)

15-22: Nice enhancement to orderId options.

Adding the params spread allows callers to pass additional filters when fetching order options, improving flexibility without breaking existing usage.


303-338: New propDefinitions look good.

Both tagId and productId follow the established pattern with proper pagination and label/value mapping. The product label format ${productcode} - ${name} provides good user context.


492-573: New API methods are well-structured.

All 10 new methods follow the established pattern consistently:

  • Proper HTTP methods (POST for actions, DELETE for cancel, GET implicit for reads)
  • Correct endpoint paths matching Picqer API documentation
  • Consistent parameter destructuring with { orderId, ...opts }

Coverage check against PR objectives:

  • ✅ Process order: processOrder (POST /orders/{orderId}/process)
  • ✅ Pause order: pauseOrder (POST /orders/{orderId}/pause)
  • ✅ Change to concept: changeOrderToConcept (POST /orders/{orderId}/change-to-concept)
  • ✅ Cancel order: cancelOrder (DELETE /orders/{orderId})
  • ✅ Get order tags: getOrderTags (GET /orders/{orderId}/tags)
  • ✅ Add order tags: addOrderTags (POST /orders/{orderId}/tags)
  • ✅ Add product to order: addProductToOrder (POST /orders/{orderId}/products)
  • ✅ Get order comments: getOrderComments (GET /orders/{orderId}/comments)

519-527: Verify force cancel support.

PR objectives mention a "Force cancel" endpoint: DELETE /api/v1/orders/{idorder}?force=true. The current cancelOrder method doesn't explicitly support the force query parameter. However, since ...opts is spread, callers can pass params: { force: true } if needed.

Consider documenting this capability or adding explicit support if force-cancel is a common use case.

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] picqer - expand functionality

2 participants