# update_channel_rate_plans

Bulk-update rate plans on channel listings. Accepts an array of partial rate plan updates spanning multiple unit types
and channels in one call. Use to roll out NRR/Weekly/Monthly discount, cancelation policy, or booking window changes
across a portfolio.

<!-- INPUT_BLOCK_START -->

## Input

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `ratePlans` | `UpdateChannelRatePlanInput[]` | Yes | Array of rate plan updates. Server applies them in a single mutation; supports rate plans across multiple unit types and channels in one call. - [UpdateChannelRatePlanInput](#updatechannelrateplaninput) |

### UpdateChannelRatePlanInput

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | `string` | Yes | The ID of the rate plan to update |
| `name` | `string` | No | Display name of the rate plan (e.g. "Non-refundable") |
| `percentage` | `number` | No | Discount percentage relative to the standard rate. For Booking.com NRR / Weekly / Monthly plans this is the discount applied (e.g. 15 = 15% off). |
| `minStay` | `number` | No | Minimum length of stay in nights for this rate plan |
| `maxStay` | `number` | No | Maximum length of stay in nights for this rate plan |
| `minimumBookingWindow` | `number` | No | Minimum booking window value (paired with minimumBookingWindowUnit) |
| `minimumBookingWindowUnit` | `BookingWindow` | No | Unit for minimumBookingWindow (hour, day, month, year) - [BookingWindow](#bookingwindow) |
| `maximumBookingWindow` | `number` | No | Maximum booking window value (paired with maximumBookingWindowUnit) |
| `maximumBookingWindowUnit` | `BookingWindow` | No | Unit for maximumBookingWindow (hour, day, month, year) - [BookingWindow](#bookingwindow) |
| `cancellationPolicyId` | `string` | No | ID of the cancellation policy to apply to this rate plan (e.g. Strict, Moderate, Flexible on Booking.com) |
| `parentRatePlanId` | `string` | No | ID of the parent rate plan (typically the Standard rate) |
| `active` | `boolean` | No | Whether the rate plan is active |
| `readOnly` | `boolean` | No | Whether the rate plan is read-only |

### BookingWindow

| Value | Description |
| --- | --- |
| `day` | |
| `hour` | |
| `month` | |
| `year` | |

<!-- INPUT_BLOCK_END -->

<!-- OUTPUT_BLOCK_START -->

## Output

| Field | Type | Description |
| --- | --- | --- |
| `content` | `ContentItem[]` | Array of content items returned by the tool - [ContentItem](#contentitem) |
| `isError` | `boolean` | Whether the tool execution resulted in an error |

### ContentItem

| Field | Type | Description |
| --- | --- | --- |
| `type` | `'text'` | Content type (currently only 'text' is supported) |
| `text` | `string` | The text content to display |

<!-- OUTPUT_BLOCK_END -->
