---
title: "Assign Properties to a Rate Plan"
method: PUT
path: "/rm-rate-plans-ext/rate-plans/{ratePlanId}/init-assign-listings"
tags: ["Open Api Rate Plan CRUD v1"]
---

# Assign Properties to a Rate Plan

`PUT /rm-rate-plans-ext/rate-plans/{ratePlanId}/init-assign-listings`

Assigns listings to a rate plan. 

 Currently in pilot, the Rate Plans API allows the creation and management of independent rate plans that are not visible or editable within the Guesty UI. This API is available exclusively for <a href="http://Booking.com">Booking.com</a>   and direct reservations. 

To participate in the pilot, customers should contact Guesty for an eligibility review and to receive detailed information on potential limitations and risks.

## Path parameters

- `ratePlanId` string, required

## Request body

- object
  - `listingIds` string[], required

## Response `202`

Success

- object
  - `ratePlan` object, required — rate plan
    - `_id` string, required — id
    - `accountId` string, required — account id
    - `type` 'independent', required — type
    - `name` string, required — name
    - `description` string — description
    - `cancellationPolicy` 'strict' | 'strict_60' | 'strict_90' | 'super_strict' | 'moderate' | 'semi_moderate' | 'semi_flexible' | 'firm' | 'flex' | 'free', nullable — cancellationPolicy
    - `cancellationFee` string, nullable — cancellationFee
    - `mealPlans` number[] — mealPlans
    - `availabilityRules` object — availabilityRules
      - `advanceNotice` number — advance notice
      - `bookingWindow` number — booking window
      - `dateRange` object — date range
        - `to` string, date-time, required — to date
        - `from` string, date-time, required — from date
        - `repeatedDays` object, required — repeated days
          - `0` object, required
            - `available` boolean, required
          - `1` object, required
            - `available` boolean, required
          - `2` object, required
            - `available` boolean, required
          - `3` object, required
            - `available` boolean, required
          - `4` object, required
            - `available` boolean, required
          - `5` object, required
            - `available` boolean, required
          - `6` object, required
            - `available` boolean, required
      - `restrictedDates` string[] — restricted dates
    - `pricingModel` 'nightly_rate', required — pricingModel
    - `channelSync` string[] — channelSync
    - `active` boolean, required — is active
    - `createdAt` string, date-time, required — createdAt
    - `updatedAt` string, date-time, required — updatedAt
  - `requestId` string, required — request id

## Other responses

- `400` — Bad request
- `401` — Client unauthorized
- `403` — Access is forbidden for this client
- `404` — Not found
- `500` — Internal server error

---

[API](https://skmtc.net/guesty/apis/guesty-open-api.md) · [All operations](https://skmtc.net/guesty/apis/guesty-open-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/guesty/guesty-open-api/revisions/7c62644070f2/schema)
