Skip to content

Conversation

@manameaaus
Copy link

@manameaaus manameaaus commented Dec 2, 2025

WHY

Resolves #19336

Summary

Add optional gender and dateOfBirth fields to Booking Experts guest creation and update actions so components can send these attributes to the Booking Experts API.

This implements support for the Booking Experts guest update endpoint:
https://developers.bookingexperts.com/reference/administration-reservation-guests-update

Changes

  • components/booking_experts/actions/update-guest/update-guest.mjs

    • Added optional gender prop (options: male, female, other)
    • Added optional dateOfBirth prop (expects YYYY-MM-DD)
    • Send gender and date_of_birth in the API request attributes
  • components/booking_experts/actions/add-guest-to-reservation/add-guest-to-reservation.mjs

    • Added optional gender prop (options: male, female, other)
    • Added optional dateOfBirth prop (expects YYYY-MM-DD)
    • Send gender and date_of_birth in the API request attributes

Summary by CodeRabbit

  • New Features

    • Added optional Gender field (options: male, female, other) when adding or updating guest details on reservations.
    • Added optional Date of Birth field (YYYY-MM-DD) when adding or updating guest details on reservations.
  • Chores

    • Package and action versions bumped (maintenance updates).

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

@vercel
Copy link

vercel bot commented Dec 2, 2025

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

1 Skipped Deployment
Project Deployment Preview Comments Updated (UTC)
pipedream-docs-redirect-do-not-edit Ignored Ignored Dec 3, 2025 5:33am

@pipedream-component-development
Copy link
Collaborator

Thank you so much for submitting this! We've added it to our backlog to review, and our team has been notified.

@pipedream-component-development
Copy link
Collaborator

Thanks for submitting this PR! When we review PRs, we follow the Pipedream component guidelines. If you're not familiar, here's a quick checklist:

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 2, 2025

Walkthrough

Two Booking Experts actions (add-guest-to-reservation and update-guest) gain optional guest fields: gender and dateOfBirth; payload mappings and action versions are updated. package.json version is bumped and @types/glob is added to devDependencies.

Changes

Cohort / File(s) Change Summary
Guest management actions
components/booking_experts/actions/add-guest-to-reservation/add-guest-to-reservation.mjs, components/booking_experts/actions/update-guest/update-guest.mjs
Version bumps (0.0.5→0.0.6 and 0.0.3→0.0.4). Added optional gender prop (string; options: male,female,other) and optional dateOfBirth prop (string; YYYY-MM-DD). Extended runtime payload to include gender and date_of_birth. Minor description/formatting adjustments.
Project manifest
package.json
Package version bumped (1.2.1→1.2.2). Added devDependency @types/glob ^8.1.0.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

  • Pay attention to:
    • Correct mapping of dateOfBirthdate_of_birth and gendergender in payloads.
    • Validation/format expectations for dateOfBirth (YYYY-MM-DD) where inputs are consumed.
    • Version strings and any downstream consumers expecting previous versions.

Pre-merge checks and finishing touches

❌ Failed checks (1 warning, 1 inconclusive)
Check name Status Explanation Resolution
Out of Scope Changes check ⚠️ Warning The package.json change adding devDependency '@types/glob' appears unrelated to the core objective of adding gender and dateOfBirth fields to Booking Experts guest actions. Remove the '@types/glob' devDependency from package.json or clarify its necessity in relation to the guest field updates.
Title check ❓ Inconclusive The title 'Add guest gender dob' is vague and uses abbreviation 'dob' instead of spelling out 'date of birth', making it unclear to someone unfamiliar with the acronym. Use a clearer title like 'Add gender and date of birth fields to Booking Experts guest actions' to improve readability and clarity.
✅ Passed checks (3 passed)
Check name Status Explanation
Description check ✅ Passed The PR description is well-structured with clear sections (WHY, Summary, Changes), includes issue reference, explains the purpose, and details specific changes made to each file.
Linked Issues check ✅ Passed The PR successfully implements all requirements from issue #19336: adds gender and date_of_birth support to both update-guest and add-guest-to-reservation actions with correct field options and formatting.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 22b7b87 and d5484d1.

📒 Files selected for processing (1)
  • package.json (2 hunks)
🔇 Additional comments (2)
package.json (2)

3-3: Version bump is appropriate.

The patch version increment (1.2.1 → 1.2.2) is suitable for adding optional fields to existing actions without breaking changes.


52-52: Clarify the necessity of @types/glob for this PR.

@types/glob appears disconnected from the stated PR objectives (adding gender and dateOfBirth fields to Booking Experts actions). Additionally, modern versions of the glob package ship with built-in TypeScript types, so @types/glob may be unnecessary unless:

  • Your project uses an older glob version without bundled types, or
  • glob is newly required for functionality in the modified Booking Experts action files

Please confirm whether glob is actually used in the PR changes and whether @types/glob is required, or defer this to a separate PR if it's unrelated.


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.

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

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 2583778 and 22b7b87.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (3)
  • components/booking_experts/actions/add-guest-to-reservation/add-guest-to-reservation.mjs (3 hunks)
  • components/booking_experts/actions/update-guest/update-guest.mjs (4 hunks)
  • package.json (1 hunks)
