Harness · Schema
ArtifactChainOfCustody
DevOpsGitOpsInternal Developer PortalLifecycleSoftware DeliveryCI/CDContinuous DeliveryContinuous Integration
Properties
| Name | Type | Description |
|---|---|---|
| ActivityType | string | |
| created_at | integer | |
| orchestration | object | |
| enforcement | object | |
| provenance | object | |
| verification | object | |
| deployment | object | |
| vulnerability | object | |
| compliance | object | |
| artifact_details | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/harness/main/json-schema/harness-artifact-chain-of-custody-schema.json",
"title": "ArtifactChainOfCustody",
"x-generated": "2026-10-04",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/harness-artifactlisting-api-openapi.yml#/components/schemas/ArtifactChainOfCustody",
"x-stoplight": {
"id": "1yqfetazjhj4v"
},
"type": "object",
"x-internal": false,
"properties": {
"ActivityType": {
"type": "string",
"x-stoplight": {
"id": "sduoo18ns9yfj"
},
"enum": [
"ORCHESTRATION",
"ENFORCEMENT",
"PROVENANCE",
"VERIFICATION",
"COMPLIANCE",
"VULNERABILITY",
"DEPLOYMENT"
]
},
"created_at": {
"type": "integer",
"format": "int64",
"x-stoplight": {
"id": "6j7z7j7z7z7z7"
}
},
"orchestration": {
"$ref": "#/$defs/SBOMInfo"
},
"enforcement": {
"$ref": "#/$defs/Violations"
},
"provenance": {
"$ref": "#/$defs/SLSADetails1"
},
"verification": {
"$ref": "#/$defs/SLSADetails1"
},
"deployment": {
"$ref": "#/$defs/Deployments"
},
"vulnerability": {
"$ref": "#/$defs/StoIssueCount"
},
"compliance": {
"$ref": "#/$defs/RiskAndCompliance"
},
"artifact_details": {
"$ref": "#/$defs/ArtifactV2Details"
}
},
"$defs": {
"ArtifactV2Details": {
"title": "ArtifactV2Details",
"x-stoplight": {
"id": "5zlypggn3bwyq"
},
"type": "object",
"properties": {
"id": {
"type": "string",
"x-stoplight": {
"id": "gh0lt8mpnz6d9"
}
},
"name": {
"type": "string",
"x-stoplight": {
"id": "qtwszj5cg3ym7"
}
},
"type": {
"type": "string",
"x-stoplight": {
"id": "bnv86x8lbybf6"
}
},
"tag": {
"type": "string",
"x-stoplight": {
"id": "p8f2vqnb4tf78"
}
},
"digest": {
"type": "string",
"x-stoplight": {
"id": "kg5m7buhuyhpb"
}
}
}
},
"Deployments": {
"title": "Deployments",
"x-stoplight": {
"id": "3gv4s6tifivpk"
},
"type": "object",
"properties": {
"prod_env_count": {
"type": "integer",
"x-stoplight": {
"id": "gqp8yu3px6k5x"
}
},
"non_prod_env_count": {
"type": "integer",
"x-stoplight": {
"id": "8bm3sz8deaxk6"
}
},
"env_type": {
"x-stoplight": {
"id": "d7ixva9h2b6ou"
},
"enum": [
"PreProduction",
"Production"
]
},
"env_identifier": {
"type": "string",
"x-stoplight": {
"id": "5j5td0cjoezth"
}
},
"env_name": {
"type": "string",
"x-stoplight": {
"id": "ll2uo89ao3j7w"
}
},
"pipeline_details": {
"$ref": "#/$defs/PipelineDetails"
}
}
},
"PipelineDetails": {
"title": "PipelineDetails",
"x-stoplight": {
"id": "rr6hfyn7yqya8"
},
"type": "object",
"properties": {
"org_id": {
"type": "string",
"x-stoplight": {
"id": "tevm6bc13y3hi"
},
"description": "Organisation where pipeline is present."
},
"project_id": {
"type": "string",
"x-stoplight": {
"id": "7s1mu1n1dan0s"
},
"description": "Project where pipeline is present."
},
"name": {
"type": "string",
"x-stoplight": {
"id": "dl352mt8yqdxt"
},
"description": "Name of the pipeline."
},
"execution_id": {
"type": "string",
"x-stoplight": {
"id": "tevm6bc13y3hi"
},
"description": "Execution Id of the pipeline."
},
"id": {
"type": "string",
"x-stoplight": {
"id": "7s1mu1n1dan0s"
},
"description": "Id of the pipeline."
},
"triggered_by": {
"type": "string",
"description": "Name of who trigger the deployment pipeline"
},
"triggered_by_id": {
"type": "string",
"description": "Id of who trigger the deployment pipeline"
},
"triggered_at": {
"type": [
"integer",
"null"
],
"description": "Time of trigger of the deployment pipeline",
"format": "int64"
},
"triggered_type": {
"type": "string",
"description": "Trigger type of the deployment pipeline"
},
"status": {
"type": "string",
"x-stoplight": {
"id": "qqz5h836cnx8e"
},
"enum": [
"PASSED",
"FAILED",
"UNKNOWN"
]
},
"stage_execution_id": {
"type": "string",
"x-stoplight": {
"id": "68i7ms2hxjctl"
},
"description": "Execution Id for the Stage"
},
"step_execution_id": {
"type": "string",
"x-stoplight": {
"id": "22ha61i5fiwzc"
},
"description": "Execution Id for the step"
},
"stage_type": {
"type": "string",
"x-stoplight": {
"id": "22ha61i5fiwzc"
},
"description": "Stage type in which the step executed",
"enum": [
"BUILD",
"DEPLOY",
"SECURITY"
]
}
}
},
"RiskAndCompliance": {
"title": "RiskAndCompliance",
"x-stoplight": {
"id": "sbozxasiq8bmn"
},
"type": "object",
"properties": {
"critical": {
"type": "integer",
"x-stoplight": {
"id": "hr4evvvkdwlak"
},
"description": "The number of Critical-severity compliance Issues"
},
"high": {
"type": "integer",
"x-stoplight": {
"id": "xku8fdplguqn9"
},
"description": "The number of High-severity compliance Issues"
},
"low": {
"type": "integer",
"x-stoplight": {
"id": "0ke8tj8nksxb1"
},
"description": "The number of Low-severity compliance Issues"
},
"medium": {
"type": "integer",
"x-stoplight": {
"id": "dgxoss72dtrpl"
},
"description": "The number of Medium-severity compliance Issues"
},
"last_scanned": {
"type": "string",
"x-stoplight": {
"id": "31o2aroslpv8u"
},
"description": "Timestamp at which the Respository was last scanned"
},
"pipeline_details": {
"$ref": "#/$defs/PipelineDetails"
}
}
},
"SBOMInfo": {
"title": "SBOMInfo",
"x-stoplight": {
"id": "2dzt0ov3lmusq"
},
"type": "object",
"properties": {
"orchestration_id": {
"type": "string",
"x-stoplight": {
"id": "ju6d8j0ulhw4t"
}
},
"project_id": {
"type": "string",
"x-stoplight": {
"id": "ju6d8j0ulhw4t"
}
},
"org_id": {
"type": "string",
"x-stoplight": {
"id": "ju6d8j0ulhw4t"
}
},
"components_count": {
"type": "integer",
"x-stoplight": {
"id": "peqspkq16qkwq"
}
},
"drift_id": {
"type": "string",
"x-stoplight": {
"id": "7n8p0njpodkus"
}
},
"total_drifts": {
"type": "integer",
"x-stoplight": {
"id": "62jr4hroubi5s"
}
},
"pipeline_details": {
"$ref": "#/$defs/PipelineDetails"
}
}
},
"SLSADetails1": {
"title": "SLSADetails",
"x-stoplight": {
"id": "fl0ysc7r5hupw"
},
"type": "object",
"properties": {
"status": {
"type": "string",
"x-stoplight": {
"id": "ju6d8j0ulhw4t"
}
},
"provenance_id": {
"type": "string",
"x-stoplight": {
"id": "ju6d8j0ulhw4t"
}
},
"project_id": {
"type": "string",
"x-stoplight": {
"id": "ju6d8j0ulhw4t"
}
},
"org_id": {
"type": "string",
"x-stoplight": {
"id": "ju6d8j0ulhw4t"
}
},
"pipeline_details": {
"$ref": "#/$defs/PipelineDetails"
}
}
},
"StoIssueCount": {
"title": "StoIssueCount",
"x-stoplight": {
"id": "f6ujzuy4ee24s"
},
"type": "object",
"description": "The count of Security Issues, by severity code, for a given Harness Pipeline Execution along with this execution info",
"properties": {
"critical": {
"type": "integer",
"x-stoplight": {
"id": "hr4evvvkdwlaj"
},
"description": "The number of Critical-severity Issues"
},
"high": {
"type": "integer",
"x-stoplight": {
"id": "xku8fdplguqn8"
},
"description": "The number of High-severity Issues"
},
"ignored": {
"type": "integer",
"x-stoplight": {
"id": "pugpn1qpfuiz2"
},
"description": "The number of Issues ignored due to Exemptions, and therefore not included in other counts"
},
"info": {
"type": "integer",
"x-stoplight": {
"id": "uq1mu3ju7hqvj"
},
"description": "The number of Informational Issues"
},
"last_scanned": {
"type": "string",
"x-stoplight": {
"id": "31o2aroslpv8t"
},
"description": "Timestamp at which the target variant was last scanned"
},
"low": {
"type": "integer",
"x-stoplight": {
"id": "0ke8tj8nksxb0"
},
"description": "The number of Low-severity Issues"
},
"medium": {
"type": "integer",
"x-stoplight": {
"id": "dgxoss72dtrpd"
},
"description": "The number of Medium-severity Issues"
},
"total": {
"type": "integer",
"x-stoplight": {
"id": "dgxoss72dtrpd"
},
"description": "The number of total-severity Issues"
},
"target_id": {
"type": "string",
"x-stoplight": {
"id": "77ehb4jdd7e4e"
},
"description": "Associated Target ID"
},
"target_name": {
"type": "string",
"x-stoplight": {
"id": "qmyrjo5stdfwh"
},
"description": "Name of the Scan Target"
},
"target_variant_id": {
"type": "string",
"x-stoplight": {
"id": "md8z2e8kl4sdb"
},
"description": "Associated Target Variant ID"
},
"target_variant_name": {
"type": "string",
"x-stoplight": {
"id": "eky1hzk5ljwed"
},
"description": "Name of the Scan Target"
},
"type": {
"type": "string",
"x-stoplight": {
"id": "6w9cfeu92rj4d"
},
"enum": [
"image",
"repository"
],
"description": "Scan Target's type"
},
"tool": {
"type": "string",
"x-stoplight": {
"id": "6w9cfeu92rj4d"
},
"description": "The name of the tool that performed the scan"
},
"execution_id": {
"type": "string",
"x-stoplight": {
"id": "w8x5d831w1s0f"
},
"description": "Harness Execution ID"
},
"pipeline_id": {
"type": "string",
"x-stoplight": {
"id": "knvaykwgq2syk"
},
"description": "Harness Pipeline Id"
},
"pipeline_details": {
"$ref": "#/$defs/PipelineDetails"
}
}
},
"Violations": {
"title": "Violations",
"x-stoplight": {
"id": "8khk0g7i7jidc"
},
"type": "object",
"properties": {
"enforcement_id": {
"type": "string",
"x-stoplight": {
"id": "ju6d8j0ulhw4t"
}
},
"allow_list_violations": {
"type": "integer",
"x-stoplight": {
"id": "ju6d8j0ulhw4t"
}
},
"deny_list_violations": {
"type": "integer",
"x-stoplight": {
"id": "ju6d8j0ulhw4t"
}
},
"pipeline_details": {
"$ref": "#/$defs/PipelineDetails"
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/harness-artifact-chain-of-custody"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.