{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-generation-create-request-schema.json",
  "title": "GenerationCreateRequest",
  "description": "Request schema for creating a new generation.",
  "x-generated": "2026-10-29",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/foto-damdafa-com-openapi.json#/components/schemas/GenerationCreateRequest",
  "properties": {
    "categoryId": {
      "$ref": "#/$defs/HomeDecorCategory",
      "description": "The category ID (interior, exterior, garden, floor, paint)"
    },
    "generationId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Generationid",
      "description": "Existing generation ID to retry in-place. Allowed only when retrying a failed generation."
    },
    "originalImageUrl": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Originalimageurl",
      "description": "URL of the uploaded image"
    },
    "originalAssetId": {
      "anyOf": [
        {
          "$ref": "#/$defs/MagicStyle"
        },
        {
          "$ref": "#/$defs/InteriorStyle"
        },
        {
          "$ref": "#/$defs/ExteriorStyle"
        },
        {
          "$ref": "#/$defs/GardenStyle"
        },
        {
          "$ref": "#/$defs/FloorStyle"
        },
        {
          "$ref": "#/$defs/ColorPalette"
        },
        {
          "type": "null"
        }
      ],
      "title": "Originalassetid",
      "description": "ID of the selected example asset"
    },
    "referenceImageUrls": {
      "items": {
        "type": "string"
      },
      "type": "array",
      "title": "Referenceimageurls",
      "description": "Reference image URL list"
    },
    "referenceAssetIds": {
      "items": {
        "anyOf": [
          {
            "$ref": "#/$defs/MagicStyle"
          },
          {
            "$ref": "#/$defs/InteriorStyle"
          },
          {
            "$ref": "#/$defs/ExteriorStyle"
          },
          {
            "$ref": "#/$defs/GardenStyle"
          },
          {
            "$ref": "#/$defs/FloorStyle"
          },
          {
            "$ref": "#/$defs/ColorPalette"
          }
        ]
      },
      "type": "array",
      "title": "Referenceassetids",
      "description": "Reference asset ID list"
    },
    "styleIds": {
      "items": {
        "anyOf": [
          {
            "$ref": "#/$defs/MagicStyle"
          },
          {
            "$ref": "#/$defs/InteriorStyle"
          },
          {
            "$ref": "#/$defs/ExteriorStyle"
          },
          {
            "$ref": "#/$defs/GardenStyle"
          },
          {
            "$ref": "#/$defs/FloorStyle"
          }
        ]
      },
      "type": "array",
      "title": "Styleids",
      "description": "Style ID list for the selected category."
    },
    "selectedSegments": {
      "anyOf": [
        {
          "items": {
            "type": "integer"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Selectedsegments",
      "description": "List of selected segment IDs"
    },
    "segmentationJobId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Segmentationjobid",
      "description": "The job ID of the segmentation"
    },
    "segmentationResultUrl": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Segmentationresulturl",
      "description": "Direct URL for segmentation result payload (preferred over segmentationJobId when provided)"
    },
    "paletteId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Paletteid",
      "description": "Palette ID. Ignored for garden category."
    },
    "prompt": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Prompt",
      "description": "User's AI instruction text"
    },
    "qualityTier": {
      "$ref": "#/$defs/QualityTier",
      "description": "Quality tier label: cheap|fast|best",
      "default": "cheap"
    }
  },
  "type": "object",
  "required": [
    "categoryId"
  ],
  "$defs": {
    "ColorPalette": {
      "type": "string",
      "enum": [
        "amethyst_dream",
        "antique_sage",
        "arctic_frost",
        "arctic_lavender",
        "autumn_harvest",
        "azure_mirage",
        "blush_and_brass",
        "bohemian_rhapsody",
        "candy_shop",
        "coastal_breeze",
        "cyberpunk_city",
        "desert_oasis",
        "desert_sand",
        "earthy_harmony",
        "earthy_hues",
        "emerald",
        "emerald_city",
        "fairy_tale",
        "forest",
        "forest_retreat",
        "french_country",
        "fuschia",
        "gothic_romance",
        "industrial_chic",
        "jewel_tones",
        "lavender_fields",
        "lilac_love",
        "mid_century_modern",
        "midnight_velvet",
        "millennial_gray",
        "minimalist_white",
        "monochrome_noir",
        "moody_blues",
        "neon",
        "ocean_depths",
        "ocean_mist",
        "pastel",
        "pastel_dream",
        "peach",
        "retro_diner",
        "royal_elegance",
        "rustic_cabin",
        "safari_adventure",
        "sakura_bloom",
        "scandinavian_minimal",
        "space_odyssey",
        "spring_awakening",
        "steampunk_workshop",
        "summer_fiesta",
        "sunset_boulevard",
        "terracotta",
        "tropical_paradise",
        "turquoise_lagoon",
        "tuscan_sun",
        "twilight_blues",
        "urban_jungle",
        "velvet_dusk",
        "vintage_charm",
        "warm_neutrals",
        "whimsical_wish",
        "winter_wonderland",
        "zen_garden",
        "paint-suggestion-1",
        "paint-suggestion-2",
        "paint-suggestion-3",
        "paint-suggestion-4",
        "paint-suggestion-5",
        "paint-suggestion-6",
        "paint-suggestion-7",
        "paint-suggestion-8",
        "paint-suggestion-9",
        "paint-suggestion-10"
      ],
      "title": "ColorPalette"
    },
    "ExteriorStyle": {
      "type": "string",
      "enum": [
        "art-deco",
        "brutalist",
        "chinese",
        "cottage",
        "farm-house",
        "french",
        "gothic",
        "italianate",
        "japanese",
        "mediterranean",
        "midcentury",
        "middle-eastern",
        "minimalistic",
        "modern",
        "moroccan",
        "ski-chalet",
        "spanish",
        "exterior-suggestion-1",
        "exterior-suggestion-10"
      ],
      "title": "ExteriorStyle"
    },
    "FloorStyle": {
      "type": "string",
      "enum": [
        "carpet",
        "epoxy",
        "hard-wood",
        "laminate",
        "marble",
        "natural-stone",
        "persian-rug",
        "polished-concrete",
        "scandinavian",
        "solid-wood",
        "terrazzo",
        "tile",
        "tile-2",
        "vinyl-plank",
        "floor-suggestion-1",
        "floor-suggestion-2",
        "floor-suggestion-3",
        "floor-suggestion-4",
        "floor-suggestion-5",
        "floor-suggestion-6",
        "floor-suggestion-7"
      ],
      "title": "FloorStyle"
    },
    "GardenStyle": {
      "type": "string",
      "enum": [
        "cottage",
        "english",
        "french-formal",
        "japanese",
        "mediterranean",
        "minimalist",
        "xeriscape",
        "garden-suggestion-1",
        "garden-suggestion-2",
        "garden-suggestion-3",
        "garden-suggestion-4",
        "garden-suggestion-5",
        "garden-suggestion-6",
        "garden-suggestion-7",
        "garden-suggestion-8",
        "garden-suggestion-9",
        "garden-suggestion-10"
      ],
      "title": "GardenStyle"
    },
    "HomeDecorCategory": {
      "type": "string",
      "enum": [
        "interior",
        "exterior",
        "garden",
        "floor",
        "paint"
      ],
      "title": "HomeDecorCategory"
    },
    "InteriorStyle": {
      "type": "string",
      "enum": [
        "80s-style",
        "ancient-egyptian",
        "baroque",
        "biophilic",
        "bohemian",
        "cartoon",
        "chocolate",
        "christmas",
        "coastal",
        "cottagecore",
        "cozy",
        "creepy",
        "cyberpunk",
        "gamer",
        "gothic",
        "japandi",
        "luxury",
        "medieval",
        "mediterranean",
        "minimalistic",
        "modern",
        "rainbow",
        "rustic",
        "ski-chalet",
        "soho-style",
        "tropical",
        "vintage",
        "wood",
        "interior-suggestion-1",
        "interior-suggestion-2",
        "interior-suggestion-3",
        "interior-suggestion-4",
        "interior-suggestion-5",
        "interior-suggestion-6",
        "interior-suggestion-7",
        "interior-suggestion-8"
      ],
      "title": "InteriorStyle"
    },
    "MagicStyle": {
      "type": "string",
      "enum": [
        "surprise_me"
      ],
      "title": "MagicStyle"
    },
    "QualityTier": {
      "type": "string",
      "enum": [
        "cheap",
        "fast",
        "best"
      ],
      "title": "QualityTier"
    }
  }
}