Skip to content

madoo.image-text-layers/v1

Madoo professional still-image text layers — One to 32 stable-ID text layers with deterministic z-order and optional complete style snapshots.

Reference madoo.image-text-layers/v1
Schema id urn:madoo:schema:image-text-layers:v1
Version 1.0.0
Served at GET /api/v1/json-schemas/madoo.image-text-layers/v1 · MCP get_json_schema
  • Read by: image/text_overlay → layers
  • Saved in the parameter: image/text_overlay → text_layers
Field Type Required Rules Description
schema "madoo.image-text-layers/v1" yes
layers array of objects yes min items 1; max items 32
layers[].id string yes min length 1; max length 80
layers[].text string yes min length 1; max length 4000
layers[].zIndex integer yes ≥ -1000; ≤ 1000
layers[].typography object or null
madoo.image-text-layers/v1 (JSON Schema)
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "urn:madoo:schema:image-text-layers:v1",
"title": "Madoo professional still-image text layers",
"type": "object",
"additionalProperties": false,
"required": [
"schema",
"layers"
],
"properties": {
"schema": {
"const": "madoo.image-text-layers/v1"
},
"layers": {
"type": "array",
"minItems": 1,
"maxItems": 32,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"id",
"text",
"zIndex"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"text": {
"type": "string",
"minLength": 1,
"maxLength": 4000
},
"zIndex": {
"type": "integer",
"minimum": -1000,
"maximum": 1000
},
"typography": {
"anyOf": [
{
"$ref": "#/$defs/typography"
},
{
"type": "null"
}
]
}
}
}
}
},
"$defs": {
"typography": {
"type": "object",
"additionalProperties": false,
"required": [
"schema",
"preset",
"font",
"size",
"text",
"layout",
"outline",
"shadow",
"background"
],
"properties": {
"schema": {
"const": "madoo.image-typography/v1"
},
"preset": {
"enum": [
"minimal",
"retail_price",
"lower_third_still",
"quote_card",
"task_card",
"custom"
]
},
"font": {
"$ref": "#/$defs/fontReference"
},
"size": {
"type": "object"
},
"text": {
"type": "object"
},
"layout": {
"type": "object"
},
"outline": {
"type": "object"
},
"shadow": {
"type": "object"
},
"background": {
"type": "object"
}
}
},
"fontReference": {
"type": "object",
"required": [
"schema",
"familyGuid",
"versionGuid",
"family",
"variant",
"weight",
"style",
"fingerprint"
],
"properties": {
"schema": {
"const": "madoo.font-reference/v1"
},
"familyGuid": {
"type": "string",
"format": "uuid"
},
"versionGuid": {
"type": "string",
"format": "uuid"
},
"family": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"variant": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"weight": {
"type": "integer",
"minimum": 100,
"maximum": 900,
"multipleOf": 100
},
"style": {
"enum": [
"normal",
"italic"
]
},
"fingerprint": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
}
}
}
}
}