{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/microsoft.graph.printJobConfiguration",
  "title": "printJobConfiguration",
  "required": [
    "@odata.type"
  ],
  "type": "object",
  "properties": {
    "collate": {
      "type": "boolean",
      "description": "Whether the printer should collate pages wehen printing multiple copies of a multi-page document.",
      "nullable": true
    },
    "colorMode": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/microsoft.graph.printColorMode"
        },
        {
          "type": "object",
          "nullable": true
        }
      ],
      "description": "The color mode the printer should use to print the job. Valid values are described in the table below. Read-only."
    },
    "copies": {
      "maximum": 2147483647,
      "minimum": -2147483648,
      "type": "number",
      "description": "The number of copies that should be printed. Read-only.",
      "format": "int32",
      "nullable": true
    },
    "dpi": {
      "maximum": 2147483647,
      "minimum": -2147483648,
      "type": "number",
      "description": "The resolution to use when printing the job, expressed in dots per inch (DPI). Read-only.",
      "format": "int32",
      "nullable": true
    },
    "duplexMode": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/microsoft.graph.printDuplexMode"
        },
        {
          "type": "object",
          "nullable": true
        }
      ],
      "description": "The duplex mode the printer should use when printing the job. Valid values are described in the table below. Read-only."
    },
    "feedOrientation": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/microsoft.graph.printerFeedOrientation"
        },
        {
          "type": "object",
          "nullable": true
        }
      ],
      "description": "The orientation to use when feeding media into the printer. Valid values are described in the following table. Read-only."
    },
    "finishings": {
      "type": "array",
      "items": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/microsoft.graph.printFinishing"
          },
          {
            "type": "object",
            "nullable": true
          }
        ]
      },
      "description": "Finishing processes to use when printing."
    },
    "fitPdfToPage": {
      "type": "boolean",
      "description": "True to fit each page of a PDF document to a physical sheet of media; false to let the printer decide how to lay out impressions.",
      "nullable": true
    },
    "inputBin": {
      "type": "string",
      "description": "The input bin (tray) to use when printing. See the printer's capabilities for a list of supported input bins.",
      "nullable": true
    },
    "margin": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/microsoft.graph.printMargin"
        },
        {
          "type": "object",
          "nullable": true
        }
      ],
      "description": "The margin settings to use when printing."
    },
    "mediaSize": {
      "type": "string",
      "description": "The media size to use when printing. Supports standard size names for ISO and ANSI media sizes. Valid values listed in the printerCapabilities topic.",
      "nullable": true
    },
    "mediaType": {
      "type": "string",
      "description": "The default media (such as paper) type to print the document on.",
      "nullable": true
    },
    "multipageLayout": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/microsoft.graph.printMultipageLayout"
        },
        {
          "type": "object",
          "nullable": true
        }
      ],
      "description": "The direction to lay out pages when multiple pages are being printed per sheet. Valid values are described in the following table."
    },
    "orientation": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/microsoft.graph.printOrientation"
        },
        {
          "type": "object",
          "nullable": true
        }
      ],
      "description": "The orientation setting the printer should use when printing the job. Valid values are described in the following table."
    },
    "outputBin": {
      "type": "string",
      "description": "The output bin to place completed prints into. See the printer's capabilities for a list of supported output bins.",
      "nullable": true
    },
    "pageRanges": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/microsoft.graph.integerRange"
      },
      "description": "The page ranges to print. Read-only."
    },
    "pagesPerSheet": {
      "maximum": 2147483647,
      "minimum": -2147483648,
      "type": "number",
      "description": "The number of document pages to print on each sheet.",
      "format": "int32",
      "nullable": true
    },
    "quality": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/microsoft.graph.printQuality"
        },
        {
          "type": "object",
          "nullable": true
        }
      ],
      "description": "The print quality to use when printing the job. Valid values are described in the table below. Read-only."
    },
    "scaling": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/microsoft.graph.printScaling"
        },
        {
          "type": "object",
          "nullable": true
        }
      ],
      "description": "Specifies how the printer should scale the document data to fit the requested media. Valid values are described in the following table."
    },
    "@odata.type": {
      "type": "string"
    }
  }
}