{ "query_lineage": [ { "name": "query_lineage" }, { "description": "To answer software-factory related questions such as: What repos (or code repositories) are related/part of a product? or What are all the software-factory related components of a product (in this case query for asset_type and asset_name for the logical_app and logical_app_version)?" }, { "params": { "input_parameters": [ { "name": "question", "type": "string", "description": "Human readable question about information in teh company database", "required": true } ], "output_schema": { "type": "object", "properties": { "columns": { "type": "array", "items": { "type": "string" }, "description": "Only include necessary columns. Each column must match the columnTable documentation. DO NOT invent columns." }, "filters": { "type": "array", "items": { "type": "object", "properties": { "col": { "type": "string" }, "op": { "type": "string" }, "val": {} }, "required": [ "col", "op", "val" ] }, "description": "Use operators: ==, !=, >, <, >=, <=, in, not in, is null, is not null. Use 'extras' key for like/ilike." }, "metrics": { "type": "array", "minItems": 0, "items": { "type": "object", "properties": { "label": { "type": "string", "description": "Name of the output column for the metric" }, "expressionType": { "type": "string", "enum": [ "SQL", "SIMPLE" ], "description": "Type of expression used. Typically 'SQL'." }, "sqlExpression": { "type": "string", "description": "SQL expression to calculate the metric, such as 'COUNT(*)' or 'AVG(score)'" } }, "required": [ "label", "expressionType", "sqlExpression" ] }, "description": "Either an empty array, or an array of expression objects with 'label', 'expressionType', and 'sqlExpression'." }, "orderby": { "type": "array", "minItems": 0, "items": { "type": "array", "items": [ { "type": "string", "description": "Column name" }, { "type": "boolean", "description": "Column name. To sort in acending order use False and in decending order use True" } ], "minItems": 2, "maxItems": 2 }, "description": "Either an empty array, or a list of [column_name, is_ascending] pairs. Column must be in 'columns'." }, "groupby": { "type": "array", "description": "Optional list of column names to group results by. Grouping is used to aggregate rows that share the same values in the specified columns, often used in combination with metrics.", "minItems": 0, "items": { "type": "string", "description": "A column name to group by, should be one or more of the\u00df columns used in the columns item" } }, "row_limit": { "type": "integer", "default": 10, "description": "Default: 10, max: 30." } }, "required": [ "columns", "filters", "metrics", "orderby", "grouby", "row_limit" ] }, "example": { "input": "Human readable question", "output": { "columns": [ "column_name1", "column_name2" ], "filters": [ { "col": "column_name", "op": "operator", "val": "value" } ], "metrics": [ { "label": "column_name", "expressionType": "expression", "sqlExpression": "SQL expression to calculate the metric" } ], "grouby": [ [ "column_name1", "column_name2" ] ], "orderby": [ [ "column_name", "(true) or (false)" ] ], "row_limit": 10 } } } }, { "examples": [ { "input": "Which platforms host the most assets?", "output": { "columns": [ "platform_name" ], "metrics": [ { "label": "asset_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "groupby": [ "platform_name" ], "orderby": [ [ "asset_count", false ] ], "row_limit": 50 } }, { "input": "What are the organizations in my products and components?", "output": { "columns": [ "asset_type", "asset_name" ], "filters": [ { "col": "asset_type", "op": "==", "val": "organization" } ], "metrics": [], "orderby": [ [ "asset_name", true ] ], "row_limit": 30 } }, { "input": "What are the assets of a product?", "output": { "columns": [ "asset_name ", "asset_type" ], "filters": [ { "col": "logical_app", "op": "==", "val": "Hello_World_Github" } ], "groupby": [], "metrics": [], "orderby": [ [ "asset_type", true ], [ "asset_name", true ] ], "row_limit": 50 } }, { "input": "What are the repositories in my products and components?", "output": { "columns": [ "asset_type", "asset_name" ], "filters": [ { "col": "asset_type", "op": "==", "val": "repo" } ], "metrics": [], "orderby": [ [ "asset_name", true ] ], "row_limit": 30 } }, { "input": "What are the most common types of assets recorded?", "output": { "columns": [ "asset_type" ], "metrics": [ { "label": "asset_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "groupby": [ "asset_type" ], "orderby": [ [ "asset_count", false ] ], "row_limit": 50 } } ] }, { "ColumnTables": { "columns": [ { "column_name": "prent_bloack", "type": "", "label": "Parent", "description": "" }, { "column_name": "more", "type": "", "label": " More", "description": "" }, { "column_name": "asset_block", "type": "", "label": "Asset", "description": "" }, { "column_name": "g-source", "type": "STRING", "label": "G-Source", "description": "" }, { "column_name": "g-target", "type": "STRING", "label": "G-Target", "description": "" }, { "column_name": "tooltip", "type": "STRING", "label": "Tooltip", "description": "" }, { "column_name": "parent_external_id", "type": "STRING", "label": "Parent External ID", "description": "" }, { "column_name": "product_id", "type": "LONGINTEGER", "label": "Product ID", "description": "" }, { "column_name": "external_id", "type": "STRING", "label": "External ID", "description": "" }, { "column_name": "parent_name", "type": "STRING", "label": "Parent Name", "description": "" }, { "column_name": "parent_type", "type": "STRING", "label": "Parent Type", "description": "" }, { "column_name": "platform_type", "type": "STRING", "label": "Platform Type", "description": "" }, { "column_name": "timestamp", "type": "DATETIME", "label": "Updated", "description": "" }, { "column_name": "asset_name", "type": "STRING", "label": "Asset", "description": "" }, { "column_name": "properties", "type": "JSONB", "label": "Info", "description": "" }, { "column_name": "uri", "type": "STRING", "label": "URI", "description": "" }, { "column_name": "owner", "type": "STRING", "label": "Owner", "description": "" }, { "column_name": "platform_name", "type": "STRING", "label": "Platform", "description": "" }, { "column_name": "logical_app", "type": "STRING", "label": "Product", "description": "" }, { "column_name": "path", "type": "STRING", "label": "Path", "description": "" }, { "column_name": "asset_type", "type": "STRING", "label": "Type", "description": "" }, { "column_name": "logical_app_version", "type": "STRING", "label": "Version", "description": "" }, { "column_name": "parent_id", "type": "LONGINTEGER", "label": "Parent Id", "description": "" }, { "column_name": "child_id", "type": "LONGINTEGER", "label": "Child Id", "description": "" }, { "column_name": "version_id", "type": "LONGINTEGER", "label": "Version Id", "description": "" }, { "column_name": "teamId", "type": "INTEGER", "label": "Teamid", "description": "" } ] } } ], "query_policy_results": [ { "name": "query_policy_results" }, { "description": "To answer questions about policy evaluations like: What are the policy rules used? or Which of my products has SSDF policy violations? or List policy violations for a product." }, { "params": { "input_parameters": [ { "name": "question", "type": "string", "description": "Human readable question about information in teh company database", "required": true } ], "output_schema": { "type": "object", "properties": { "columns": { "type": "array", "items": { "type": "string" }, "description": "Only include necessary columns. Each column must match the columnTable documentation. DO NOT invent columns." }, "filters": { "type": "array", "items": { "type": "object", "properties": { "col": { "type": "string" }, "op": { "type": "string" }, "val": {} }, "required": [ "col", "op", "val" ] }, "description": "Use operators: ==, !=, >, <, >=, <=, in, not in, is null, is not null. Use 'extras' key for like/ilike." }, "metrics": { "type": "array", "minItems": 0, "items": { "type": "object", "properties": { "label": { "type": "string", "description": "Name of the output column for the metric" }, "expressionType": { "type": "string", "enum": [ "SQL", "SIMPLE" ], "description": "Type of expression used. Typically 'SQL'." }, "sqlExpression": { "type": "string", "description": "SQL expression to calculate the metric, such as 'COUNT(*)' or 'AVG(score)'" } }, "required": [ "label", "expressionType", "sqlExpression" ] }, "description": "Either an empty array, or an array of expression objects with 'label', 'expressionType', and 'sqlExpression'." }, "orderby": { "type": "array", "minItems": 0, "items": { "type": "array", "items": [ { "type": "string", "description": "Column name" }, { "type": "boolean", "description": "Column name. To sort in acending order use False and in decending order use True" } ], "minItems": 2, "maxItems": 2 }, "description": "Either an empty array, or a list of [column_name, is_ascending] pairs. Column must be in 'columns'." }, "groupby": { "type": "array", "description": "Optional list of column names to group results by. Grouping is used to aggregate rows that share the same values in the specified columns, often used in combination with metrics.", "minItems": 0, "items": { "type": "string", "description": "A column name to group by, should be one or more of the\u00df columns used in the columns item" } }, "row_limit": { "type": "integer", "default": 10, "description": "Default: 10, max: 30." } }, "required": [ "columns", "filters", "metrics", "orderby", "grouby", "row_limit" ] }, "example": { "input": "Human readable question", "output": { "columns": [ "column_name1", "column_name2" ], "filters": [ { "col": "column_name", "op": "operator", "val": "value" } ], "metrics": [ { "label": "column_name", "expressionType": "expression", "sqlExpression": "SQL expression to calculate the metric" } ], "grouby": [ [ "column_name1", "column_name2" ] ], "orderby": [ [ "column_name", "(true) or (false)" ] ], "row_limit": 10 } } } }, { "examples": [ { "input": "Which products implement the SSDF initiative?", "output": { "columns": [ "logical_app" ], "filters": [ { "col": "initiative_name", "op": "==", "val": "SSDF" } ], "metrics": [], "groupby": [], "row_limit": 20 } }, { "input": "Which policies are failing the most frequently?", "output": { "columns": [ "rule_name" ], "metrics": [ { "label": "failure_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "filters": [ { "col": "message", "op": "==", "val": "fail" } ], "groupby": [ "rule_name" ], "orderby": [ [ "failure_count", false ] ], "row_limit": 50 } }, { "input": "How has the rate of policy failures changed over time?", "output": { "columns": [ "time_evaluated" ], "metrics": [ { "label": "failure_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "filters": [ { "col": "message", "op": "==", "val": "fail" } ], "groupby": [ "time_evaluated" ], "orderby": [ [ "time_evaluated", true ] ], "row_limit": 50 } }, { "input": "Which targets are evaluated most frequently in policy checks?", "output": { "columns": [ "asset_name" ], "metrics": [ { "label": "evaluation_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "groupby": [ "asset_name" ], "orderby": [ [ "evaluation_count", false ] ], "row_limit": 50 } }, { "input": "Which initiatives have the highest policy failure rates?", "output": { "columns": [ "initiative_name" ], "metrics": [ { "label": "failure_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "filters": [ { "col": "message", "op": "==", "val": "fail" } ], "groupby": [ "initiative_name" ], "orderby": [ [ "failure_count", false ] ], "row_limit": 50 } }, { "input": "At which gates do policies most commonly fail?", "output": { "columns": [], "metrics": [ { "label": "failure_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "filters": [ { "col": "message", "op": "==", "val": "fail" } ], "groupby": [], "orderby": [ [ "failure_count", false ] ], "row_limit": 50 } }, { "input": "What is the distribution of policy evaluation statuses?", "output": { "columns": [ "message" ], "metrics": [ { "label": "status_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "groupby": [ "message" ], "row_limit": 50 } }, { "input": "Which product versions experience the most policy failures?", "output": { "columns": [ "logical_app", "logical_app_version" ], "metrics": [ { "label": "failure_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "filters": [ { "col": "message", "op": "==", "val": "fail" } ], "groupby": [ "logical_app", "logical_app_version" ], "orderby": [ [ "failure_count", false ] ], "row_limit": 50 } }, { "input": "Which general rules are failing the most?", "output": { "columns": [ "rule_name" ], "metrics": [ { "label": "failure_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "filters": [ { "col": "message", "op": "==", "val": "fail" } ], "groupby": [ "rule_name" ], "orderby": [ [ "failure_count", false ] ], "row_limit": 50 } } ] }, { "ColumnTables": { "columns": [ { "column_name": "is_latest_logical_version", "type": "BOOLEAN", "label": "Latest Product Version", "description": "" }, { "column_name": "asset", "type": "STRING", "label": "Asset (Type)", "description": "" }, { "column_name": "control_name", "type": "STRING", "label": "Policy Control", "description": "" }, { "column_name": "initiative_hash", "type": "STRING", "label": "Initiative Hash", "description": "" }, { "column_name": "initiative_name", "type": "STRING", "label": "Policy Initiative", "description": "" }, { "column_name": "rule_name", "type": "STRING", "label": "Policy Rule", "description": "" }, { "column_name": "time_evaluated", "type": "DATETIMETZ", "label": "Time", "description": "" }, { "column_name": "date", "type": "DATE", "label": "Evaluated", "description": "" }, { "column_name": "count", "type": "LONGINTEGER", "label": "Count", "description": "" }, { "column_name": "message", "type": "STRING", "label": "Message", "description": "" }, { "column_name": "logical_app", "type": "STRING", "label": "Product", "description": "" }, { "column_name": "logical_app_version", "type": "STRING", "label": "Version", "description": "" }, { "column_name": "formatted_msg", "type": "STRING", "label": "Formatted Msg", "description": "" }, { "column_name": "more_json", "type": "JSONB", "label": "More Json", "description": "" }, { "column_name": "evaluations", "type": "JSONB", "label": "Evaluations", "description": "" }, { "column_name": "teamId", "type": "LONGINTEGER", "label": "Teamid", "description": "" }, { "column_name": "product_id", "type": "LONGINTEGER", "label": "Product Id", "description": "" }, { "column_name": "version_id", "type": "LONGINTEGER", "label": "Version Id", "description": "" }, { "column_name": "asset_name", "type": "STRING", "label": "Asset Name", "description": "" }, { "column_name": "asset_id", "type": "STRING", "label": "Asset Id", "description": "" }, { "column_name": "gate_type", "type": "STRING", "label": "Gate Type", "description": "" }, { "column_name": "asset_type", "type": "STRING", "label": "Asset Type", "description": "" }, { "column_name": "rule_id", "type": "STRING", "label": "Rule Id", "description": "" }, { "column_name": "status", "type": "STRING", "label": "Status", "description": "" }, { "column_name": "status_icon", "type": "", "label": "Status", "description": "" }, { "column_name": "details", "type": "", "label": "Details", "description": "" }, { "column_name": "gate", "type": "STRING", "label": "Gate (Type)", "description": "" }, { "column_name": "gate_name", "type": "STRING", "label": "Gate Name", "description": "" } ] } } ], "query_products": [ { "name": "query_products" }, { "description": "To answer questions about products like: what are the/my products? What are the components of my product (the this case use the targetName column!)? What are the depdencieis of my product (search the component_name column)? Note that repositories and namespaces are part of the lineage table." }, { "params": { "input_parameters": [ { "name": "question", "type": "string", "description": "Human readable question about information in teh company database", "required": true } ], "output_schema": { "type": "object", "properties": { "columns": { "type": "array", "items": { "type": "string" }, "description": "Only include necessary columns. Each column must match the columnTable documentation. DO NOT invent columns." }, "filters": { "type": "array", "items": { "type": "object", "properties": { "col": { "type": "string" }, "op": { "type": "string" }, "val": {} }, "required": [ "col", "op", "val" ] }, "description": "Use operators: ==, !=, >, <, >=, <=, in, not in, is null, is not null. Use 'extras' key for like/ilike." }, "metrics": { "type": "array", "minItems": 0, "items": { "type": "object", "properties": { "label": { "type": "string", "description": "Name of the output column for the metric" }, "expressionType": { "type": "string", "enum": [ "SQL", "SIMPLE" ], "description": "Type of expression used. Typically 'SQL'." }, "sqlExpression": { "type": "string", "description": "SQL expression to calculate the metric, such as 'COUNT(*)' or 'AVG(score)'" } }, "required": [ "label", "expressionType", "sqlExpression" ] }, "description": "Either an empty array, or an array of expression objects with 'label', 'expressionType', and 'sqlExpression'." }, "orderby": { "type": "array", "minItems": 0, "items": { "type": "array", "items": [ { "type": "string", "description": "Column name" }, { "type": "boolean", "description": "Column name. To sort in acending order use False and in decending order use True" } ], "minItems": 2, "maxItems": 2 }, "description": "Either an empty array, or a list of [column_name, is_ascending] pairs. Column must be in 'columns'." }, "groupby": { "type": "array", "description": "Optional list of column names to group results by. Grouping is used to aggregate rows that share the same values in the specified columns, often used in combination with metrics.", "minItems": 0, "items": { "type": "string", "description": "A column name to group by, should be one or more of the\u00df columns used in the columns item" } }, "row_limit": { "type": "integer", "default": 10, "description": "Default: 10, max: 30." } }, "required": [ "columns", "filters", "metrics", "orderby", "grouby", "row_limit" ] }, "example": { "input": "Human readable question", "output": { "columns": [ "column_name1", "column_name2" ], "filters": [ { "col": "column_name", "op": "operator", "val": "value" } ], "metrics": [ { "label": "column_name", "expressionType": "expression", "sqlExpression": "SQL expression to calculate the metric" } ], "grouby": [ [ "column_name1", "column_name2" ] ], "orderby": [ [ "column_name", "(true) or (false)" ] ], "row_limit": 10 } } } }, { "examples": [ { "input": "What python packages are in the base layers?", "output": { "columns": [ "component_name", "component_purl", "base_layer" ], "filters": [ { "col": "component_purl", "op": "like", "val": "%pypi%" }, { "col": "base_layer", "op": "==", "val": "TRUE" } ], "metrics": [], "orderby": [ [ "component_name", true ] ], "row_limit": 30 } }, { "input": "What are the base layer values?", "output": { "columns": [ "base_layer" ], "metrics": [ { "label": "base_layer_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "groupby": [ "base_layer" ], "row_limit": 30 } }, { "input": "What npm packages have non-permissive licenses?", "output": { "columns": [ "component_name", "component_purl", "license_expression" ], "filters": [ { "col": "component_purl", "op": "like", "val": "%pkg:npm%" }, { "col": "license_expression", "op": "like", "val": "%GPL%" } ], "metrics": [], "orderby": [ [ "component_name", true ] ], "row_limit": 30 } }, { "input": "How many npm packages are in my products?", "output": { "columns": [], "filters": [ { "col": "component_purl", "op": "like", "val": "%pkg:npm%" } ], "metrics": [ { "label": "npm_component_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "orderby": [], "row_limit": 1 } }, { "input": "What are the high-level components of a product?", "output": { "columns": [ "targetName" ], "filters": [ { "col": "logical_app", "op": "==", "val": "Scribot" } ], "metrics": [], "orderby": [ [ "targetName", true ] ], "row_limit": 10 } }, { "input": "What are all the components that have the requests package?", "output": { "columns": [ "targetName" ], "filters": [ { "col": "component_name", "op": "==", "val": "requests" } ], "metrics": [], "orderby": [ [ "targetName", true ] ], "row_limit": 30 } }, { "input": "What are the labels in my products and components?", "output": { "columns": [ "labels" ], "filters": [], "metrics": [], "orderby": [ [ "labels", true ] ], "row_limit": 30 } } ] }, { "ColumnTables": { "columns": [ { "column_name": "logical_app", "type": "STRING", "label": "Product", "description": "" }, { "column_name": "base_layer", "type": "BOOLEAN", "label": "Base Image", "description": "is dependency coming from a an image layer that is a known base layer" }, { "column_name": "component_publisher", "type": "STRING", "label": "Component Publisher", "description": "" }, { "column_name": "component_description", "type": "STRING", "label": "Component Description", "description": "" }, { "column_name": "tools", "type": "STRING", "label": "Tools", "description": "" }, { "column_name": "licenses", "type": "STRING", "label": "Licenses", "description": "" }, { "column_name": "latest_version", "type": "STRING", "label": "Dep latest ver", "description": "" }, { "column_name": "high_severity_cves", "type": "INTEGER", "label": "C+H Vulns", "description": "" }, { "column_name": "license_is_permissive", "type": "BOOLEAN", "label": "Is permissive", "description": "" }, { "column_name": "scorecard_score", "type": "FLOAT", "label": "OpenSSF score", "description": "" }, { "column_name": "targets", "type": "STRING", "label": "SBOM Type", "description": "" }, { "column_name": "component_type", "type": "STRING", "label": "Component type", "description": "" }, { "column_name": "tag", "type": "STRING", "label": "Component version", "description": "" }, { "column_name": "component_version", "type": "STRING", "label": "Dep version", "description": "" }, { "column_name": "maintenance_score_int", "type": "INTEGER", "label": "Maintenance Score", "description": "" }, { "column_name": "license_expression", "type": "STRING", "label": "Licesne expression", "description": "" }, { "column_name": "pkg", "type": "STRING", "label": "Package Manager", "description": "" }, { "column_name": "rstatus", "type": "STRING", "label": "Version Status", "description": "" }, { "column_name": "version_is_up_to_date", "type": "BOOLEAN", "label": "Up-to-date", "description": "" }, { "column_name": "maintenance_score", "type": "STRING", "label": "--", "description": "" }, { "column_name": "component_dependency_type", "type": "STRINGARRAY", "label": "Component Dependency Type", "description": "" }, { "column_name": "targetName", "type": "STRING", "label": "Component", "description": "" }, { "column_name": "labels", "type": "STRING", "label": "Labels", "description": "" }, { "column_name": "component_purl", "type": "STRING", "label": "PURL", "description": "" }, { "column_name": "source_layer", "type": "STRING", "label": "Layer", "description": "" }, { "column_name": "logical_app_version", "type": "STRING", "label": "Version", "description": "" }, { "column_name": "component_name", "type": "STRING", "label": "Component Name", "description": "" }, { "column_name": "component_group", "type": "STRING", "label": "Component Group", "description": "" }, { "column_name": "attestation_ids", "type": "LONGINTEGERARRAY", "label": "Attestation Ids", "description": "" }, { "column_name": "dependency_parents", "type": "STRINGARRAY", "label": "Dependency Parents", "description": "" }, { "column_name": "dependency_children", "type": "STRINGARRAY", "label": "Dependency Children", "description": "" }, { "column_name": "license_is_permissive_na", "type": "BOOLEAN", "label": "License Is Permissive Na", "description": "" }, { "column_name": "version_timestamp", "type": "DATETIMETZ", "label": "Version Timestamp", "description": "" }, { "column_name": "component_locations", "type": "JSONB", "label": "Component Locations", "description": "" }, { "column_name": "scorecard_id", "type": "LONGINTEGER", "label": "Scorecard Id", "description": "" }, { "column_name": "attestation_ids_cnt", "type": "INTEGER", "label": "Attestation Ids Cnt", "description": "" }, { "column_name": "teamId", "type": "LONGINTEGER", "label": "Teamid", "description": "" }, { "column_name": "pipeline_run_id", "type": "LONGINTEGER", "label": "Pipeline Run Id", "description": "" }, { "column_name": "product_id", "type": "LONGINTEGER", "label": "Product Id", "description": "" }, { "column_name": "component_id", "type": "LONGINTEGER", "label": "Component Id", "description": "" }, { "column_name": "id", "type": "LONGINTEGER", "label": "Id", "description": "" }, { "column_name": "component_external_ref", "type": "STRING", "label": "Component External Ref", "description": "" }, { "column_name": "license_expression_na", "type": "STRING", "label": "License Expression Na", "description": "" }, { "column_name": "attestation_name", "type": "STRING", "label": "Attestation Name", "description": "" }, { "column_name": "component_author", "type": "STRING", "label": "Component Author", "description": "" }, { "column_name": "more", "type": "", "label": " ", "description": "" }, { "column_name": "block", "type": "", "label": "Dependency", "description": "" }, { "column_name": "relation", "type": "", "label": "Relation", "description": "" }, { "column_name": "targets_translated", "type": "", "label": "SBOM Type Translated", "description": "" }, { "column_name": "main_tool", "type": "", "label": "Main Tool", "description": "" } ] } } ], "query_risk": [ { "name": "query_risk" }, { "description": "To answer questions about products like: what are the/my products? What are the components of my product (the this case use the targetName column!)? What are the depdencieis of my product (search the component_name column)? Note that repositories and namespaces are part of the lineage table." }, { "params": { "input_parameters": [ { "name": "question", "type": "string", "description": "Human readable question about information in teh company database", "required": true } ], "output_schema": { "type": "object", "properties": { "columns": { "type": "array", "items": { "type": "string" }, "description": "Only include necessary columns. Each column must match the columnTable documentation. DO NOT invent columns." }, "filters": { "type": "array", "items": { "type": "object", "properties": { "col": { "type": "string" }, "op": { "type": "string" }, "val": {} }, "required": [ "col", "op", "val" ] }, "description": "Use operators: ==, !=, >, <, >=, <=, in, not in, is null, is not null. Use 'extras' key for like/ilike." }, "metrics": { "type": "array", "minItems": 0, "items": { "type": "object", "properties": { "label": { "type": "string", "description": "Name of the output column for the metric" }, "expressionType": { "type": "string", "enum": [ "SQL", "SIMPLE" ], "description": "Type of expression used. Typically 'SQL'." }, "sqlExpression": { "type": "string", "description": "SQL expression to calculate the metric, such as 'COUNT(*)' or 'AVG(score)'" } }, "required": [ "label", "expressionType", "sqlExpression" ] }, "description": "Either an empty array, or an array of expression objects with 'label', 'expressionType', and 'sqlExpression'." }, "orderby": { "type": "array", "minItems": 0, "items": { "type": "array", "items": [ { "type": "string", "description": "Column name" }, { "type": "boolean", "description": "Column name. To sort in acending order use False and in decending order use True" } ], "minItems": 2, "maxItems": 2 }, "description": "Either an empty array, or a list of [column_name, is_ascending] pairs. Column must be in 'columns'." }, "groupby": { "type": "array", "description": "Optional list of column names to group results by. Grouping is used to aggregate rows that share the same values in the specified columns, often used in combination with metrics.", "minItems": 0, "items": { "type": "string", "description": "A column name to group by, should be one or more of the\u00df columns used in the columns item" } }, "row_limit": { "type": "integer", "default": 10, "description": "Default: 10, max: 30." } }, "required": [ "columns", "filters", "metrics", "orderby", "grouby", "row_limit" ] }, "example": { "input": "Human readable question", "output": { "columns": [ "column_name1", "column_name2" ], "filters": [ { "col": "column_name", "op": "operator", "val": "value" } ], "metrics": [ { "label": "column_name", "expressionType": "expression", "sqlExpression": "SQL expression to calculate the metric" } ], "grouby": [ [ "column_name1", "column_name2" ] ], "orderby": [ [ "column_name", "(true) or (false)" ] ], "row_limit": 10 } } } }, { "examples": [ { "input": "Which product versions have the highest total risk?", "output": { "columns": [ "logical_app_version", "logical_app", "total_risk" ], "filters": [], "metrics": [], "groupby": [], "orderby": [ [ "total_risk", true ] ], "row_limit": 30 } }, { "input": "How many fixable CVEs exist in each component?", "output": { "columns": [ "target" ], "filters": [], "metrics": [ { "label": "fixable_cves", "expressionType": "SQL", "sqlExpression": "SUM(target_fixables)" } ], "groupby": [ "target" ], "orderby": [ [ "fixable_cves", true ] ], "row_limit": 30 } }, { "input": "List the top 10 products by weighted CVE risk.", "output": { "columns": [ "logical_app", "weighted_cve_risk" ], "filters": [], "metrics": [], "groupby": [], "orderby": [ [ "weighted_cve_risk", true ] ], "row_limit": 10 } }, { "input": "Show total exploitables grouped by product version.", "output": { "columns": [ "logical_app_version" ], "filters": [], "metrics": [ { "label": "exploitables", "expressionType": "SQL", "sqlExpression": "SUM(logical_app_version_exploitables)" } ], "groupby": [ "logical_app_version" ], "orderby": [ [ "exploitables", true ] ], "row_limit": 30 } }, { "input": "Which components have KEVs and are in the base image?", "output": { "columns": [ "target", "vulnerability_id" ], "filters": [ { "col": "has_kev", "op": "==", "val": true }, { "col": "in_base_image", "op": "==", "val": true } ], "metrics": [], "groupby": [], "orderby": [], "row_limit": 30 } } ] }, { "ColumnTables": { "columns": [ { "column_name": "totals_badge", "type": "STRING", "label": "Totals", "description": "" }, { "column_name": "logical_app_badges", "type": "STRING", "label": "Info", "description": "" }, { "column_name": "target_badges", "type": "STRING", "label": "Info", "description": "" }, { "column_name": "cve_badges", "type": "STRING", "label": "Info", "description": "" }, { "column_name": "logical_app", "type": "STRING", "label": "Product", "description": "Name of Product in ScribeHub. A product is made of components (e.g. a few docker images)" }, { "column_name": "has_fix", "type": "BOOLEAN", "label": "Has Fix", "description": "True if there is a fix for this vulnerability (usually an udate for the vulnerable dependency)" }, { "column_name": "weighted_cve_risk", "type": "DECIMAL", "label": "Weighted Cve Risk", "description": "Risk imposed by the CVE, taking into account weights (business criticality, public facing, publicly available)" }, { "column_name": "total_cves_in_base_image", "type": "DECIMAL", "label": "Total Cves In Base Image", "description": "Total number of CVEs that are in a base image, across the team" }, { "column_name": "in_base_image", "type": "BOOLEAN", "label": "In Base Image", "description": "True if the vulnerability is in the base layer of a Docker image" }, { "column_name": "total_fixables", "type": "DECIMAL", "label": "Total Fixables", "description": "Total number of CVEs with a fix in the team" }, { "column_name": "weight", "type": "FLOAT", "label": "Weight", "description": "the is the accumulated weight for this Componen (Target)" }, { "column_name": "has_kev", "type": "BOOLEAN", "label": "Has Kev", "description": "True if this CVE is a Known Exploitable Vulnerability" }, { "column_name": "target_risk", "type": "DECIMAL", "label": "Component Risk", "description": "Total risk for this component of the product" }, { "column_name": "logical_app_version_cves_in_base_image", "type": "DECIMAL", "label": "Logical App Version Cves In Base Image", "description": "Total CVEs in base image for this product version" }, { "column_name": "total_risk", "type": "DECIMAL", "label": "Total Risk", "description": "Total risk for this team (across all product-versions)" }, { "column_name": "total_exploitables", "type": "DECIMAL", "label": "Total Exploitables", "description": "Total number of exploitable CVEs in the team" }, { "column_name": "target_fixables", "type": "LONGINTEGER", "label": "Target Fixables", "description": "Number of fixable risky CVEs of the component" }, { "column_name": "target", "type": "STRING", "label": "Component", "description": "The component (usually a Docker image name:tag)" }, { "column_name": "logical_app_version_risk", "type": "DECIMAL", "label": "Product Risk", "description": "Total risk for this Product Version" }, { "column_name": "logical_app_version_fixables", "type": "DECIMAL", "label": "Logical App Version Fixables", "description": "Number of Fixable CVEs in the product-version" }, { "column_name": "logical_app_version_exploitables", "type": "DECIMAL", "label": "Logical App Version Exploitables", "description": "Number of exploitable CVEs in the Product-Version" }, { "column_name": "target_cves_in_base_image", "type": "LONGINTEGER", "label": "Target Cves In Base Image", "description": "Number of CVEs in Component Base Image" }, { "column_name": "target_exploitables", "type": "LONGINTEGER", "label": "Target Exploitables", "description": "Number of Exploitable CVEs in the component" }, { "column_name": "vulnerability_id", "type": "STRING", "label": "CVE ID", "description": "CVE ID for this line" }, { "column_name": "num_targets", "type": "LONGINTEGER", "label": "Num Targets", "description": "Number of Components in the Product" }, { "column_name": "teamId", "type": "LONGINTEGER", "label": "Teamid", "description": "ID of the team within Scribe" }, { "column_name": "logical_app_version", "type": "STRING", "label": "Version", "description": "Version of Product in ScribeHub" }, { "column_name": "total_completion", "type": "", "label": "Safe", "description": "" } ] } } ], "query_vulnerabilities": [ { "name": "query_vulnerabilities" }, { "description": "To answer questions about vulnerabilities like: What are the vulnerabilities of my product? What are the vulnerabilities of a specific component? What are the vulnerabilities of a specific version of a component? Which products have a specific vulnerability, or a vulnerability with a specificy characteristic (such as has_key)" }, { "params": { "input_parameters": [ { "name": "question", "type": "string", "description": "Human readable question about information in teh company database", "required": true } ], "output_schema": { "type": "object", "properties": { "columns": { "type": "array", "items": { "type": "string" }, "description": "Only include necessary columns. Each column must match the columnTable documentation. DO NOT invent columns." }, "filters": { "type": "array", "items": { "type": "object", "properties": { "col": { "type": "string" }, "op": { "type": "string" }, "val": {} }, "required": [ "col", "op", "val" ] }, "description": "Use operators: ==, !=, >, <, >=, <=, in, not in, is null, is not null. Use 'extras' key for like/ilike." }, "metrics": { "type": "array", "minItems": 0, "items": { "type": "object", "properties": { "label": { "type": "string", "description": "Name of the output column for the metric" }, "expressionType": { "type": "string", "enum": [ "SQL", "SIMPLE" ], "description": "Type of expression used. Typically 'SQL'." }, "sqlExpression": { "type": "string", "description": "SQL expression to calculate the metric, such as 'COUNT(*)' or 'AVG(score)'" } }, "required": [ "label", "expressionType", "sqlExpression" ] }, "description": "Either an empty array, or an array of expression objects with 'label', 'expressionType', and 'sqlExpression'." }, "orderby": { "type": "array", "minItems": 0, "items": { "type": "array", "items": [ { "type": "string", "description": "Column name" }, { "type": "boolean", "description": "Column name. To sort in acending order use False and in decending order use True" } ], "minItems": 2, "maxItems": 2 }, "description": "Either an empty array, or a list of [column_name, is_ascending] pairs. Column must be in 'columns'." }, "groupby": { "type": "array", "description": "Optional list of column names to group results by. Grouping is used to aggregate rows that share the same values in the specified columns, often used in combination with metrics.", "minItems": 0, "items": { "type": "string", "description": "A column name to group by, should be one or more of the\u00df columns used in the columns item" } }, "row_limit": { "type": "integer", "default": 10, "description": "Default: 10, max: 30." } }, "required": [ "columns", "filters", "metrics", "orderby", "grouby", "row_limit" ] }, "example": { "input": "Human readable question", "output": { "columns": [ "column_name1", "column_name2" ], "filters": [ { "col": "column_name", "op": "operator", "val": "value" } ], "metrics": [ { "label": "column_name", "expressionType": "expression", "sqlExpression": "SQL expression to calculate the metric" } ], "grouby": [ [ "column_name1", "column_name2" ] ], "orderby": [ [ "column_name", "(true) or (false)" ] ], "row_limit": 10 } } } }, { "examples": [ { "input": "Which components or modules in our software are most frequently associated with vulnerabilities?", "output": { "columns": [ "logical_app", "logical_app_version", "version_timestamp", "component_name" ], "filters": [ { "col": "is_latest_logical_version", "op": "==", "val": true } ], "metrics": [ { "label": "vulnerability_count", "expressionType": "SQL", "sqlExpression": "COUNT()" } ], "orderby": [ [ "vulnerability_count", false ] ], "row_limit": 50 } }, { "input": "How many vulnerabilities that have a patch?", "output": { "columns": [ "logical_app", "logical_app_version" ], "filters": [ { "col": "is_latest_logical_version", "op": "==", "val": true }, { "col": "has_fix", "op": "==", "val": true } ], "metrics": [ { "label": "patchable_vulnerabilities", "expressionType": "SQL", "sqlExpression": "COUNT()" } ], "orderby": [ [ "unpatchable_vulnerabilities", true ] ], "row_limit": 30 } }, { "input": "Which package has most vulnerabilities that the vendor will not fix?", "output": { "columns": [ "component_name", "component_version" ], "filters": [ { "col": "is_latest_logical_version", "op": "==", "val": true }, { "col": "will_not_fix", "op": "==", "val": true } ], "metrics": [ { "label": "not_to_be_fixed_vulnerabilities", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "groupby": [ "logical_app", "logical_app_version", "component_name" ], "orderby": [ [ "unpatchable_vulnerabilities", false ] ], "row_limit": 30 } }, { "input": "Which of my products have a KEV / exploitable vulnerability?", "output": { "columns": [ "logical_app", "vulnerability_id" ], "filters": [ { "col": "is_latest_logical_version", "op": "==", "val": true }, { "col": "has_kev", "op": "==", "val": true } ], "metrics": [], "groupby": [], "orderby": [], "row_limit": 30 } }, { "input": "Which vulnerabilities affect the most of my products?", "output": { "columns": [ "vulnerability_id", "final_severity" ], "filters": [ { "col": "is_latest_logical_version", "op": "==", "val": true } ], "metrics": [ { "label": "product_count", "expressionType": "SQL", "sqlExpression": "COUNT(distinct logical_app)" } ], "groupby": [], "orderby": [ [ "final_severity", false ], [ "product_count", false ] ], "row_limit": 30 } }, { "input": "Which vulnerabilities have an Attack Vector: Network (Can be exploited over the network)?", "output": { "columns": [ "logical_app", "vulnerability_id", "vector" ], "filters": [ { "col": "is_latest_logical_version", "op": "==", "val": true }, { "col": "vector", "op": "like", "val": "%AV:N%" } ], "metrics": [], "groupby": [], "orderby": [], "row_limit": 30 } } ] }, { "ColumnTables": { "columns": [ { "column_name": "cwe_array", "type": "", "label": "CWEs", "description": "" }, { "column_name": "dependency_analysis", "type": "JSONB", "label": "Dependency Analysis", "description": "Details on how the dependency was introduced: direct or transitive (dependent library of a library), through source (e.g. package.json) or image (e.g. Dockerfile)" }, { "column_name": "advisory_link", "type": "", "label": "Advisory", "description": "" }, { "column_name": "has_fix", "type": "BOOLEAN", "label": "Has Fix", "description": "" }, { "column_name": "vul_component_fixed_in_versions", "type": "STRINGARRAY", "label": "Vulnerability Fix Version", "description": "" }, { "column_name": "will_not_fix", "type": "BOOLEAN", "label": "Will Not Fix", "description": "" }, { "column_name": "is_latest_logical_version", "type": "BOOLEAN", "label": "Latest product version", "description": "" }, { "column_name": "vul_date_changed", "type": "DATETIMETZ", "label": "Vulnerability Last Change", "description": "" }, { "column_name": "latest_package_version", "type": "STRING", "label": "Dependency Latest Version", "description": "" }, { "column_name": "attestation_ids", "type": "LONGINTEGERARRAY", "label": "Attestation IDs", "description": "" }, { "column_name": "cpes", "type": "STRINGARRAY", "label": "Dependency CPEs", "description": "" }, { "column_name": "advisory_modified", "type": "DATETIMETZ", "label": "Advisory Modified", "description": "" }, { "column_name": "hyper_links", "type": "STRINGARRAY", "label": "Hyper Links", "description": "" }, { "column_name": "has_kev", "type": "BOOLEAN", "label": "Has KEV", "description": "" }, { "column_name": "base_score", "type": "FLOAT", "label": "Base Score", "description": "" }, { "column_name": "vul_component_created", "type": "DATETIMETZ", "label": "Dependency Date", "description": "" }, { "column_name": "version_timestamp", "type": "DATETIMETZ", "label": "Version Timestamp", "description": "" }, { "column_name": "advisory_justification", "type": "STRING", "label": "Advisory Justification", "description": "" }, { "column_name": "attestation_name", "type": "STRING", "label": "Attestation Name", "description": "" }, { "column_name": "advisory_status", "type": "STRING", "label": "Advisory Status", "description": "" }, { "column_name": "advisory_text", "type": "STRING", "label": "Advisory Text", "description": "" }, { "column_name": "tag", "type": "STRING", "label": "Component Version", "description": "" }, { "column_name": "component_id", "type": "LONGINTEGER", "label": "Dependency ID", "description": "" }, { "column_name": "component_purl", "type": "STRING", "label": "Dependency PURL", "description": "" }, { "column_name": "component_locations", "type": "STRING", "label": "Dependency Locations", "description": "" }, { "column_name": "component_version", "type": "STRING", "label": "Dependency Version", "description": "" }, { "column_name": "final_severity", "type": "INTEGER", "label": "Final Severity", "description": "" }, { "column_name": "severity", "type": "INTEGER", "label": "Original Severity", "description": "" }, { "column_name": "main_tool", "type": "STRING", "label": "Main Tool", "description": "" }, { "column_name": "cvss_score", "type": "FLOAT", "label": "CVSS", "description": "" }, { "column_name": "vul_published_on", "type": "DATETIMETZ", "label": "Published", "description": "" }, { "column_name": "epssProbability", "type": "FLOAT", "label": "EPSS", "description": "" }, { "column_name": "cwes", "type": "JSONB", "label": "CWE_Object", "description": "" }, { "column_name": "vendor", "type": "JSONB", "label": "Vendor", "description": "" }, { "column_name": "targetName", "type": "STRING", "label": "Component", "description": "" }, { "column_name": "vulnerability_id", "type": "STRING", "label": "ID", "description": "" }, { "column_name": "component_name", "type": "STRING", "label": "Dependency", "description": "" }, { "column_name": "product_id", "type": "LONGINTEGER", "label": "Product Id", "description": "" }, { "column_name": "source_layer", "type": "STRING", "label": "Layer", "description": "" }, { "column_name": "labels", "type": "STRING", "label": "Labels", "description": "" }, { "column_name": "logical_app", "type": "STRING", "label": "Product", "description": "" }, { "column_name": "vul_hyperlinks", "type": "STRING", "label": "References", "description": "" }, { "column_name": "vul_source", "type": "STRING", "label": "Source", "description": "" }, { "column_name": "targets", "type": "STRING", "label": "Targets", "description": "" }, { "column_name": "text", "type": "STRING", "label": "Text", "description": "" }, { "column_name": "tool", "type": "STRING", "label": "Tool", "description": "" }, { "column_name": "logical_app_version", "type": "STRING", "label": "Version", "description": "" }, { "column_name": "vector", "type": "STRING", "label": "Vector", "description": "" }, { "column_name": "component_dependency_type", "type": "STRINGARRAY", "label": "Component Dependency Type", "description": "" }, { "column_name": "update", "type": "BOOLEAN", "label": "Update", "description": "" }, { "column_name": "epssScoreDate", "type": "DATETIMETZ", "label": "Epssscoredate", "description": "" }, { "column_name": "epssPercentile", "type": "FLOAT", "label": "Epsspercentile", "description": "" }, { "column_name": "teamId", "type": "LONGINTEGER", "label": "Teamid", "description": "" }, { "column_name": "vul_adv_id", "type": "LONGINTEGER", "label": "Vul Adv Id", "description": "" }, { "column_name": "pipeline_run_id", "type": "LONGINTEGER", "label": "Pipeline Run Id", "description": "" }, { "column_name": "id", "type": "LONGINTEGER", "label": "Id", "description": "" }, { "column_name": "base_severity_string", "type": "STRING", "label": "Base Severity String", "description": "" }, { "column_name": "severity_string", "type": "STRING", "label": "Severity String", "description": "" }, { "column_name": "pkg", "type": "STRING", "label": "Pkg", "description": "" } ] } } ], "query_findings": [ { "name": "query_findings" }, { "description": "Use this function to answer questions about security findings from tools, such as severities, CWE types, affected components, or file locations. Use it when asking about issues found in scans, their severity, tool origin, or impacted products." }, { "params": { "input_parameters": [ { "name": "question", "type": "string", "description": "Human readable question about information in teh company database", "required": true } ], "output_schema": { "type": "object", "properties": { "columns": { "type": "array", "items": { "type": "string" }, "description": "Only include necessary columns. Each column must match the columnTable documentation. DO NOT invent columns." }, "filters": { "type": "array", "items": { "type": "object", "properties": { "col": { "type": "string" }, "op": { "type": "string" }, "val": {} }, "required": [ "col", "op", "val" ] }, "description": "Use operators: ==, !=, >, <, >=, <=, in, not in, is null, is not null. Use 'extras' key for like/ilike." }, "metrics": { "type": "array", "minItems": 0, "items": { "type": "object", "properties": { "label": { "type": "string", "description": "Name of the output column for the metric" }, "expressionType": { "type": "string", "enum": [ "SQL", "SIMPLE" ], "description": "Type of expression used. Typically 'SQL'." }, "sqlExpression": { "type": "string", "description": "SQL expression to calculate the metric, such as 'COUNT(*)' or 'AVG(score)'" } }, "required": [ "label", "expressionType", "sqlExpression" ] }, "description": "Either an empty array, or an array of expression objects with 'label', 'expressionType', and 'sqlExpression'." }, "orderby": { "type": "array", "minItems": 0, "items": { "type": "array", "items": [ { "type": "string", "description": "Column name" }, { "type": "boolean", "description": "Column name. To sort in acending order use False and in decending order use True" } ], "minItems": 2, "maxItems": 2 }, "description": "Either an empty array, or a list of [column_name, is_ascending] pairs. Column must be in 'columns'." }, "groupby": { "type": "array", "description": "Optional list of column names to group results by. Grouping is used to aggregate rows that share the same values in the specified columns, often used in combination with metrics.", "minItems": 0, "items": { "type": "string", "description": "A column name to group by, should be one or more of the\u00df columns used in the columns item" } }, "row_limit": { "type": "integer", "default": 10, "description": "Default: 10, max: 30." } }, "required": [ "columns", "filters", "metrics", "orderby", "grouby", "row_limit" ] }, "example": { "input": "Human readable question", "output": { "columns": [ "column_name1", "column_name2" ], "filters": [ { "col": "column_name", "op": "operator", "val": "value" } ], "metrics": [ { "label": "column_name", "expressionType": "expression", "sqlExpression": "SQL expression to calculate the metric" } ], "grouby": [ [ "column_name1", "column_name2" ] ], "orderby": [ [ "column_name", "(true) or (false)" ] ], "row_limit": 10 } } } }, { "examples": [ { "input": "What are the high-severity findings across all tools?", "output": { "columns": [ "title", "severity_string", "main_tool", "logical_app" ], "filters": [ { "col": "severity_string", "op": "in", "val": [ "HIGH", "CRITICAL" ] } ], "metrics": [], "groupby": [], "orderby": [ [ "severity_string", true ] ], "row_limit": 30 } }, { "input": "How many findings exist for each product?", "output": { "columns": [ "logical_app" ], "filters": [], "metrics": [ { "label": "finding_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "groupby": [ "logical_app" ], "orderby": [ [ "finding_count", true ] ], "row_limit": 30 } }, { "input": "Show me findings with a CVSS score above 7.", "output": { "columns": [ "title", "cvssv3", "logical_app", "component_name" ], "filters": [ { "col": "cvssv3", "op": ">", "val": "7" } ], "metrics": [], "groupby": [], "orderby": [], "row_limit": 30 } }, { "input": "Which tools produce the most findings?", "output": { "columns": [ "main_tool" ], "filters": [], "metrics": [ { "label": "total_findings", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "groupby": [ "main_tool" ], "orderby": [ [ "total_findings", true ] ], "row_limit": 30 } }, { "input": "What types of CWEs are most commonly reported?", "output": { "columns": [ "cwe_id" ], "filters": [], "metrics": [ { "label": "cwe_count", "expressionType": "SQL", "sqlExpression": "COUNT(*)" } ], "groupby": [ "cwe_id" ], "orderby": [ [ "cwe_count", true ] ], "row_limit": 30 } } ] }, { "ColumnTables": { "columns": [ { "column_name": "more", "type": "", "label": " ", "description": "" }, { "column_name": "severity_order", "type": "STRING", "label": "Severity Order", "description": "" }, { "column_name": "attack_vector", "type": "", "label": "Attack Vector", "description": "" }, { "column_name": "availability_impact", "type": "", "label": "Availability Impact", "description": "" }, { "column_name": "confidentiality_impact", "type": "", "label": "Confidentiality Impact", "description": "" }, { "column_name": "integrity_impact", "type": "", "label": "Integrity Impact", "description": "" }, { "column_name": "Severity", "type": "", "label": "Severity", "description": "" }, { "column_name": "attack_complexity", "type": "", "label": "Attack Complexity", "description": "" }, { "column_name": "attestation_id", "type": "LONGINTEGER", "label": "Evidence ID", "description": "" }, { "column_name": "cvssv3", "type": "STRING", "label": "CVSSv3", "description": "" }, { "column_name": "created", "type": "DATETIMETZ", "label": "Created", "description": "" }, { "column_name": "cwe_id", "type": "STRING", "label": "CWE", "description": "" }, { "column_name": "targetName", "type": "STRING", "label": "Component", "description": "" }, { "column_name": "id", "type": "LONGINTEGER", "label": "ID", "description": "" }, { "column_name": "component_name", "type": "STRING", "label": "Dependency", "description": "" }, { "column_name": "description", "type": "STRING", "label": "Description", "description": "" }, { "column_name": "line", "type": "INTEGER", "label": "Line", "description": "" }, { "column_name": "severity", "type": "INTEGER", "label": "Severity", "description": "" }, { "column_name": "parser", "type": "STRING", "label": "Parser", "description": "" }, { "column_name": "logical_app", "type": "STRING", "label": "Product", "description": "" }, { "column_name": "file_path", "type": "STRING", "label": "Path", "description": "" }, { "column_name": "severity_string", "type": "STRING", "label": "Severity", "description": "" }, { "column_name": "main_tool", "type": "STRING", "label": "Tool", "description": "" }, { "column_name": "title", "type": "STRING", "label": "Title", "description": "" }, { "column_name": "logical_app_version", "type": "STRING", "label": "Version", "description": "" }, { "column_name": "finding", "type": "JSONB", "label": "Finding", "description": "" }, { "column_name": "context", "type": "JSONB", "label": "Context", "description": "" }, { "column_name": "teamId", "type": "LONGINTEGER", "label": "Teamid", "description": "" }, { "column_name": "original_attestation_id", "type": "LONGINTEGER", "label": "Original Attestation Id", "description": "" }, { "column_name": "product_id", "type": "LONGINTEGER", "label": "Product Id", "description": "" }, { "column_name": "pipeline_id", "type": "LONGINTEGER", "label": "Pipeline Id", "description": "" } ] } } ] }