A read-only key can pull the catalog but cannot sell, order, push, or refer. Every ordering and referral endpoint requires a
:write scope; a display-only key simply doesn’t carry one, so those actions are blocked at the API.How it works
Ask your VitaRelay admin for an API key scoped to read only — typically:products:read— the RUO catalog (GET /catalog) and product lookupsrx:read— the 503A catalog (GET /rx/catalog), if you want to display 503A products
What you can pull
Catalog responses never include price, cost, pharmacy identity, or margin — only the displayable product fields (name, category, description, images, dosage form, etc.). They’re safe to render publicly.
Ordering lab kits
Lab kits are at-home blood test kits. They need no prescription and ship straight to the patient. List them withGET /labs/catalog, then order one by sending its id as a product_id line to POST /orders for a patient (needs orders:write). The lab catalog shows the price your account pays, what each kit tests (biomarkers), and optional add-on panels (expansions). An account that orders only through a pharmacy sees no lab kits.
What a read-only key cannot do
- Place or modify orders (needs
orders:write) - Add patients or send intakes (needs
patients:write/intakes:write) - Refer patients to the IDN or push scripts (needs
rx:write)

