---
title: "List price rules for a package"
method: GET
path: "/shop/packages/{packageId}/price-rules"
tags: ["Packages"]
---

# List price rules for a package

`GET /shop/packages/{packageId}/price-rules`

Returns all `PriceRule`s configured on the given `Package`. Price
rules determine the price the customer pays based on when the
package is booked — peak vs off-peak, weekday vs weekend, seasonal
overrides. The first rule whose conditions match the booking wins;
when no rule matches, the package falls back to a sensible default.

Results are paginated. Requires read access to the package's site.

## Query parameters

- `page` integer
- `per_page` integer

## Response `200`

A paginated list of price rules for a package.

- object
  - `data` SchemasPriceRule[], required — The price rules configured for this package on the current page.
    - `id` string, object-id — The ID of the price rule.
    - `price` integer — The price applied by this rule
    - `date_from` string, date, nullable — The first date this rule should be applied.
    - `date_to` string, date, nullable — The last date this rule should be applied.
    - `weekdays` string[] — The weekdays this rule should be applied.
    - `time_from` string, nullable — This rule will be applied to bookings starting on or after this time.
    - `time_to` string, nullable — This rule will be applied to bookings starting before this time.
    - `duration` integer, nullable — This rule will be applied to bookings of this duration.
  - `meta` PaginationMeta, required — Counts and positional information for the current page of a list response. Use `current_page` and `last_page` to drive pagination UI, `total` for result counts, and `per_page` to confirm the page size the server actually applied (which may differ from the requested value when capped).
    - `from` integer, required — The item number from which this results set starts from
    - `to` integer, required — The item number from which this results set ends at
    - `total` integer, required — The total number of results
    - `current_page` integer, required — The current page number
    - `last_page` integer, required — The page number of the last result set
    - `per_page` integer, required — The number of results per page
    - `path` string, required — The path of this api request

## Other responses

- `401` — The user is unauthenticated
- `403` — The authenticated user does not have permission.
- `404` — The resource couldn't be found

---

[API](https://skmtc.dev/try/apis/trybe-api.md) · [All operations](https://skmtc.dev/try/apis/trybe-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/try/trybe-api/revisions/f37f92702da5/schema)
