openapi: 3.2.0 info: title: Harness Sbom Processor API version: '1.0' description: The Harness Software Delivery Platform uses OpenAPI Specification v3.0. contact: name: API Support email: contact@harness.io url: https://harness.io/ x-logo: url: https://mma.prnewswire.com/media/779232/Harnes_logo_horizontal.jpg?p=facebook altText: Harness termsOfService: https://harness.io/terms-of-use/ servers: - url: https://app.harness.io description: Harness host URL - url: https://{vanity} description: Vanity URL variables: vanity: default: app.harness.io security: - x-api-key: [] tags: - name: sbomProcessor paths: /v1/org/{org}/project/{project}/sbom/process: parameters: - $ref: '#/components/parameters/OrgParam1' - $ref: '#/components/parameters/ProjectParam1' post: summary: process raw SBOM into harness usable normalized form operationId: process-sbom responses: '200': $ref: '#/components/responses/SbomProcessResponseBody' '400': description: Bad Request '401': description: Unauthorized '403': description: Forbidden '404': description: Not Found '500': description: Internal Server Error '502': description: Bad Gateway description: process & inject sbom parameters: - $ref: '#/components/parameters/AccountHeader6' requestBody: $ref: '#/components/requestBodies/SbomProcessRequestBody' tags: - sbomProcessor security: - x-api-key: [] x-stoplight: id: 3pupuceuxwkth /v1/org/{org}/project/{project}/sbom/enforcement: parameters: - $ref: '#/components/parameters/OrgParam1' - $ref: '#/components/parameters/ProjectParam1' post: summary: enforce normalized SBOM based on policies applied operationId: enforce-sbom responses: '200': $ref: '#/components/responses/EnforceSbomResponseBody' '400': description: Bad Request '401': description: Unauthorized '403': description: Forbidden '404': description: Not Found '500': description: Internal Server Error '502': description: Bad Gateway description: enforce an sbom parameters: - $ref: '#/components/parameters/AccountHeader6' requestBody: $ref: '#/components/requestBodies/EnforceSbomRequestBody' tags: - sbomProcessor security: - x-api-key: [] x-stoplight: id: imkfnf4aogvic components: parameters: AccountHeader6: name: Harness-Account in: header required: true schema: type: string description: Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped. ProjectParam1: in: path required: true schema: type: string description: Harness project ID name: project OrgParam1: name: org in: path required: true schema: type: string description: Harness organization ID schemas: SbomProcessRequestBody: title: SbomProcessRequestBody x-stoplight: id: 5ang2l7dsv4pw type: object properties: artifact: $ref: '#/components/schemas/Artifact1' sbom_process: $ref: '#/components/schemas/SbomProcess' attestation: $ref: '#/components/schemas/Attestation' sbom_metadata: $ref: '#/components/schemas/SbomMetadata' Attestation: title: Attestation x-stoplight: id: rzr5mk8z847jg type: object properties: is_attested: type: boolean default: false description: is the sbom attested or not url: type: string description: url of the attested file example: https://storage.googleapis.com/sbom_store_public/kmpySmUISimoRrJL6NL73w/default/SSCS_CI_Plugin_Demo/CKO_SSCA_Pipeline/Build/39/q940CvjoQj-GEInJQfWiwg/sbom SbomProcess: title: SbomProcess x-stoplight: id: y71a32xrlv7u5 type: object properties: name: type: string description: name of the sbom example: SBOM_Name data: type: string format: byte description: serialised sbom data format: type: string description: format of the SBOM example: spdx-json url: type: string description: URL of the sbom example: https://console.google.com/storage required: - name - data - format EnforceSbomRequestBody: title: SbomEnforceRequestBody x-stoplight: id: 5i41oo0fat2yv type: object required: - enforcement_id - artifact properties: enforcement_id: type: string artifact: $ref: '#/components/schemas/Artifact1' policy_file_id: type: string pipeline_execution_id: type: string policy_set_ref: type: array items: type: string pipeline_identifier: type: string x-stoplight: id: sn5o6u6izrh91 stage_identifier: type: string x-stoplight: id: tb8p8f7bjh1c8 stage_execution_id: type: string x-stoplight: id: q0pcdi1vdvtzq stage_name: type: string x-stoplight: id: c3brw8b6zdxmh step_identifier: type: string x-stoplight: id: 21z3mfudw29ts step_execution_id: type: string x-stoplight: id: vis8uunj26wqp step_name: type: string x-stoplight: id: i17r6lscdy5q7 stage_type: type: string x-stoplight: id: nnft7ewvsw4k2 description: Stage type of the step Artifact1: title: Artifact x-go-name: ArtifactListItem x-stoplight: id: 13qkvpww6x2ku type: object x-examples: {} required: - type - name - registry_url properties: id: type: string description: id of the artifact example: 089855ea-f90e-4bea-a5c9-b5ddf85d3180 type: type: string description: type of the artifact enum: - image - repository default: image example: image name: type: string description: name of the artifact example: harness/image tag: type: string description: tag of the artifact default: latest example: latest registry_url: type: string description: url of the artifact example: https://console.cloud.google.com/gcr/images/imageName url: type: string x-stoplight: id: 2gcc89tfmislv variant: $ref: '#/components/schemas/ArtifactVariant' digest: type: string description: digest of the artifact example: sha256:1234567890 metadata: type: object additionalProperties: true x-stoplight: id: bcmiu856m2sf8 repository_platform: $ref: '#/components/schemas/RepositoryPlatform' SbomProcessResponseBody: title: SbomProcessResponseBody x-stoplight: id: x7513y8mz7mbg type: object properties: artifact_id: type: string description: Id of created artifact ArtifactVariant: title: ArtifactVariant x-stoplight: id: uyb3jwhgs9wjh type: object properties: type: type: string x-stoplight: id: 2r8lmxejmwqbf enum: - tag - branch - gitTag - commit description: type of the variant of the artifact. value: type: string x-stoplight: id: hd1p3s7bugn88 description: Value of the variant of the artifact. SbomMetadata: title: SbomMetadata x-stoplight: id: w1k8hnbuwcyrm type: object required: - format - tool - pipeline_execution_id - pipeline_identifier - stage_identifier - step_identifier - step_execution_id properties: format: type: string description: stage name where sbom is generated minLength: 3 example: spdx-json tool: type: string description: name of the package minLength: 3 example: synk pipeline_execution_id: type: string description: name of the package example: z940CvjoQj-GEInJQfWiwq minLength: 3 sequence_id: type: string description: name of the package example: '1' pipeline_identifier: type: string description: name of the package example: SSCA_Pipeline minLength: 3 stage_identifier: type: string description: name of the Stage example: Build step_identifier: type: string description: id of the step example: Orchestrate build_url: type: string description: BuildURL example: https://app.harness.io/ng/#/account/acc/ci/orgs/org/projects/dummyProject/pipelines/CKO_SSCA_Pipeline/executions/q940CvjoQj-GEInJQfWiwg/pipeline?storeType=INLINE step_execution_id: type: string description: StepExecutionId example: betatest1 step_name: type: string x-stoplight: id: pa73rnrz0hf29 stage_name: type: string x-stoplight: id: l9s2mk3wtwlgp stage_execution_id: type: string x-stoplight: id: 9t8qu0gsrou0z PluginResponseBody: title: PluginResponseBody type: object required: - source_id - artifact - response_url properties: source_id: type: string x-stoplight: id: itkxv1ghux6aa artifact: type: object x-stoplight: id: ysaq85xiuzjsw properties: id: type: string x-stoplight: id: sgyd78hu7w5gl name: type: string x-stoplight: id: khrj2i162jh3x url: type: string x-stoplight: id: zgc35mjt90crt response_url: type: string x-stoplight: id: uadidz06nvmyn RepositoryPlatform: type: string title: RepositoryPlatform x-stoplight: id: prybalroyw6dc enum: - HARNESS - GITHUB - BITBUCKET - GITLAB - GIT - AZURE EnforceSbomResponseBody: title: SbomEnforceResponseBody x-stoplight: id: g9c6fh5bqtzm3 type: object properties: enforcement_id: type: string description: ID of the enforcement of the SBOM status: type: string description: Status of the enforcement response: $ref: '#/components/schemas/PluginResponseBody' responses: EnforceSbomResponseBody: description: Example response content: application/json: schema: $ref: '#/components/schemas/EnforceSbomResponseBody' SbomProcessResponseBody: description: Example response content: application/json: schema: $ref: '#/components/schemas/SbomProcessResponseBody' requestBodies: EnforceSbomRequestBody: content: application/json: schema: $ref: '#/components/schemas/EnforceSbomRequestBody' SbomProcessRequestBody: content: application/json: schema: $ref: '#/components/schemas/SbomProcessRequestBody' securitySchemes: x-api-key: name: x-api-key type: apiKey in: header description: API key is a token provided while making the API calls. This is used to authenticate the client at the exposed endpoint. externalDocs: description: Find out more about Swagger url: http://swagger.io x-stoplight: id: oc91t4vrfnjyi x-tagGroups: - name: Organizations tags: - Organization - name: Projects tags: - Org Project - Project - name: Secrets tags: - Account Secret - Org Secret - Project Secret - Secrets - name: Connectors tags: - Account Connector - Org Connector - Project Connector - Connectors - GoogleSecretManagerConnector - name: Roles tags: - Account Roles - Organization Roles - Project Roles - Roles - name: Resource Groups tags: - Account Resource Groups - Organization Resource Groups - Project Resource Groups - Filter Resource Groups - Harness Resource Group - Zendesk - name: Role Assignments tags: - Account Role Assignments - Org Role Assignments - Project Role Assignments - Role Assignments - name: Platform tags: - Access Control List - Account Banner - Account Banner - Account Licensed Modules - Account License Type - Account Webhooks - AccountSetting - Accounts - Analyze Account Access Policy - Analyze Organization Access Policy - Analyze Project Access Policy - ApiKey - Audit - AuditFilters - Authentication Settings - Canny - Devops Essentials License Data By Account - EULA - Filter - Harness Resource Type - Invite - IP Allowlist - Nextgen Ldap - Notification Channels - Notification Rules - OIDC - Oidc-Access-Token - Oidc-ID-Token - Org Webhooks - Permissions - Project Webhooks - Secret Managers - Service Account - Setting - SMTP - Source Code Manager - Token - User - User Group - Variables - name: Delegate tags: - Agent mTLS Endpoint Management - Delegate Download Resource - Delegate Group Tags Resource - Delegate Setup Resource - Delegate Token Resource - name: Pipelines tags: - Pipelines - Input Sets - Approvals - Pipeline Execution - Pipeline Dashboard - Pipeline Input Set - Pipeline - Pipeline Execution Details - Pipeline Execute - Pipeline Refresh - Pipeline data retention - Triggers - TriggersEvents - Webhook Triggers - Webhook Event Handler - DryRunPipeline - name: Artifact Registry tags: - Registries - Artifacts - Docker Artifacts - Helm Artifacts - quarantine - Webhooks - Spaces - Replication - Registry V3 - Registries - Registry V3 - Packages - Registry V3 - Versions - Registry V3 - Files - Registry V3 - Metadata - Registry V3 - Firewall - Registry V3 - Transfer - name: Database DevOps tags: - Database Schema - Database Instance - Deployed State - Execution Config - Migration State - name: CD tags: - K8s Release Service Mapping - CustomDeployment - Environments - EnvironmentGroup - Infrastructures - Usage - File Store - Service Dashboard - ServiceOverrides - Rollback - tas - name: Deployment Freeze tags: - Freeze CRUD - Freeze Evaluation - Freeze Schema - name: Services tags: - Account Services - Org Services - Project Services - Services - name: Rancher Infrastructures tags: - Account Rancher Infrastructure - Org Rancher Infrastructure - Project Rancher Infrastructure - name: Templates tags: - Account Template - Org Template - Project Template - Templates - Global Templates - name: GitOps tags: - Agents - Application - Applications - Certificates - Clusters - Dashboard Aggregates - Dashboards - GnuPGP Keys - GPG Keys - Hosts - Project mappings - Projects - Reconciler - Repositories - Repository Certificates - Repository credentials - ValidateHost - name: GitX tags: - GitX Webhooks - Org Gitx Webhooks - Project Gitx Webhooks - name: CACM tags: - Anomalies Ignorelist Rule - Anomalies - BI Dashboards - Budgets - Budget Groups - Cost Categories - Cloud Accounts - K8S Connectors Metadata - Notification Settings v2 - Overview - Data Job Status - Recommendation cost settings - Unit Metric - Anomaly Comments - Cloud and AI cost anomaly details - Cloud and AI cost anomalies v2 - Cost Details - Currency Preferences - External Data Provider - AiEngine - CACM governance cost settings - Governance Enforcement Recommendation APIs - Governance Alert - Governance Overview - Governance Recommendation APIs - RuleEnforcement - Rule Executions - Rule - Rule Sets - Perspectives Folders - Perspective Reports - Perspectives - Cost Category Jira Project Mapping - Recommendations Details - Recommendations - Recommendation Jira - Recommendation Preferences - Recommendation Presets - Recommendation Servicenow - Recommendation Tags - Recommendation Ignore List - AutoStopping Rules - AutoStopping Rules V2 - AutoStopping Load Balancers - AutoStopping Fixed Schedules - AutoStopping Alerts - Commitment Orchestrator Events APIs - name: Feature Flags tags: - API Keys - Feature Flags - Targets - Target Groups - Environment Perspectives - Anomalies - Proxy - Tags - name: SRM tags: - Monitored Services - SLOs dashboard - NG SLOs - SLOs - Downtime - Srm Notification - name: Internal Developer Portal - IDP tags: - Entities - Teams - CatalogCustomProperties - Scores - DataSource - KubernetesDataPoints - AggregationRules - AppConfig - PluginInfo - LayoutProxy - Kinds - LayoutsV3 - LayoutsV4 - name: Environment Management - IDP tags: - Environment - Infrastructure - Instance - name: Custom Dashboards tags: - aida - dashboards - downloads - embed - folders - name: Policy Management tags: - dashboard - examples - policies - evaluate - evaluations - policysets - system - name: Code tags: - repository - status_checks - pullreq - upload - webhook - resource - rules - labels - name: IaCM tags: - usage - approvals - costs - executions - module-registry - workspaces - settings - tf-standard-backend - variables - name: STO tags: - Exemptions - Issues - Scans - Products - Test Targets - Target Variants - name: SEI tags: - Collection categories - Collections - Contributors - DORA - name: Git Sync (deprecated) tags: - Git Branches - Git Full Sync - Git Sync Settings - Git Sync - Git Sync Errors - name: Error Models tags: - Error Response - Governance Metadata - name: Supply Chain Security tags: - integration - PipelineInfraConfig - SBOM - Integration Step Config - Delete Step Config - Delete Repositories - Pipeline Store Config - Evidence Vault [Beta] - name: Release Management tags: - Release Groups - Releases - Orchestration Processes - Orchestration Activities - Orchestration Executions - Conflicts - Freeze - Reports - Uploads - name: Resilience Testing tags: - Actions - Action Templates - Chaos Components - Chaos Hubs - ChaosGuard Conditions - ChaosGuard Rules - DR Tests - Experiments - Experiment Templates - Faults - Fault Templates - Chaos Infrastructure - Health - Network Maps - Onboarding - Probes - Probe Templates - Chaos Recommendations - Risks