🔇 Additional comments (6)
package.json (1)

52-52: Unrelated dependency addition?

The addition of @types/glob appears unrelated to the PR objectives, which focus on adding gender and date of birth fields to Booking Experts actions. This may have been included accidentally.

components/booking_experts/actions/update-guest/update-guest.mjs (2)

6-8: LGTM!

Version bump and description formatting are appropriate for the addition of new optional fields.


135-136: LGTM!

The payload mapping correctly transforms camelCase prop names to snake_case API fields, consistent with the existing field mappings.

components/booking_experts/actions/add-guest-to-reservation/add-guest-to-reservation.mjs (3)

6-8: LGTM!

Version bump and description formatting are appropriate.


78-94: Verify gender options and consider date format validation.

Same concerns as in update-guest.mjs:

  1. Confirm that gender options (male, female, other) match the Booking Experts API specification.
  2. The dateOfBirth prop expects YYYY-MM-DD format but lacks validation, which could lead to API errors with invalid input.

Consider adding format validation or at minimum providing an example in the description (e.g., "The date of birth of the guest in YYYY-MM-DD format (e.g., 1990-01-15)").


113-114: LGTM!

The payload mapping is correct and consistent with the existing field transformations (camelCase to snake_case).

Comment on lines +98 to +114
gender: {
type: "string",
label: "Gender",
description: "The gender of the guest",
optional: true,
options: [
"male",
"female",
"other",
],
},
dateOfBirth: {
type: "string",
label: "Date of Birth",
description: "The date of birth of the guest in YYYY-MM-DD format",
optional: true,
},
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

# First, let's examine the full update-guest.mjs file to understand context
wc -l components/booking_experts/actions/update-guest/update-guest.mjs

Repository: PipedreamHQ/pipedream

Length of output: 186


🏁 Script executed:

# Search for date validation patterns in the codebase
rg -n "YYYY-MM-DD|\d{4}-\d{2}-\d{2}|dateOfBirth|date.*format|validate.*date" components/booking_experts/ -A 2

Repository: PipedreamHQ/pipedream

Length of output: 186


🏁 Script executed:

# Search for gender field definitions in the codebase to compare patterns
rg -n "gender" components/booking_experts/ -B 2 -A 5

Repository: PipedreamHQ/pipedream

Length of output: 186


🏁 Script executed:

# Check if there are any validation utilities or patterns in common utils
fd -t f "validat" components/booking_experts/

Repository: PipedreamHQ/pipedream

Length of output: 186


🏁 Script executed:

# Look for API documentation files or references to Booking Experts API specs
rg -n "Booking Experts|booking.?experts" . --type md --type txt -l

Repository: PipedreamHQ/pipedream

Length of output: 186


🌐 Web query:

Booking Experts API guest gender field valid values documentation

💡 Result:

Booking Experts guest "gender" valid values: male, female, unknown. [1][2]

Sources:

  • Booking Experts API docs (guest endpoints / reservations overview). [1]
  • Example API docs showing gender enum (male, female, unknown). [2]

🌐 Web query:

Booking Experts API guest dateOfBirth date_of_birth format requirements

💡 Result:

Use the ISO‑8601 date (date-only) format: "YYYY-MM-DD". Example in the Booking Experts API docs: "date_of_birth": "1983-11-05". [1][2]

Sources:

  1. Booking Experts API reference (examples showing "date_of_birth": "1983-11-05"). [1]
  2. Booking Experts API introduction / OpenAPI spec (JSON API, date conventions). [2]

Change gender option from "other" to "unknown" to match Booking Experts API specification.

The Booking Experts API expects gender values of male, female, and unknown, but the code uses other instead of unknown. Update the gender options accordingly. The dateOfBirth format description is correct (YYYY-MM-DD matches API requirements).

🤖 Prompt for AI Agents
In components/booking_experts/actions/update-guest/update-guest.mjs around lines
98 to 114, the gender options include "other" but the Booking Experts API
requires "unknown"; update the gender.options array to replace "other" with
"unknown" so the allowed values are "male", "female", and "unknown", leaving the
rest of the schema and the dateOfBirth description unchanged.

Copy link
Collaborator

@jcortes jcortes left a comment

Choose a reason for hiding this comment

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

HI @manameaaus thanks for this great contribution, can you please increase just the version in package.json thanks! This is ready for QA!

package.json Outdated
@@ -1,3 +1,3 @@
{
"name": "pipedream",
"version": "1.2.1",
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
"version": "1.2.2",

@jcortes jcortes moved this from Ready for PR Review to Ready for QA in Component (Source and Action) Backlog Dec 2, 2025
@vunguyenhung
Copy link
Collaborator

Hi everyone, all test cases are passed! Ready for release!

Test reports

@manameaaus
Copy link
Author

HI @manameaaus thanks for this great contribution, can you please increase just the version in package.json thanks! This is ready for QA!

Thank you for the reply @jcortes, I have made the suggested changes

@manameaaus manameaaus requested a review from jcortes December 3, 2025 05:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

User submitted Submitted by a user

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ACTION] Booking experts - update guests

5 participants