GET /api/v1/scannerdb/scan_reports/118/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, DELETE, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "admin_comment": null,
    "attachments": [
        "https://www.openpaper.work/api/v1/scannerdb/scan_report_attachments/164/?format=api",
        "https://www.openpaper.work/api/v1/scannerdb/scan_report_attachments/165/?format=api",
        "https://www.openpaper.work/api/v1/scannerdb/scan_report_attachments/2660/?format=api",
        "https://www.openpaper.work/api/v1/scannerdb/scan_report_attachments/2661/?format=api"
    ],
    "creation_date": "2018-04-09T16:16:37.544000Z",
    "id": 118,
    "last_update": "2020-12-30T16:37:44.585651Z",
    "locale": null,
    "moderated": true,
    "os": "linux",
    "scan_library": "pyinsane2 2.0.12-15-g5f6fc99",
    "scan_program": "ironscanner 1.1.0-13-geb4c48b",
    "scan_source": "Flatbed",
    "scanner": "https://www.openpaper.work/api/v1/scannerdb/scanners/67/?format=api",
    "scanner_type": "flatbed",
    "sealed": true,
    "successful": true,
    "url": "https://www.openpaper.work/api/v1/scannerdb/scan_reports/118/?format=api",
    "user_url": "https://www.openpaper.work/scannerdb/report/118/",
    "data": {
        "scanner": {
            "model": "LiDE 120",
            "options": {
                "threshold": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : Percent (5)",
                    "size": "4",
                    "initial_value": "3276800",
                    "constraint": "(0, 6553600, 65536)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Fixed (2)",
                    "title": "Threshold",
                    "desc": "Select minimum-brightness to get a white point"
                },
                "despeck": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Inactive, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "(Exception: <class 'pyinsane2.sane.rawapi.SaneStatus'> : Data is invalid (4))",
                    "constraint": "(1, 9, 1)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Software despeckle diameter",
                    "desc": "Maximum diameter of lone dots to remove from scan"
                },
                "swdeskew": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Software deskew",
                    "desc": "Request backend to rotate skewed pages digitally"
                },
                "file": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Hard_select, Soft_detect, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "File button",
                    "desc": "File button"
                },
                "brightness": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "(-100, 100, 1)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Brightness",
                    "desc": "Controls the brightness of the acquired image."
                },
                "resolution": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : Dpi (4)",
                    "size": "4",
                    "initial_value": "75",
                    "constraint": "[4800, 2400, 1200, 600, 300, 150, 100, 75]",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Word list (2)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Scan resolution",
                    "desc": "Sets the resolution of the scanned image."
                },
                "color-filter": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "6",
                    "initial_value": "Green",
                    "constraint": "['Red', 'Green', 'Blue']",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : String list (3)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : String (3)",
                    "title": "Color filter",
                    "desc": "When using gray or lineart this option selects the used color."
                },
                "disable-dynamic-lineart": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Disable dynamic lineart",
                    "desc": "Disable use of a software adaptive algorithm to generate lineart relying instead on hardware lineart."
                },
                "mode": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "8",
                    "initial_value": "Gray",
                    "constraint": "['Color', 'Gray', 'Lineart']",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : String list (3)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : String (3)",
                    "title": "Scan mode",
                    "desc": "Selects the scan mode (e.g., lineart, monochrome, or color)."
                },
                "need-calibration": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Inactive,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "(Exception: <class 'pyinsane2.sane.rawapi.SaneStatus'> : Data is invalid (4))",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Need calibration",
                    "desc": "The scanner needs calibration for the current settings"
                },
                "blue-gamma-table": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Inactive, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "1024",
                    "initial_value": "(Exception: <class 'pyinsane2.sane.rawapi.SaneStatus'> : Data is invalid (4))",
                    "constraint": "(0, 65535, 0)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Blue intensity",
                    "desc": "Gamma-correction table for the blue band."
                },
                "tl-y": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : Mm (3)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "(0, 19660800, 0)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Fixed (2)",
                    "title": "Top-left y",
                    "desc": "Top-left y position of scan area."
                },
                "swskip": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : Percent (5)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "(0, 6553600, 65536)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Fixed (2)",
                    "title": "Software blank skip percentage",
                    "desc": "Request driver to discard pages with low numbers of dark pixels"
                },
                "depth": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "8",
                    "constraint": "[8, 16]",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Word list (2)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Bit depth",
                    "desc": "Number of bits per sample, typical values are 1 for \"line-art\" and 8 for multibit scans."
                },
                "red-gamma-table": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Inactive, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "1024",
                    "initial_value": "(Exception: <class 'pyinsane2.sane.rawapi.SaneStatus'> : Data is invalid (4))",
                    "constraint": "(0, 65535, 0)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Red intensity",
                    "desc": "Gamma-correction table for the red band."
                },
                "copy": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Hard_select, Soft_detect, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Copy button",
                    "desc": "Copy button"
                },
                "email": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Hard_select, Soft_detect, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Email button",
                    "desc": "Email button"
                },
                "br-x": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : Mm (3)",
                    "size": "4",
                    "initial_value": "14155776",
                    "constraint": "(0, 14155776, 0)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Fixed (2)",
                    "title": "Bottom-right x",
                    "desc": "Bottom-right x position of scan area."
                },
                "preview": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Preview",
                    "desc": "Request a preview-quality scan."
                },
                "custom-gamma": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Use custom gamma table",
                    "desc": "Determines whether a builtin or a custom gamma-table should be used."
                },
                "source": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Inactive,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "21",
                    "initial_value": "(Exception: <class 'pyinsane2.sane.rawapi.SaneStatus'> : Data is invalid (4))",
                    "constraint": "['Flatbed', 'Transparency Adapter']",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : String list (3)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : String (3)",
                    "title": "Scan source",
                    "desc": "Selects the scan source (such as a document-feeder)."
                },
                "swcrop": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Software crop",
                    "desc": "Request backend to remove border from pages digitally"
                },
                "extra": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Inactive,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "(Exception: <class 'pyinsane2.sane.rawapi.SaneStatus'> : Data is invalid (4))",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Extra button",
                    "desc": "Extra button"
                },
                "swderotate": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Software derotate",
                    "desc": "Request driver to detect and correct 90 degree image rotation"
                },
                "page-loaded": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Inactive,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "(Exception: <class 'pyinsane2.sane.rawapi.SaneStatus'> : Data is invalid (4))",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Page loaded",
                    "desc": "Page loaded"
                },
                "swdespeck": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Software despeck",
                    "desc": "Request backend to remove lone dots digitally"
                },
                "gamma-table": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Inactive, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "1024",
                    "initial_value": "(Exception: <class 'pyinsane2.sane.rawapi.SaneStatus'> : Data is invalid (4))",
                    "constraint": "(0, 65535, 0)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Image intensity",
                    "desc": "Gamma-correction table.  In color mode this option equally affects the red, green, and blue channels simultaneously (i.e., it is an intensity gamma table)."
                },
                "expiration-time": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "60",
                    "constraint": "(-1, 30000, 1)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Calibration cache expiration time",
                    "desc": "Time (in minutes) before a cached calibration expires. A value of 0 means cache is not used. A negative value means cache never expires."
                },
                "lamp-off-time": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "15",
                    "constraint": "(0, 60, 0)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Lamp off time",
                    "desc": "The lamp will be turned off after the given time (in minutes). A value of 0 means, that the lamp won't be turned off."
                },
                "ocr": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Inactive,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "(Exception: <class 'pyinsane2.sane.rawapi.SaneStatus'> : Data is invalid (4))",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "OCR button",
                    "desc": "OCR button"
                },
                "contrast": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "(-100, 100, 1)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Contrast",
                    "desc": "Controls the contrast of the acquired image."
                },
                "scan": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Hard_select, Soft_detect, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Scan button",
                    "desc": "Scan button"
                },
                "power": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Inactive,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "(Exception: <class 'pyinsane2.sane.rawapi.SaneStatus'> : Data is invalid (4))",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Power button",
                    "desc": "Power button"
                },
                "green-gamma-table": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Inactive, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "1024",
                    "initial_value": "(Exception: <class 'pyinsane2.sane.rawapi.SaneStatus'> : Data is invalid (4))",
                    "constraint": "(0, 65535, 0)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Green intensity",
                    "desc": "Gamma-correction table for the green band."
                },
                "br-y": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : Mm (3)",
                    "size": "4",
                    "initial_value": "19660800",
                    "constraint": "(0, 19660800, 0)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Fixed (2)",
                    "title": "Bottom-right y",
                    "desc": "Bottom-right y position of scan area."
                },
                "calibration-file": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect, Advanced,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4096",
                    "initial_value": "/home/xubuntu/.sane/canon-lide-120.cal",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : String (3)",
                    "title": "Calibration file",
                    "desc": "Specify the calibration file to use"
                },
                "disable-interpolation": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Disable interpolation",
                    "desc": "When using high resolutions where the horizontal resolution is smaller than the vertical resolution this disables horizontal interpolation."
                },
                "tl-x": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : Mm (3)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "(0, 14155776, 0)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Fixed (2)",
                    "title": "Top-left x",
                    "desc": "Top-left x position of scan area."
                },
                "lamp-off-scan": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "0",
                    "constraint": "None",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : None (0)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Boolean (0)",
                    "title": "Lamp off during scan",
                    "desc": "The lamp will be turned off during scan. "
                },
                "threshold-curve": {
                    "capabilities": "<class 'pyinsane2.sane.rawapi.SaneCapabilities'> :[ Soft_select, Soft_detect,]",
                    "unit": "<class 'pyinsane2.sane.rawapi.SaneUnit'> : None (0)",
                    "size": "4",
                    "initial_value": "50",
                    "constraint": "(0, 127, 1)",
                    "contrainttype": "<class 'pyinsane2.sane.rawapi.SaneConstraintType'> : Range (1)",
                    "type": "<class 'pyinsane2.sane.rawapi.SaneValueType'> : Integer (1)",
                    "title": "Threshold curve",
                    "desc": "Dynamic threshold curve, from light to dark, normally 50-65"
                }
            },
            "devid": "genesys:libusb:001:004",
            "nicename": "genesys:libusb:001:004",
            "type": "flatbed",
            "fullname": "Canon LiDE 120 (genesys:libusb:001:004)",
            "vendor": "Canon"
        },
        "system": {
            "sys_python": "3.5.3 (default, Jan 19 2017, 14:11:04) \n[GCC 6.3.0 20170118]",
            "sys_platform_short": "linux",
            "sys_arch": "['64bit', 'ELF']",
            "sys_platform_detailed": "Linux-4.13.0-16-generic-x86_64-with-Ubuntu-17.10-artful",
            "sys_system": "Linux",
            "sys_release": "4.13.0-16-generic",
            "sys_os_uname": "['Linux', 'xubuntu', '4.13.0-16-generic', '#19-Ubuntu SMP Wed Oct 11 18:35:14 UTC 2017', 'x86_64']",
            "sys_machine": "x86_64",
            "sys_mem": 3969183744,
            "sys_type": "posix",
            "sys_cpu_freq": 2400,
            "versions": {
                "test_program": "ironscanner 1.1.0-13-geb4c48b",
                "scan_library": "pyinsane2 2.0.12-15-g5f6fc99",
                "pillow": "5.0.0"
            },
            "sys_swap": 0,
            "sys_platform_uname": "['Linux', 'xubuntu', '4.13.0-16-generic', '#19-Ubuntu SMP Wed Oct 11 18:35:14 UTC 2017', 'x86_64', 'x86_64']",
            "sys_nb_cpus": 2,
            "sys_proc": "x86_64"
        },
        "scantest": {
            "config": {
                "resolution": 150,
                "mode": "Color",
                "source": "Flatbed"
            },
            "successful": 1
        },
        "user": {
            "comment": "",
            "name": "Antoine"
        },
        "software": {
            "scan_library": "pyinsane2 2.0.12-15-g5f6fc99",
            "test_program": "ironscanner 1.1.0-13-geb4c48b",
            "operating_system": "linux"
        }
    }
}