Skip to main content
POST
Spree Admin SDK

Authorizations

x-spree-api-key
string
header
required

Secret API key for admin access

Authorization
string
header
required

JWT token for admin user authentication

Headers

x-spree-api-key
string
required
Authorization
string
required

Body

application/json
name
string
required
Example:

"EU wholesale"

description
string | null
starts_at
string | null
Example:

"2026-06-01T00:00:00Z"

ends_at
string | null
Example:

"2026-09-01T00:00:00Z"

match_policy
enum<string>
Available options:
all,
any
Example:

"all"

position
integer
Example:

1

product_ids
string[]

Prefixed product ids to seed the list with.

Example:
rules
object[]

STI-typed price rules to attach on create. Existing rules on the same payload via PATCH reconcile by id.

prices
object[]

Server-to-server alternative to product_ids: ship the exact per-variant prices the list should contain. Each row upserts on the unique key (variant_id, currency, price_list_id). Mix-and-match with product_ids is supported but typically unnecessary — prices alone tells the server which variants belong to the list and what the override amount is.

Response

price list created (server-to-server — rules + prices, no product_ids)

id
string
required
name
string
required
description
string | null
required
status
string
required
position
number
required
match_policy
string
required
starts_at
string | null
required
ends_at
string | null
required
deleted_at
string | null
required
created_at
string
required
updated_at
string
required
currently_active
boolean
required
products_count
number
required
prices_count
number
required
product_ids
string[]
required
price_rules
object[]