changedInput schema / properties / operations / items / anyOf
Previous value: -[
- {
- "additionalProperties": false,
- "properties": {
- "title": {
- "description": "The new title for the design",
- "type": "string"
- },
- "type": {
- "const": "update_title",
- "type": "string"
- }
- },
- "required": [
- "type",
- "title"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "element_id": {
- "description": "The ID of the element to replace the text of.",
- "type": "string"
- },
- "text": {
- "description": "The new text to replace the existing text with.",
- "type": "string"
- },
- "type": {
- "const": "replace_text",
- "type": "string"
- }
- },
- "required": [
- "type",
- "element_id",
- "text"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "alt_text": {
- "description": "The alternate text of the new asset",
- "type": "string"
- },
- "asset_id": {
- "description": "ID of the asset",
- "maxLength": 50,
- "minLength": 1,
- "pattern": "^[a-zA-Z0-9_-]+$",
- "type": "string"
- },
- "asset_type": {
- "description": "The type of the new asset",
- "enum": [
- "image",
- "video"
- ],
- "type": "string"
- },
- "element_id": {
- "description": "The ID of the element to replace the text of.",
- "type": "string"
- },
- "type": {
- "const": "update_fill",
- "type": "string"
- }
- },
- "required": [
- "type",
- "element_id",
- "asset_type",
- "asset_id",
- "alt_text"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "alt_text": {
- "description": "The alternate text of the asset",
- "type": "string"
- },
- "asset_id": {
- "description": "ID of the asset",
- "maxLength": 50,
- "minLength": 1,
- "pattern": "^[a-zA-Z0-9_-]+$",
- "type": "string"
- },
- "asset_type": {
- "description": "The type of the asset to insert",
- "enum": [
- "image",
- "video"
- ],
- "type": "string"
- },
- "height": {
- "description": "Height in pixels. Must be > 0. If not specified, a default height will be used",
- "exclusiveMinimum": 0,
- "type": "number"
- },
- "left": {
- "description": "Left position in pixels. If not specified, a default position will be used",
- "type": "number"
- },
- "opacity": {
- "description": "Opacity value. Range: [0, 1], default: 1",
- "maximum": 1,
- "minimum": 0,
- "type": "number"
- },
- "page_id": {
- "description": "The ID of the page to insert the fill into",
- "type": "string"
- },
- "rotation": {
- "description": "Rotation in degrees. Range: [-180.0, 180.0], default: 0",
- "maximum": 180,
- "minimum": -180,
- "type": "number"
- },
- "top": {
- "description": "Top position in pixels. If not specified, a default position will be used",
- "type": "number"
- },
- "type": {
- "const": "insert_fill",
- "type": "string"
- },
- "width": {
- "description": "Width in pixels. Must be > 0. If not specified, a default width will be used",
- "exclusiveMinimum": 0,
- "type": "number"
- }
- },
- "required": [
- "type",
- "page_id",
- "asset_type",
- "asset_id",
- "alt_text"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "element_id": {
- "description": "The ID of the element to delete.",
- "type": "string"
- },
- "type": {
- "const": "delete_element",
- "type": "string"
- }
- },
- "required": [
- "type",
- "element_id"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "element_id": {
- "description": "The ID of the element to find and replace the text in.",
- "type": "string"
- },
- "find_text": {
- "description": "The text that is needs to be found to be replaced.",
- "type": "string"
- },
- "replace_text": {
- "description": "The new text to replace the existing text with.",
- "type": "string"
- },
- "type": {
- "const": "find_and_replace_text",
- "type": "string"
- }
- },
- "required": [
- "type",
- "element_id",
- "find_text",
- "replace_text"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "element_id": {
- "description": "The ID of the element to reposition.",
- "type": "string"
- },
- "left": {
- "description": "Left position in pixels (relative to page).",
- "type": "number"
- },
- "top": {
- "description": "Top position in pixels (relative to page).",
- "type": "number"
- },
- "type": {
- "const": "position_element",
- "type": "string"
- }
- },
- "required": [
- "type",
- "element_id",
- "top",
- "left"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Resizes an existing element (image, video, text, etc.) to a new size on the page. IMPORTANT: For TEXT elements, only specify width (height is auto-calculated). For IMAGE/VIDEO elements: if preserve_aspect_ratio=true, specify ONLY width OR height (the other is calculated); if preserve_aspect_ratio=false, specify both width and height.",
- "properties": {
- "element_id": {
- "description": "The ID of the element to resize.",
- "type": "string"
- },
- "height": {
- "description": "The height in pixels of the element. For TEXT elements: do NOT provide height - it will be automatically calculated. For other elements: if preserve_aspect_ratio is true, provide either width OR height (not both) - the other dimension will be calculated. If preserve_aspect_ratio is false, provide both width and height.",
- "type": "number"
- },
- "preserve_aspect_ratio": {
- "default": false,
- "description": "Whether to preserve the aspect ratio of the element. If true, provide only ONE dimension (width or height) - the other will be calculated automatically. If false, provide both dimensions.",
- "type": "boolean"
- },
- "type": {
- "const": "resize_element",
- "type": "string"
- },
- "width": {
- "description": "The width in pixels of the element. Required unless preserve_aspect_ratio is true and height is provided.",
- "type": "number"
- }
- },
- "required": [
- "type",
- "element_id"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "element_id": {
- "description": "The ID of the text element to format.",
- "type": "string"
- },
- "formatting": {
- "additionalProperties": false,
- "description": "The formatting options to apply to the text",
- "properties": {
- "color": {
- "description": "Text color in hex format",
- "pattern": "^#[0-9A-Fa-f]{6}$",
- "type": "string"
- },
- "decoration": {
- "description": "Text decoration: none or underline",
- "enum": [
- "none",
- "underline"
- ],
- "type": "string"
- },
- "font_size": {
- "description": "The size of text in pixels. Must be between 1 and 800",
- "maximum": 800,
- "minimum": 1,
- "type": "integer"
- },
- "font_style": {
- "description": "Font style: normal or italic",
- "enum": [
- "normal",
- "italic"
- ],
- "type": "string"
- },
- "font_weight": {
- "description": "Font weight: normal or bold",
- "enum": [
- "normal",
- "bold"
- ],
- "type": "string"
- },
- "line_height": {
- "description": "Line height multiplier. Range: [0.5, 2.5]",
- "maximum": 2.5,
- "minimum": 0.5,
- "type": "number"
- },
- "link": {
- "anyOf": [
- {
- "const": "",
- "type": "string"
- },
- {
- "format": "uri",
- "type": "string"
- }
- ],
- "description": "URL string. Setting to empty string removes any existing link"
- },
- "list_level": {
- "description": "List nesting level. 0 removes list formatting (not a list item). 1 is the outermost level, with higher values (e.g., 2, 3, etc.) increasing the nesting depth.",
- "minimum": 0,
- "type": "integer"
- },
- "list_marker": {
- "description": "List marker style (only applies when list_level > 0): none, disc, circle, square, decimal, lower-alpha, or lower-roman",
- "enum": [
- "none",
- "disc",
- "circle",
- "square",
- "decimal",
- "lower-alpha",
- "lower-roman"
- ],
- "type": "string"
- },
- "strikethrough": {
- "description": "Strikethrough style: none or strikethrough",
- "enum": [
- "none",
- "strikethrough"
- ],
- "type": "string"
- },
- "text_align": {
- "description": "Text alignment: start, center, or end",
- "enum": [
- "start",
- "center",
- "end"
- ],
- "type": "string"
- }
- },
- "type": "object"
- },
- "type": {
- "const": "format_text",
- "type": "string"
- }
- },
- "required": [
- "type",
- "element_id",
- "formatting"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Connects or removes an autofill field label on a text or image element. This is only supported on fixed-page designs.",
- "properties": {
- "autofill_field_label": {
- "description": "The autofill field label to connect to the element. Omit this property to remove an existing autofill field mapping.",
- "type": "string"
- },
- "element_id": {
- "description": "The ID of the text or image element to connect to an autofill field.",
- "type": "string"
- },
- "type": {
- "const": "update_autofill_field",
- "type": "string"
- }
- },
- "required": [
- "type",
- "element_id"
- ],
- "type": "object"
- }
-]New value: +[
+ {
+ "additionalProperties": false,
+ "properties": {
+ "title": {
+ "description": "The new title for the design",
+ "type": "string"
+ },
+ "type": {
+ "const": "update_title",
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "title"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "element_id": {
+ "description": "The ID of the element to replace the text of.",
+ "type": "string"
+ },
+ "text": {
+ "description": "The new text to replace the existing text with.",
+ "type": "string"
+ },
+ "type": {
+ "const": "replace_text",
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "element_id",
+ "text"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "alt_text": {
+ "description": "The alternate text of the new asset",
+ "type": "string"
+ },
+ "asset_id": {
+ "description": "ID of the asset",
+ "maxLength": 50,
+ "minLength": 1,
+ "pattern": "^[a-zA-Z0-9_-]+$",
+ "type": "string"
+ },
+ "asset_type": {
+ "description": "The type of the new asset",
+ "enum": [
+ "image",
+ "video"
+ ],
+ "type": "string"
+ },
+ "element_id": {
+ "description": "The ID of the image or video element whose fill should be replaced.",
+ "type": "string"
+ },
+ "type": {
+ "const": "update_fill",
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "element_id",
+ "asset_type",
+ "asset_id",
+ "alt_text"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "alt_text": {
+ "description": "The alternate text of the asset",
+ "type": "string"
+ },
+ "asset_id": {
+ "description": "ID of the asset",
+ "maxLength": 50,
+ "minLength": 1,
+ "pattern": "^[a-zA-Z0-9_-]+$",
+ "type": "string"
+ },
+ "asset_type": {
+ "description": "The type of the asset to insert",
+ "enum": [
+ "image",
+ "video"
+ ],
+ "type": "string"
+ },
+ "height": {
+ "description": "Height in pixels. Must be > 0. If not specified, a default height will be used",
+ "exclusiveMinimum": 0,
+ "type": "number"
+ },
+ "left": {
+ "description": "Left position in pixels. If not specified, a default position will be used",
+ "type": "number"
+ },
+ "opacity": {
+ "description": "Opacity value. Range: [0, 1], default: 1",
+ "maximum": 1,
+ "minimum": 0,
+ "type": "number"
+ },
+ "page_id": {
+ "description": "The ID of the page to insert the fill into",
+ "type": "string"
+ },
+ "rotation": {
+ "description": "Rotation in degrees. Range: [-180.0, 180.0], default: 0",
+ "maximum": 180,
+ "minimum": -180,
+ "type": "number"
+ },
+ "top": {
+ "description": "Top position in pixels. If not specified, a default position will be used",
+ "type": "number"
+ },
+ "type": {
+ "const": "insert_fill",
+ "type": "string"
+ },
+ "width": {
+ "description": "Width in pixels. Must be > 0. If not specified, a default width will be used",
+ "exclusiveMinimum": 0,
+ "type": "number"
+ }
+ },
+ "required": [
+ "type",
+ "page_id",
+ "asset_type",
+ "asset_id",
+ "alt_text"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "element_id": {
+ "description": "The ID of the element to delete.",
+ "type": "string"
+ },
+ "type": {
+ "const": "delete_element",
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "element_id"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "element_id": {
+ "description": "The ID of the element to find and replace the text in.",
+ "type": "string"
+ },
+ "find_text": {
+ "description": "The text that is needs to be found to be replaced.",
+ "type": "string"
+ },
+ "replace_text": {
+ "description": "The new text to replace the existing text with.",
+ "type": "string"
+ },
+ "type": {
+ "const": "find_and_replace_text",
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "element_id",
+ "find_text",
+ "replace_text"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "element_id": {
+ "description": "The ID of the element to reposition.",
+ "type": "string"
+ },
+ "left": {
+ "description": "Left position in pixels (relative to page).",
+ "type": "number"
+ },
+ "top": {
+ "description": "Top position in pixels (relative to page).",
+ "type": "number"
+ },
+ "type": {
+ "const": "position_element",
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "element_id",
+ "top",
+ "left"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Resizes an existing element (image, video, text, etc.) to a new size on the page. IMPORTANT: For TEXT elements, only specify width (height is auto-calculated). For IMAGE/VIDEO elements: if preserve_aspect_ratio=true, specify ONLY width OR height (the other is calculated); if preserve_aspect_ratio=false, specify both width and height.",
+ "properties": {
+ "element_id": {
+ "description": "The ID of the element to resize.",
+ "type": "string"
+ },
+ "height": {
+ "description": "The height in pixels of the element. For TEXT elements: do NOT provide height - it will be automatically calculated. For other elements: if preserve_aspect_ratio is true, provide either width OR height (not both) - the other dimension will be calculated. If preserve_aspect_ratio is false, provide both width and height.",
+ "type": "number"
+ },
+ "preserve_aspect_ratio": {
+ "default": false,
+ "description": "Whether to preserve the aspect ratio of the element. If true, provide only ONE dimension (width or height) - the other will be calculated automatically. If false, provide both dimensions.",
+ "type": "boolean"
+ },
+ "type": {
+ "const": "resize_element",
+ "type": "string"
+ },
+ "width": {
+ "description": "The width in pixels of the element. Required unless preserve_aspect_ratio is true and height is provided.",
+ "type": "number"
+ }
+ },
+ "required": [
+ "type",
+ "element_id"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "element_id": {
+ "description": "The ID of the text element to format.",
+ "type": "string"
+ },
+ "formatting": {
+ "additionalProperties": false,
+ "description": "The formatting options to apply to the text",
+ "properties": {
+ "color": {
+ "description": "Text color in hex format",
+ "pattern": "^#[0-9A-Fa-f]{6}$",
+ "type": "string"
+ },
+ "decoration": {
+ "description": "Text decoration: none or underline",
+ "enum": [
+ "none",
+ "underline"
+ ],
+ "type": "string"
+ },
+ "font_size": {
+ "description": "The size of text in pixels. Must be between 1 and 800",
+ "maximum": 800,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "font_style": {
+ "description": "Font style: normal or italic",
+ "enum": [
+ "normal",
+ "italic"
+ ],
+ "type": "string"
+ },
+ "font_weight": {
+ "description": "Font weight: normal or bold",
+ "enum": [
+ "normal",
+ "bold"
+ ],
+ "type": "string"
+ },
+ "line_height": {
+ "description": "Line height multiplier. Range: [0.5, 2.5]",
+ "maximum": 2.5,
+ "minimum": 0.5,
+ "type": "number"
+ },
+ "link": {
+ "anyOf": [
+ {
+ "const": "",
+ "type": "string"
+ },
+ {
+ "format": "uri",
+ "type": "string"
+ }
+ ],
+ "description": "URL string. Setting to empty string removes any existing link"
+ },
+ "list_level": {
+ "description": "List nesting level. 0 removes list formatting (not a list item). 1 is the outermost level, with higher values (e.g., 2, 3, etc.) increasing the nesting depth.",
+ "minimum": 0,
+ "type": "integer"
+ },
+ "list_marker": {
+ "description": "List marker style (only applies when list_level > 0): none, disc, circle, square, decimal, lower-alpha, or lower-roman",
+ "enum": [
+ "none",
+ "disc",
+ "circle",
+ "square",
+ "decimal",
+ "lower-alpha",
+ "lower-roman"
+ ],
+ "type": "string"
+ },
+ "strikethrough": {
+ "description": "Strikethrough style: none or strikethrough",
+ "enum": [
+ "none",
+ "strikethrough"
+ ],
+ "type": "string"
+ },
+ "text_align": {
+ "description": "Text alignment: start, center, or end",
+ "enum": [
+ "start",
+ "center",
+ "end"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "type": {
+ "const": "format_text",
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "element_id",
+ "formatting"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Connects or removes an autofill field label on a text or image element. This is only supported on fixed-page designs.",
+ "properties": {
+ "autofill_field_label": {
+ "description": "The autofill field label to connect to the element. Omit this property to remove an existing autofill field mapping.",
+ "type": "string"
+ },
+ "element_id": {
+ "description": "The ID of the text or image element to connect to an autofill field.",
+ "type": "string"
+ },
+ "type": {
+ "const": "update_autofill_field",
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "element_id"
+ ],
+ "type": "object"
+ }
+]