# List price schedules

Endpoint: GET /priceschedules
Version: 1.0.457.36910
Security: OAuth2

## Security:

  - `OAuth2` (unknown)
    oauth2 scopes: FullAccess, PriceScheduleAdmin, PriceScheduleReader

## Query parameters:

  - `search` (string)
    Word or phrase to search for.

  - `searchOn` (array)
    Comma-delimited list of fields to search on.

  - `sortBy` (array)
    Comma-delimited list of fields to sort by.

  - `page` (integer)
    Page of results to return. When paginating through many items (> page 30), we recommend the "Last ID" method, as outlined in the Advanced Querying documentation.

  - `pageSize` (integer)
    Number of results to return per page.

  - `filters` (object)
    An object or dictionary representing key/value pairs to apply as filters. Valid keys are top-level properties of the returned model or 'xp.???'

## Response 200 fields (application/json):

  - `Items` (array)

  - `Items.PriceBreaks` (array)

  - `Items.PriceBreaks.Quantity` (integer)
    Most commonly 1, except when offering tiered/bulk pricing.

  - `Items.PriceBreaks.Price` (number)
    Price per unit.

  - `Items.PriceBreaks.SalePrice` (number)
    Sale Price per unit. If the current date/time is within the PriceSchedule SaleStart and SaleEnd, this SalePrice will be used.

  - `Items.PriceBreaks.SubscriptionPrice` (number)
    Subscription Price per unit. If set, this price is used when a subscription order is created.

  - `Items.PriceBreaks.BundlePrice` (number)
    Bundle Price per unit. If set, this price is used when an item being added to an order is part of a bundle.

  - `Items.OwnerID` (string)
    ID of the organization that owns the PriceSchedule. Only the marketplace owner can override the OwnerID on create.

  - `Items.ID` (string)

  - `Items.Name` (string)

  - `Items.ApplyTax` (boolean)
    For reference only for calculating tax, does not influence any OrderCloud behavior.

  - `Items.ApplyShipping` (boolean)
    For reference only for calculating shipping cost, does not influence any OrderCloud behavior.

  - `Items.MinQuantity` (integer)
    The minimum line item Quantity when UseCumulativeQuantity is false.

  - `Items.MaxQuantity` (integer)
    The maximum line item Quantity when UseCumulativeQuantity is false.

  - `Items.UseCumulativeQuantity` (boolean)
    If true, line item quantities will be aggregated by productID when determining which price break applies, and when Min/Max quantities are met. Else, each line item is treated separately.

  - `Items.RestrictedQuantity` (boolean)
    If true, this product can only be ordered in quantities that exactly match one of the price breaks on this schedule.

  - `Items.Currency` (string)
    We recommend using ISO-4217 currency codes for compatibility with tax and payment processors.

  - `Items.SaleStart` (string)
    Starting date/time for PriceBreak.SalePrice to be used as the price for the LineItem. Requires that the PriceBreak.SalePrice value is set.

  - `Items.SaleEnd` (string)
    Ending date/time for PriceBreak.SalePrice to be used as the price for the LineItem. Requires that the PriceBreak.SalePrice value is set.

  - `Items.IsOnSale` (boolean)
    True when at least one PriceBreak has a SalePrice defined, and the current time is between the SaleStart and SaleEnd date.

  - `Items.xp` (object)

  - `Meta` (object)

  - `Meta.Page` (integer)

  - `Meta.PageSize` (integer)

  - `Meta.TotalCount` (integer)

  - `Meta.TotalPages` (integer)

  - `Meta.ItemRange` (array)

  - `Meta.NextPageKey` (string)

## Response 4XX:

  - `4XX` (unknown)
    Expected errors range from 400-409. Anything in the 5XX range indicates a server issue and should be reported to support.

## Response 4XX fields (application/json):

  - `StatusCode` (integer)
    Example: 404

  - `ErrorCode` (string)
    Example: NotFoundError

  - `Message` (string)
    Example: Object not found

  - `Data` (object)
    Example: {"ObjectType":"","ObjectID":""}

