changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "additionalProperties": {},
+ "properties": {
+ "nextStep": {
+ "type": "string"
+ },
+ "products": {
+ "description": "Matching public products, in catalog order.",
+ "items": {
+ "additionalProperties": {},
+ "properties": {
+ "artwork": {
+ "additionalProperties": {},
+ "description": "Which InkFE artwork and checkout actions this product supports.",
+ "properties": {
+ "checkout": {
+ "enum": [
+ "shopify_hosted",
+ "unavailable"
+ ],
+ "type": "string"
+ },
+ "designAvailable": {
+ "description": "Whether design tools can be used for this product here.",
+ "type": "boolean"
+ },
+ "mode": {
+ "enum": [
+ "business_card_template",
+ "catalog_only"
+ ],
+ "type": "string"
+ },
+ "nextStep": {
+ "type": "string"
+ },
+ "templateCompatible": {
+ "description": "True only for the configured business-card product the template journey supports.",
+ "type": "boolean"
+ },
+ "unsupportedActions": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "templateCompatible",
+ "mode",
+ "designAvailable",
+ "checkout",
+ "unsupportedActions",
+ "nextStep"
+ ],
+ "type": "object"
+ },
+ "detailStatus": {
+ "description": "unavailable means the product detail read failed.",
+ "enum": [
+ "available",
+ "unavailable"
+ ],
+ "type": "string"
+ },
+ "handle": {
+ "description": "Pass this to get_product.",
+ "type": "string"
+ },
+ "image": {
+ "anyOf": [
+ {
+ "additionalProperties": {},
+ "properties": {
+ "altText": {
+ "type": "string"
+ },
+ "url": {
+ "description": "Public Shopify CDN image URL.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "url",
+ "altText"
+ ],
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Example product image, not a customer proof."
+ },
+ "options": {
+ "items": {
+ "additionalProperties": {},
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "values": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "name",
+ "values"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "priceRange": {
+ "additionalProperties": {},
+ "description": "Pack price range; catalog prices are not a quote.",
+ "properties": {
+ "currency": {
+ "type": "string"
+ },
+ "max": {
+ "type": "string"
+ },
+ "min": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "min",
+ "max",
+ "currency"
+ ],
+ "type": "object"
+ },
+ "productType": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "summary": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "title": {
+ "type": "string"
+ },
+ "url": {
+ "description": "Public product page URL.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "handle",
+ "title",
+ "productType",
+ "priceRange",
+ "options",
+ "url",
+ "detailStatus",
+ "summary",
+ "image",
+ "artwork"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "source": {
+ "additionalProperties": {},
+ "description": "Where the catalog data comes from and how fresh it is.",
+ "properties": {
+ "authority": {
+ "type": "string"
+ },
+ "details": {
+ "type": "string"
+ },
+ "discoveryRevalidateSeconds": {
+ "type": "number"
+ },
+ "pricing": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "authority",
+ "discoveryRevalidateSeconds",
+ "details",
+ "pricing"
+ ],
+ "type": "object"
+ }
+ },
+ "required": [
+ "products",
+ "source",
+ "nextStep"
+ ],
+ "type": "object"
+}