{
  "type": "object",
  "required": [
    "metadata",
    "nodes",
    "sources"
  ],
  "properties": {
    "metadata": {
      "$ref": "#/definitions/CatalogMetadata"
    },
    "nodes": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/definitions/CatalogTable"
      }
    },
    "sources": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/definitions/CatalogTable"
      }
    },
    "errors": {
      "oneOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "additionalProperties": false,
  "description": "CatalogArtifact(metadata: dbt.contracts.results.CatalogMetadata, nodes: Dict[str, dbt.contracts.results.CatalogTable], sources: Dict[str, dbt.contracts.results.CatalogTable], errors: Union[List[str], NoneType] = None, _compile_results: Union[Any, NoneType] = None)",
  "definitions": {
    "CatalogMetadata": {
      "type": "object",
      "required": [],
      "properties": {
        "dbt_schema_version": {
          "type": "string",
          "default": "https://schemas.getdbt.com/dbt/catalog/v1.json"
        },
        "dbt_version": {
          "type": "string",
          "default": "0.20.0rc1"
        },
        "generated_at": {
          "type": "string",
          "format": "date-time",
          "default": "2021-06-07T14:49:01.098234Z"
        },
        "invocation_id": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "env": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "default": {}
        }
      },
      "additionalProperties": false,
      "description": "CatalogMetadata(dbt_schema_version: str = <factory>, dbt_version: str = '0.20.0rc1', generated_at: datetime.datetime = <factory>, invocation_id: Union[str, NoneType] = <factory>, env: Dict[str, str] = <factory>)"
    },
    "CatalogTable": {
      "type": "object",
      "required": [
        "metadata",
        "columns",
        "stats"
      ],
      "properties": {
        "metadata": {
          "$ref": "#/definitions/TableMetadata"
        },
        "columns": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/definitions/ColumnMetadata"
          }
        },
        "stats": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/definitions/StatsItem"
          }
        },
        "unique_id": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false,
      "description": "CatalogTable(metadata: dbt.contracts.results.TableMetadata, columns: Dict[str, dbt.contracts.results.ColumnMetadata], stats: Dict[str, dbt.contracts.results.StatsItem], unique_id: Union[str, NoneType] = None)"
    },
    "TableMetadata": {
      "type": "object",
      "required": [
        "type",
        "schema",
        "name"
      ],
      "properties": {
        "type": {
          "type": "string"
        },
        "schema": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "database": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "comment": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "owner": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false,
      "description": "TableMetadata(type: str, schema: str, name: str, database: Union[str, NoneType] = None, comment: Union[str, NoneType] = None, owner: Union[str, NoneType] = None)"
    },
    "ColumnMetadata": {
      "type": "object",
      "required": [
        "type",
        "index",
        "name"
      ],
      "properties": {
        "type": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "comment": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false,
      "description": "ColumnMetadata(type: str, index: int, name: str, comment: Union[str, NoneType] = None)"
    },
    "StatsItem": {
      "type": "object",
      "required": [
        "id",
        "label",
        "include"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "label": {
          "type": "string"
        },
        "value": {
          "oneOf": [
            {
              "type": "boolean"
            },
            {
              "type": "string"
            },
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ]
        },
        "include": {
          "type": "boolean"
        },
        "description": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false,
      "description": "StatsItem(id: str, label: str, value: Union[bool, str, float, NoneType], include: bool, description: Union[str, NoneType] = None)"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://schemas.getdbt.com/dbt/catalog/v1.json"
}
