Listing Requests
Pharmacies can ask a shop to list a product they already carry. The Management API exposes the organisation inbox for those requests: list them, inspect the submitted fields, and record an accept or decline decision. Accept and decline record the decision only. They do not create catalog rows (Product, SKU, ShopProduct) and they do not push anything to Shopify or
WooCommerce.
All endpoints are scoped to the organisation that owns the API key. UIDs that
belong to another organisation are treated as not found.
Configuration of which fields a pharmacy must supply is done in the admin
interface, not on this API.
Permissions
Listing-request endpoints are gated by two permissions:listing_request:read— required for all read (GET) endpoints.listing_request:write— required to accept or decline a request.
listing_request:write is not automatically granted
listing_request:read; add both if you need to read and write. Contact your
RxScale account manager to adjust permissions.
All requests authenticate with the X-API-Key header. See
Authentication for details.
Request shape
There is no top-levelpzn field. PZN is an ordinary extras key: a shop must
configure a pzn extras requirement before a pharmacy can send one, and the
value then appears under extras.pzn in the response.
price_indication is an integer in minor units (cents), matching pharmacy
SKU prices.
Attribute (
attr.*) and PZN query filters are not available on the
Management API in v1. They are admin-only. Filter here with shop_uid,
pharmacy_uid, and status only.List Listing Requests
listing_request:read
integer
default:"0"
Page number (0-indexed)
integer
default:"50"
Number of listing requests per page
string
Filter by shop UID. Unknown shops for this organisation return 404.
string
Filter by pharmacy UID
string
Filter by status. One of
PENDING, ACCEPTED, DECLINED, or WITHDRAWN.Example Request
Response
Get a Listing Request
listing_request:read
string
required
Listing request UID
Example Request
Response
404.
Accept a Listing Request
listing_request:write
string
required
Listing request UID
string
Optional note stored with the decision
Example Request
PENDING requests can be accepted. A request that is already decided
returns 400.
Decline a Listing Request
listing_request:write
string
required
Listing request UID
string
Optional note stored with the decision
Example Request
PENDING requests can be declined. A request that is already decided
returns 400.