{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/trimble/json-schema/trimble-data-chart-of-accounts-with-keys-schema.json",
  "title": "data_chart_of_accounts_withKeys",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/trimble-vista-gl-openapi.yml#/components/schemas/data_chart_of_accounts_withKeys",
  "allOf": [
    {
      "type": "object",
      "properties": {
        "__ryvitKeys": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of key paths that can be used to retrieve this object."
        },
        "__modifiedUTC": {
          "type": "string",
          "description": "UTC timestamp of when this object was last modified in the cache."
        }
      }
    },
    {
      "$ref": "#/$defs/data_chart_of_accounts"
    }
  ],
  "$defs": {
    "data_chart_of_accounts": {
      "required": [
        "GLCo",
        "GLAcct",
        "AcctType",
        "InterfaceDetail",
        "Active",
        "SummaryAcct",
        "CashAccrual",
        "KeyID"
      ],
      "type": "object",
      "properties": {
        "GLCo": {
          "type": "integer",
          "description": ""
        },
        "GLAcct": {
          "maxLength": 20,
          "type": "string",
          "description": ""
        },
        "Description": {
          "maxLength": 30,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "AcctType": {
          "maxLength": 1,
          "type": "string",
          "description": ""
        },
        "SubType": {
          "maxLength": 1,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "NormBal": {
          "maxLength": 1,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "InterfaceDetail": {
          "enum": [
            "Y",
            "N"
          ],
          "type": "string",
          "description": ""
        },
        "Active": {
          "enum": [
            "Y",
            "N"
          ],
          "type": "string",
          "description": ""
        },
        "SummaryAcct": {
          "maxLength": 20,
          "type": "string",
          "description": ""
        },
        "CashAccrual": {
          "maxLength": 1,
          "type": "string",
          "description": ""
        },
        "CashOffAcct": {
          "maxLength": 20,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "Notes": {
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "Part1": {
          "maxLength": 20,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "Part2": {
          "maxLength": 20,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "Part3": {
          "maxLength": 20,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "Part4": {
          "maxLength": 20,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "Part5": {
          "maxLength": 20,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "Part6": {
          "maxLength": 20,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "AllParts": {
          "maxLength": 20,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "CrossRefMemAcct": {
          "maxLength": 20,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "UniqueAttchID": {
          "maxLength": 36,
          "minLength": 36,
          "pattern": "[0-9a-fA-F]{8}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{12}",
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "KeyID": {
          "type": "integer",
          "description": ""
        },
        "ReviewerGroup": {
          "maxLength": 10,
          "type": [
            "string",
            "null"
          ],
          "description": ""
        },
        "__custom_fields": {
          "type": "object",
          "description": "This property will be added if there are any custom fields defined for this object in Vista.  Each custom field will be a property of this object."
        }
      }
    }
  }
}