Skip to content

Manual Overrides

Endpoint Method Scope Description
/api/v1/listings/<id>/customizations/manual-overrides/ GET listings:read Get manual price overrides for a listing
/api/v1/listings/<id>/customizations/manual-overrides/ PATCH listings:write Update manual price overrides for a listing

Try it out

Explore schemas and live requests in the Swagger UI.

Part of Listing Customizations: its conventions and errors apply to every customization type.

Every other customization describes a rule Beyond applies while pricing. Use manual-overrides when you want to take over specific dates instead, the same way the Beyond web calendar's "Manual Override" panel does.

Each entry in overrides covers a date range and carries at most one of:

  • price: a fixed nightly price. Beyond stops repricing those dates and publishes exactly this amount until you remove the override. A fixed price is accepted even when it falls below the listing's minimum price — an explicit override outranks the floor.
  • percentage-adjustment: a percentage applied to Beyond's modeled price, where 10 means +10% and -10 means -10%. The price keeps moving with the model; the adjustment is applied after every other pricing factor.

The two are mutually exclusive on any given date: setting one clears the other. An entry with neither value clears both, returning the dates to fully modeled pricing.

Each entry accepts:

  • start-date / end-date: the range the override applies to. Use the same value for both to override a single date. Dates that have already passed in the listing's timezone are rejected.
  • days-of-week: optional. Restricts the override to the named weekdays within the range — for example, only Fridays and Saturdays. Omit it to cover every date in the range.

PATCH is additive: dates you do not mention keep whatever override they already had. To remove overrides, send an entry with no value for the dates you want cleared.

Reading overrides back

GET returns one entry per overridden date, with start-date equal to end-date, so a response body can be sent straight back as a request body. Dates with no override are omitted entirely.

Narrow the window with filter[start-date] and filter[end-date] (YYYY-MM-DD). The default window is today through today + 365 days in the listing's timezone.

GET /api/v1/listings/123/customizations/manual-overrides/?filter[start-date]=2026-06-01&filter[end-date]=2026-06-30
{
  "data": {
    "type": "manual-override-customizations",
    "id": "123",
    "attributes": {
      "overrides": [
        {"start-date": "2026-06-05", "end-date": "2026-06-05", "price": 250,
         "percentage-adjustment": null},
        {"start-date": "2026-06-06", "end-date": "2026-06-06", "price": null,
         "percentage-adjustment": 10}
      ]
    }
  }
}

To see which dates on the pricing calendar carry an override without fetching this resource, read price-override-type on the calendar entries.