Skip to main content
PATCH
Update an option set

Authorizations

Authorization
string
header
required

A secret key from Print.App admin → Domains → Secret keys, sent as Authorization: Bearer sk_…. Server-side only.

Path Parameters

id
string
required

The option set id.

Body

application/json

What to change. The option set is republished to every product it stays on.

title
string

Its name in Print Options. Default: the config's title.

Required string length: 1 - 200
config
object

The option set itself: Print Options' JSON (version "2.0"), as in the option set JSON reference. Replaces the whole option set.

addProductIds
string[]

Products to publish it to as well. A product on another option set moves to this one.

Required array length: 1 - 50 elements
Pattern: ^(gid://shopify/Product/)?[0-9]{1,20}$
removeProductIds
string[]

Products to take it off: their pages go back to the theme's own add-to-cart.

Required array length: 1 - 50 elements
Pattern: ^(gid://shopify/Product/)?[0-9]{1,20}$
dryRun
boolean

Check everything and say what would change, writing nothing.

Response

OK.

What a create, update or delete did to each product, or would do (dryRun).

object
string
required
Allowed value: "option_set_change"
dryRun
boolean
required

true when nothing was written.

optionSetId
string | null
required

The option set. null for a dry-run create.

title
string | null
required
currency
string | null
required
created
boolean
required
deleted
boolean
required
changes
object[]
required
failed
integer
required

Products that did not change.

Required range: x >= 0
fields
PrintOptionsField · object[]
required

Its fields as connectors address them: give a field's source as a connector's source.

warnings
object[]
required

Things that will not stop it working but may not be meant.