{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/chemaxon/json-schema/chemaxon-hit-display-request-schema.json",
  "title": "HitDisplayRequest",
  "description": "pair of query and target structure with the requested hitdisplay settings",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/chemaxon-color-substructure-hits-api-openapi.yml#/components/schemas/HitDisplayRequest",
  "properties": {
    "displaySettings": {
      "$ref": "#/$defs/HitDisplaySettings"
    },
    "moleculeType": {
      "type": "string",
      "description": "the molecule type that determines the search logic",
      "minLength": 1
    },
    "outputFormat": {
      "type": "string",
      "default": "mrv",
      "description": "The output format and options."
    },
    "queryFormat": {
      "type": "string",
      "description": "the optional import format and opts for query structure"
    },
    "queryStructure": {
      "type": "string",
      "description": "the query structure to find in target",
      "minLength": 1
    },
    "targetFormat": {
      "type": "string",
      "description": "the optional import format and options of target structure"
    },
    "targetStructure": {
      "type": "string",
      "description": "the target structure we are checking the query in",
      "minLength": 1
    },
    "transformations": {
      "$ref": "#/$defs/QueryTransformations"
    }
  },
  "required": [
    "moleculeType",
    "queryStructure",
    "targetStructure"
  ],
  "$defs": {
    "HitColor": {
      "default": "blue",
      "description": "Color of hit in molecule. Default: \"blue\".\n\nJson object to describe a color. All ways supported by java.awt.Color is possible.\nPreferred hexa String like \"0xff0000\" for RED. Or an int array like [0,255,0] for GREEN.\nOr an object: {\"red\":0, \"green\":0, \"blue\":255 } for blue.\nEven compressed integers where the bits 16-23 are red, 8-15 are green and 0-7 are blue are parsed.\nYou can use one of the following stored names: \"black\", \"blue\", \"cyan\", \"dark_gray\", \"gray\", \"green\", \"light_gray\", \"magenta\", \"orange, \"pink\", \"red\", \"white\", \"yellow\".\nOr color names that were set to JVM as system property.\n"
    },
    "HitDisplaySettings": {
      "description": "The setup of how to visualize query in target",
      "properties": {
        "alignmentMode": {
          "type": "string",
          "default": "OFF",
          "description": "Describes the mode of aligning the query and the target. Default: OFF\nValues: \n* OFF: the structure is displayed with the original coordinates\n* ROTATE: the structure is rotated according to the substructure\n* PARTIAL_CLEAN: The substructure part of the target will get the exact coordinates of the query, and new coordinates will be generated for the remainder of the structure.",
          "enum": [
            "OFF",
            "ROTATE",
            "PARTIAL_CLEAN"
          ]
        },
        "hitColor": {
          "$ref": "#/$defs/HitColor"
        },
        "nonHitColor": {
          "$ref": "#/$defs/NonHitColor"
        }
      }
    },
    "NonHitColor": {
      "default": "black",
      "description": "Color of non-hit in molecule. Default: \"black\".\n\nThe same options are supported as in case of \"hitColor\".\n"
    },
    "QueryTransformations": {
      "description": "Collection of settable query transformations",
      "properties": {
        "ignoreCharge": {
          "type": "boolean",
          "default": false,
          "description": "Ignore charge comparison during querying. Default: false"
        },
        "ignoreIsotope": {
          "type": "boolean",
          "default": false,
          "description": "Ignore isotope comparison during querying. Default: false"
        },
        "stereoSearchIgnoreTetrahedralStereo": {
          "type": "boolean",
          "default": false,
          "description": "Ignore tetrahedral stereo comparison during querying. Default: false"
        },
        "stereoSearchOnMarkedDoubleBondOnly": {
          "type": "boolean",
          "default": false,
          "description": "Only execute stereo search on double bonds marked for querying. Default: false"
        }
      }
    }
  }
}